Details

    • Bug
    • Status: Resolved
    • Critical
    • Resolution: Cannot Reproduce
    • None
    • 2.8
    • persistence
    • None

    Description

      This is similar to IGNITE-9303.
      In IGNITE-9303 we missed wrong page flag check that hides this issue.

      After fixing page flag check, one of mvcc tests fails with assertion as Ignite can't lock page for write due to unknown reason: smth goes wrong with page tag.

      ExplicitWalDeltaConsistencyTest.testNotEmptyPds() fails in mvcc mode with next error

      java.lang.AssertionError
      at org.apache.ignite.internal.processors.cache.persistence.freelist.AbstractFreeList.insertDataRow(AbstractFreeList.java:507)
      at org.apache.ignite.internal.processors.cache.persistence.metastorage.MetastorageRowStore.addRow(MetastorageRowStore.java:73)
      at org.apache.ignite.internal.processors.cache.persistence.metastorage.MetaStorage.putData(MetaStorage.java:377)
      at org.apache.ignite.internal.processors.cache.persistence.metastorage.MetaStorage.write(MetaStorage.java:353)
      at org.apache.ignite.internal.processors.cluster.GridClusterStateProcessor.writeBaselineTopology(GridClusterStateProcessor.java:293)
      at org.apache.ignite.internal.processors.cluster.GridClusterStateProcessor.onReadyForReadWrite(GridClusterStateProcessor.java:250)
      at org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager.notifyMetastorageReadyForReadWrite(GridCacheDatabaseSharedManager.java:430)
      at org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager.finishRecovery(GridCacheDatabaseSharedManager.java:884)

      Attachments

        Issue Links

        Activity

          java.lang.AssertionError: Pin counter must be 0 for a new page [relPtr=0000010000000013, absPtr=00007f4e1e11f4b0]
          	at org.apache.ignite.internal.processors.cache.persistence.pagemem.PageMemoryImpl.allocatePage(PageMemoryImpl.java:538)
          	at org.apache.ignite.internal.processors.cache.persistence.GridCacheOffheapManager$GridCacheDataStore$1.allocatePageNoReuse(GridCacheOffheapManager.java:1499)
          	at org.apache.ignite.internal.processors.cache.persistence.DataStructure.allocatePage(DataStructure.java:121)
          	at org.apache.ignite.internal.processors.cache.persistence.freelist.PagesList.addStripe(PagesList.java:420)
          	at org.apache.ignite.internal.processors.cache.persistence.freelist.PagesList.getPageForPut(PagesList.java:540)
          	at org.apache.ignite.internal.processors.cache.persistence.freelist.PagesList.put(PagesList.java:631)
          	at org.apache.ignite.internal.processors.cache.persistence.freelist.AbstractFreeList.addForRecycle(AbstractFreeList.java:624)
          	at org.apache.ignite.internal.processors.cache.persistence.freelist.AbstractFreeList.removeDataRowByLink(AbstractFreeList.java:595)
          	at org.apache.ignite.internal.processors.cache.persistence.RowStore.removeRow(RowStore.java:85)
          	at org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$CacheDataStoreImpl.cleanup(IgniteCacheOffheapManagerImpl.java:2307)
          	at org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$CacheDataStoreImpl.mvccUpdate(IgniteCacheOffheapManagerImpl.java:2047)
          	at org.apache.ignite.internal.processors.cache.persistence.GridCacheOffheapManager$GridCacheDataStore.mvccUpdate(GridCacheOffheapManager.java:2031)
          	at org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl.mvccUpdate(IgniteCacheOffheapManagerImpl.java:550)
          	at org.apache.ignite.internal.processors.cache.GridCacheMapEntry.mvccSet(GridCacheMapEntry.java:1116)
          
          

          Yest another page reuse issue occurs on mvcc update. Hope, this may hepls.

          amashenkov Andrey Mashenkov added a comment - java.lang.AssertionError: Pin counter must be 0 for a new page [relPtr=0000010000000013, absPtr=00007f4e1e11f4b0] at org.apache.ignite.internal.processors.cache.persistence.pagemem.PageMemoryImpl.allocatePage(PageMemoryImpl.java:538) at org.apache.ignite.internal.processors.cache.persistence.GridCacheOffheapManager$GridCacheDataStore$1.allocatePageNoReuse(GridCacheOffheapManager.java:1499) at org.apache.ignite.internal.processors.cache.persistence.DataStructure.allocatePage(DataStructure.java:121) at org.apache.ignite.internal.processors.cache.persistence.freelist.PagesList.addStripe(PagesList.java:420) at org.apache.ignite.internal.processors.cache.persistence.freelist.PagesList.getPageForPut(PagesList.java:540) at org.apache.ignite.internal.processors.cache.persistence.freelist.PagesList.put(PagesList.java:631) at org.apache.ignite.internal.processors.cache.persistence.freelist.AbstractFreeList.addForRecycle(AbstractFreeList.java:624) at org.apache.ignite.internal.processors.cache.persistence.freelist.AbstractFreeList.removeDataRowByLink(AbstractFreeList.java:595) at org.apache.ignite.internal.processors.cache.persistence.RowStore.removeRow(RowStore.java:85) at org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$CacheDataStoreImpl.cleanup(IgniteCacheOffheapManagerImpl.java:2307) at org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$CacheDataStoreImpl.mvccUpdate(IgniteCacheOffheapManagerImpl.java:2047) at org.apache.ignite.internal.processors.cache.persistence.GridCacheOffheapManager$GridCacheDataStore.mvccUpdate(GridCacheOffheapManager.java:2031) at org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl.mvccUpdate(IgniteCacheOffheapManagerImpl.java:550) at org.apache.ignite.internal.processors.cache.GridCacheMapEntry.mvccSet(GridCacheMapEntry.java:1116) Yest another page reuse issue occurs on mvcc update. Hope, this may hepls.

          Most likely test was fixed in some another ticket.
          Mass test start within IGNITE-11215 PR looks ok.

          amashenkov Andrey Mashenkov added a comment - Most likely test was fixed in some another ticket. Mass test start within IGNITE-11215 PR looks ok.

          Andrey Mashenkov

          Does this issue is still actual?

          mmuzaf Maxim Muzafarov added a comment - Andrey Mashenkov Does this issue is still actual?

          People

            Unassigned Unassigned
            amashenkov Andrey Mashenkov
            Votes:
            0 Vote for this issue
            Watchers:
            Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment