[ https://issues.apache.org/jira/browse/IGNITE-5991?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vladimir Ozerov updated IGNITE-5991: ------------------------------------ Priority: Critical (was: Major) > SQL: create prototype for map query execution without moving full ResultSet > to memory > ------------------------------------------------------------------------------------- > > Key: IGNITE-5991 > URL: https://issues.apache.org/jira/browse/IGNITE-5991 > Project: Ignite > Issue Type: Improvement > Components: sql > Affects Versions: 2.1 > Reporter: Vladimir Ozerov > Assignee: Vladimir Ozerov > Priority: Critical > Fix For: 2.2 > > > 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). -- This message was sent by Atlassian JIRA (v6.4.14#64029)