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

SQL: GridReduceQueryExecutor refactoring.

    XMLWordPrintableJSON

Details

    • Task
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 2.9, 2.8.1
    • sql

    Description

      For now we have few issues that can be resolved.

      1. We create fake H2 tables\indices for reduce stage even if there is no need to do so (skipMergeTable=true.
      Let's decouple reduce logic from H2Index adapter code.

      2. Partition mapping code look to complicated and non-optimal.
      Let's use cached affinity mapping and avoid collections copying when possible.

      3. Also there is no sense to pass RequestID to mapping code just for logging.
      We'll never be able to match any request as no query really exists at a time when error with RequestID is logged.

      4. Replicated only flag value semantic (calculation and usage) is not clear.

      5. GridReduceQueryExecutor.reduce() method is too long (over 400 lines).

      Attachments

        Issue Links

          Activity

            People

              amashenkov Andrey Mashenkov
              amashenkov Andrey Mashenkov
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

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