Interface GroupByHash

All Known Implementing Classes:
BigintGroupByHash, FlatGroupByHash, NoChannelGroupByHash

@NotThreadSafe public interface GroupByHash
  • Method Details

    • createGroupByHash

      static GroupByHash createGroupByHash(Session session, List<Type> types, boolean hasPrecomputedHash, int expectedSize, JoinCompiler joinCompiler, UpdateMemory updateMemory)
    • createGroupByHash

      static GroupByHash createGroupByHash(List<Type> types, boolean hasPrecomputedHash, int expectedSize, boolean dictionaryAggregationEnabled, JoinCompiler joinCompiler, UpdateMemory updateMemory)
    • getEstimatedSize

      long getEstimatedSize()
    • getGroupCount

      int getGroupCount()
    • appendValuesTo

      void appendValuesTo(int groupId, PageBuilder pageBuilder)
    • addPage

      Work<?> addPage(Page page)
    • getGroupIds

      Work<int[]> getGroupIds(Page page)
      The order of new group ids need to be the same as the order of incoming rows, i.e. new group ids should be assigned in rows iteration order Example: rows: A B C B D A E group ids: 1 2 3 2 4 1 5
    • getRawHash

      long getRawHash(int groupId)
    • getCapacity

      int getCapacity()