Uploaded image for project: 'Ignite'
  1. Ignite
  2. IGNITE-13136

Calcite integration. Improve join predicate testing.

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: sql

      Description

      Currently we have to merge joining rows in order to test a join predicate:

          Row row = handler.concat(left, rightMaterialized.get(rightIdx++));
      
          if (!cond.test(row))
              continue;
      

      it results in unconditional building a joined row even if it will not be emitted to downstream further. To avoid extra GC pressure we need to test the join predicate before joining rows:

          if (!cond.test(left, right))
              continue;
      
          Row row = handler.concat(left, right);
      

        Attachments

        Issue Links

          Activity

            People

            • Assignee:
              zstan Evgeny Stanilovsky
              Reporter:
              rkondakov Roman Kondakov

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0h
                0h
                Logged:
                Time Spent - 4.5h
                4.5h

                  Issue deployment