Vladimir Ozerov created IGNITE-6901:
---------------------------------------

             Summary: IgniteH2Indexing#rebuildIndexesFromHash should pass old 
value to indexing engine
                 Key: IGNITE-6901
                 URL: https://issues.apache.org/jira/browse/IGNITE-6901
             Project: Ignite
          Issue Type: Task
      Security Level: Public (Viewable by anyone)
          Components: cache, persistence, sql
            Reporter: Vladimir Ozerov
            Assignee: Alexey Goncharuk
             Fix For: 2.4


When index rebuild is triggered, index is updated from the method 
{{IgniteCacheOffheapManagerImpl.CacheDataStoreImpl.updateIndexes}}. Notice how 
we always pass {{null}} as previous row value. It breaks recent optimization 
which use previous value to avoid old row materialization IGNITE-6701, so 
assertion like this is observed:
{code}
[00:30:30][org.gridgain:gridgain-ultimate] Exception in thread 
"pub-#25397%database.IgniteDbSnapshotNotStableTopologiesTest3%" 
java.lang.AssertionError: Replaced: true
[00:30:30][org.gridgain:gridgain-ultimate]      at 
org.apache.ignite.internal.processors.query.h2.opt.GridH2Table.update(GridH2Table.java:451)
[00:30:30][org.gridgain:gridgain-ultimate]      at 
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.store(IgniteH2Indexing.java:581)
[00:30:30][org.gridgain:gridgain-ultimate]      at 
org.apache.ignite.internal.processors.query.GridQueryProcessor.store(GridQueryProcessor.java:1748)
[00:30:30][org.gridgain:gridgain-ultimate]      at 
org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.store(GridCacheQueryManager.java:406)
[00:30:30][org.gridgain:gridgain-ultimate]      at 
org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$CacheDataStoreImpl.updateIndexes(IgniteCacheOffheapManagerImpl.java:1375)
[00:30:30][org.gridgain:gridgain-ultimate]      at 
org.apache.ignite.internal.processors.cache.persistence.GridCacheOffheapManager$GridCacheDataStore.updateIndexes(GridCacheOffheapManager.java:1242)
[00:30:30][org.gridgain:gridgain-ultimate]      at 
org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl.updateIndexes(IgniteCacheOffheapManagerImpl.java:364)
[00:30:30][org.gridgain:gridgain-ultimate]      at 
org.apache.ignite.internal.processors.cache.GridCacheMapEntry.ensureIndexed(GridCacheMapEntry.java:3149)
[00:30:30][org.gridgain:gridgain-ultimate]      at 
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.rebuildIndexesFromHash(IgniteH2Indexing.java:2030)
{code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to