[ https://issues.apache.org/jira/browse/IGNITE-5553?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16603018#comment-16603018 ]
Pavel Pereslegin commented on IGNITE-5553: ------------------------------------------ As described above, collocated IgniteSet uses on-heap caching known as "setDataMap" to support iterator, and I didn't find the optimal way to recover heap data after node restart ([details here|http://apache-ignite-developers.2346864.n4.nabble.com/IgniteSet-implementation-changes-required-tp23783p31923.html]). On devlist we decided to remove this optimization and the changes are ready according to this discussion. [~Mmuzaf], take a look at this patch please. > Ignite PDS 2: IgnitePersistentStoreDataStructuresTest testSet assertion error > ----------------------------------------------------------------------------- > > Key: IGNITE-5553 > URL: https://issues.apache.org/jira/browse/IGNITE-5553 > Project: Ignite > Issue Type: Bug > Components: data structures, persistence > Affects Versions: 2.1 > Reporter: Dmitriy Pavlov > Assignee: Pavel Pereslegin > Priority: Major > Labels: MakeTeamcityGreenAgain, Muted_test, test-fail > Fix For: 2.7 > > > h2. Notes-4435 > When IgniteSet is restored from persistence, size of set is always 0, [link > to test > history|http://ci.ignite.apache.org/project.html?projectId=Ignite20Tests&testNameId=-7043871603266099589&tab=testDetails]. > h2. Detailed description > Unlike *IgniteQueue* which uses separate cache key to store its size > *IgniteSet* stores it in a field of some class. > Test from the link above shows very clearly that after restoring memory state > from PDS all set values are restored correctly but size is lost. > h2. Proposed solution > One possible solution might be to do the same thing as *IgniteQueue* does: > size of *IgniteSet* must be stored is cache instead of volatile in-memory > fields of random classes. -- This message was sent by Atlassian JIRA (v7.6.3#76005)