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

SQL: Potential race on MapResult close.

    XMLWordPrintableJSON

Details

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

    Description

      Seems, a race possible on MapQueryResult*s*.close() as this code can be called twice.

      Let's rewrite it make sure every map result is closed via MapQueryResult*s*.closeResult(int) method only.
      Then allow cleanup once all map results are closed.
      Then MapQueryResult*s*.allClosed() can be optimized as we always know number of map results and all map results are closed via MapQueryResult*s* instance.

      Seems, MepQueryExecutor.onQueryRequest0() has dead code. See "res.openResult(rs)" call when 'null' passed as argument.

       

      Start point is MapQueryResult.openResult(res). 

       

      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