Uploaded image for project: 'Apache Drill'
  1. Apache Drill
  2. DRILL-3936

We don't handle out of memory condition during build phase of hash join

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • None

    Description

      It looks like we just fall through ( see excerpt from HashJoinBatch.java below )

        public void executeBuildPhase() throws SchemaChangeException, ClassTransformationException, IOException {
          //Setup the underlying hash table
      
          // skip first batch if count is zero, as it may be an empty schema batch
          if (right.getRecordCount() == 0) {
            for (final VectorWrapper<?> w : right) {
              w.clear();
            }
            rightUpstream = next(right);
          }
      
          boolean moreData = true;
      
          while (moreData) {
            switch (rightUpstream) {
            case OUT_OF_MEMORY:
            case NONE:
            case NOT_YET:
            case STOP:
              moreData = false;
              continue;
      ...
      

      We don't handle it later either:

        public IterOutcome innerNext() {
          try {
            /* If we are here for the first time, execute the build phase of the
             * hash join and setup the run time generated class for the probe side
             */
            if (state == BatchState.FIRST) {
              // Build the hash table, using the build side record batches.
              executeBuildPhase();
              //                IterOutcome next = next(HashJoinHelper.LEFT_INPUT, left);
              hashJoinProbe.setupHashJoinProbe(context, hyperContainer, left, left.getRecordCount(), this, hashTable,
                  hjHelper, joinType);
      
              // Update the hash table related stats for the operator
              updateStats(this.hashTable);
            }
      ....
      

      Attachments

        Activity

          People

            ben-zvi Boaz Ben-Zvi
            vicky Victoria Markman
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: