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

SQL: lazy ResultSet for map query

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Critical
    • Resolution: Fixed
    • 2.1
    • 2.3
    • sql

    Description

      Currently we move the whole ResultSet to memory when executing SQL query on mapper. If result set is large enough, this could easily bring server down due to high GC pressure or even OOME.

      To avoid that we should stream H2's ResultSet to our own consumer, which will construct a page and send it to the client When a page is sent, consumer will block current thread until "next page request" is received. This approach has disadvantage - query thread will be blocked. However, implementation should be fairly easy and will allow us to avoid OOMEs on server. In future we will improve it to minimize blocking (or even avoid it completely).

      Attachments

        Issue Links

          Activity

            People

              vozerov Vladimir Ozerov
              vozerov Vladimir Ozerov
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: