Igor Belyakov created IGNITE-11970:
--------------------------------------

             Summary: Excessive use of memory in continuous queries
                 Key: IGNITE-11970
                 URL: https://issues.apache.org/jira/browse/IGNITE-11970
             Project: Ignite
          Issue Type: Bug
            Reporter: Igor Belyakov


When we prepare to send an entry into the continuous query's filter and 
listener, we store it in an instance of CacheContinuousQueryEventBuffer.Batch.
The batch is an array of entries of size 
IGNITE_CONTINUOUS_QUERY_SERVER_BUFFER_SIZE (default is 1000) that stores the 
currently received entries (we need it for the case of concurrent updates to 
make sure that we preserve the order of update counters).

The issue is that when we process a part of the array we keep the links to the 
processed entries until we exhaust the array (after when we finally clear it). 
Because of that we may store up to 999 garbage objects which can be a lot if 
the entries are big.

Need to clear the entries right after we've processed them.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to