You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ignite.apache.org by "igor.tanackovic" <ig...@gmail.com> on 2018/08/04 16:10:55 UTC

Ignite memory leak

Hi, 

I want to discuss about potential memory leak in Ignite (I imply potential
mem leak as I'm not 100% sure I do something wrong ;))

However, believe I found a corner case which triggers memory leak even with
the lates stable version. In my case, MapQueryResults fills MapNodeResults
map without being removed which leads to out of memory exception or huge gc
major collections. I'm pretty sure the issue is in *fetchNextPage* method of
MapQueryResult class as this method never returns *true* if you have result
set with pageSize*n records. 

Actually, we had a major issue with memory in our production cluster and the
only workaround was to limit all queries bellow page size (currently 1024).


Regards,
Igor    
   



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/

Re: Ignite memory leak

Posted by Igor Tanackovic <ig...@gmail.com>.
Thx... will yry the fix.


Regards,
Igor

On Fri, Aug 17, 2018 at 11:24 Denis Mekhanikov <dm...@gmail.com>
wrote:

> Igor,
>
> The fix for this issue is merged to master. It will be included into
> Ignite 2.7.
> Until then you can use one of the nightly builds, available at
> https://ci.ignite.apache.org/viewLog.html?buildId=lastSuccessful&buildTypeId=Releases_NightlyRelease_RunApacheIgniteNightlyRelease&tab=artifacts&guest=1
>
> Denis
>
> пн, 6 авг. 2018 г. в 15:01, Denis Mekhanikov <dm...@gmail.com>:
>
>> Igor,
>>
>> There really is a memory leak in this place.
>> Thank you for the analysis! This is very cool!
>>
>> I filed a JIRA ticket for it:
>> https://issues.apache.org/jira/browse/IGNITE-9196
>> Feel free to assign it to yourself and fix it, since you already debugged
>> through it.
>> If not, then I think, it will be fixed in Ignite 2.7 anyway.
>>
>> Denis
>>
>> сб, 4 авг. 2018 г. в 19:11, igor.tanackovic <ig...@gmail.com>:
>>
>>> Hi,
>>>
>>> I want to discuss about potential memory leak in Ignite (I imply
>>> potential
>>> mem leak as I'm not 100% sure I do something wrong ;))
>>>
>>> However, believe I found a corner case which triggers memory leak even
>>> with
>>> the lates stable version. In my case, MapQueryResults fills
>>> MapNodeResults
>>> map without being removed which leads to out of memory exception or huge
>>> gc
>>> major collections. I'm pretty sure the issue is in *fetchNextPage*
>>> method of
>>> MapQueryResult class as this method never returns *true* if you have
>>> result
>>> set with pageSize*n records.
>>>
>>> Actually, we had a major issue with memory in our production cluster and
>>> the
>>> only workaround was to limit all queries bellow page size (currently
>>> 1024).
>>>
>>>
>>> Regards,
>>> Igor
>>>
>>>
>>>
>>>
>>> --
>>> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>>>
>>

Re: Ignite memory leak

Posted by Denis Mekhanikov <dm...@gmail.com>.
Igor,

The fix for this issue is merged to master. It will be included into Ignite
2.7.
Until then you can use one of the nightly builds, available at
https://ci.ignite.apache.org/viewLog.html?buildId=lastSuccessful&buildTypeId=Releases_NightlyRelease_RunApacheIgniteNightlyRelease&tab=artifacts&guest=1

Denis

пн, 6 авг. 2018 г. в 15:01, Denis Mekhanikov <dm...@gmail.com>:

> Igor,
>
> There really is a memory leak in this place.
> Thank you for the analysis! This is very cool!
>
> I filed a JIRA ticket for it:
> https://issues.apache.org/jira/browse/IGNITE-9196
> Feel free to assign it to yourself and fix it, since you already debugged
> through it.
> If not, then I think, it will be fixed in Ignite 2.7 anyway.
>
> Denis
>
> сб, 4 авг. 2018 г. в 19:11, igor.tanackovic <ig...@gmail.com>:
>
>> Hi,
>>
>> I want to discuss about potential memory leak in Ignite (I imply potential
>> mem leak as I'm not 100% sure I do something wrong ;))
>>
>> However, believe I found a corner case which triggers memory leak even
>> with
>> the lates stable version. In my case, MapQueryResults fills MapNodeResults
>> map without being removed which leads to out of memory exception or huge
>> gc
>> major collections. I'm pretty sure the issue is in *fetchNextPage* method
>> of
>> MapQueryResult class as this method never returns *true* if you have
>> result
>> set with pageSize*n records.
>>
>> Actually, we had a major issue with memory in our production cluster and
>> the
>> only workaround was to limit all queries bellow page size (currently
>> 1024).
>>
>>
>> Regards,
>> Igor
>>
>>
>>
>>
>> --
>> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>>
>

Re: Ignite memory leak

Posted by Denis Mekhanikov <dm...@gmail.com>.
Igor,

There really is a memory leak in this place.
Thank you for the analysis! This is very cool!

I filed a JIRA ticket for it:
https://issues.apache.org/jira/browse/IGNITE-9196
Feel free to assign it to yourself and fix it, since you already debugged
through it.
If not, then I think, it will be fixed in Ignite 2.7 anyway.

Denis

сб, 4 авг. 2018 г. в 19:11, igor.tanackovic <ig...@gmail.com>:

> Hi,
>
> I want to discuss about potential memory leak in Ignite (I imply potential
> mem leak as I'm not 100% sure I do something wrong ;))
>
> However, believe I found a corner case which triggers memory leak even with
> the lates stable version. In my case, MapQueryResults fills MapNodeResults
> map without being removed which leads to out of memory exception or huge gc
> major collections. I'm pretty sure the issue is in *fetchNextPage* method
> of
> MapQueryResult class as this method never returns *true* if you have result
> set with pageSize*n records.
>
> Actually, we had a major issue with memory in our production cluster and
> the
> only workaround was to limit all queries bellow page size (currently 1024).
>
>
> Regards,
> Igor
>
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>