[ 
https://issues.apache.org/jira/browse/IGNITE-12042?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16905172#comment-16905172
 ] 

Pavel Pereslegin commented on IGNITE-12042:
-------------------------------------------

[~ivan.glukos], [~slava.koptilin]

Since you asked my opinion, I must say, that from my point of view this change 
looks like a workaround, and it seems unworkable for concurrent updates.
For now, I can't figure out a simple and bulletproof solution for the described 
problem, but, as I already mentioned, it would be better to perform this check 
from PageMemoryNoStoreImpl#allocatePage and keep current "recovery behavior" 
untouched.
At least it’s better to place this check into AbstractFreeList - then there 
will be no need to do an additional search in freelist's hashmap and there will 
be no need to additionally calculate the row size.
But since I don't have a good solution and there is no big difference in my 
proposal, I do not insist on any changes and I'm sure that you better know what 
is best for the product.

> Atempt to remove entries from fully populated data region may result in 
> IgineOutOfMemoryException
> -------------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-12042
>                 URL: https://issues.apache.org/jira/browse/IGNITE-12042
>             Project: Ignite
>          Issue Type: Bug
>    Affects Versions: 2.7
>            Reporter: Vyacheslav Koptilin
>            Assignee: Vyacheslav Koptilin
>            Priority: Major
>             Fix For: 2.8
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> Removing entries from non-persistent data region may require allocating a new 
> data page in order to move a tracked page from one bucket of the free-list to 
> another one.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

Reply via email to