Uploaded image for project: 'Ignite'
  1. Ignite
  2. IGNITE-10583

MVCC: Assertion on txLog state update when recovering from WAL.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Duplicate
    • None
    • None
    • mvcc

    Description

      Assertion in txLog state update occurs sporadically during recovery from WAL. Reproducer: IgnitePdsContinuousRestartTest#testRebalancingDuringLoad_10_10_1_1 with enabled MVCC.
      Stacktrace:

      class org.apache.ignite.internal.processors.cache.persistence.tree.CorruptedTreeException: Runtime failure on search row: TxKey [major=1544121790766, minor=10468]
      
      	at org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.invoke(BPlusTree.java:1812)
      	at org.apache.ignite.internal.processors.cache.mvcc.txlog.TxLog.put(TxLog.java:245)
      	at org.apache.ignite.internal.processors.cache.mvcc.MvccProcessorImpl.updateState(MvccProcessorImpl.java:609)
      	at org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager.applyLogicalUpdates(GridCacheDatabaseSharedManager.java:2456)
      	at org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager.startMemoryRestore(GridCacheDatabaseSharedManager.java:1934)
      	at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:1050)
      	at org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:2040)
      	at org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1732)
      	at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1158)
      	at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:656)
      	at org.apache.ignite.testframework.junits.GridAbstractTest.startGrid(GridAbstractTest.java:961)
      	at org.apache.ignite.testframework.junits.GridAbstractTest.startGrid(GridAbstractTest.java:902)
      	at org.apache.ignite.testframework.junits.GridAbstractTest.startGrid(GridAbstractTest.java:890)
      	at org.apache.ignite.testframework.junits.GridAbstractTest.startGrid(GridAbstractTest.java:856)
      	at org.apache.ignite.internal.processors.cache.persistence.IgnitePdsContinuousRestartTest.checkRebalancingDuringLoad(IgnitePdsContinuousRestartTest.java:302)
      	at org.apache.ignite.internal.processors.cache.persistence.IgnitePdsContinuousRestartTest.testRebalancingDuringLoad_10_10_1_1(IgnitePdsContinuousRestartTest.java:221)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at junit.framework.TestCase.runTest(TestCase.java:176)
      	at org.apache.ignite.testframework.junits.GridAbstractTest.access$001(GridAbstractTest.java:149)
      	at org.apache.ignite.testframework.junits.GridAbstractTest$6.evaluate(GridAbstractTest.java:2106)
      	at org.apache.ignite.testframework.junits.GridAbstractTest$7.run(GridAbstractTest.java:2123)
      	at java.lang.Thread.run(Thread.java:748)
      Caused by: java.lang.IllegalStateException: Unexpected new transaction state. [currState=2, newState=3, cntr=10468]
      	at org.apache.ignite.internal.processors.cache.mvcc.txlog.TxLog$TxLogUpdateClosure.invalid(TxLog.java:581)
      	at org.apache.ignite.internal.processors.cache.mvcc.txlog.TxLog$TxLogUpdateClosure.checkAborted(TxLog.java:562)
      	at org.apache.ignite.internal.processors.cache.mvcc.txlog.TxLog$TxLogUpdateClosure.call(TxLog.java:451)
      	at org.apache.ignite.internal.processors.cache.mvcc.txlog.TxLog$TxLogUpdateClosure.call(TxLog.java:393)
      	at org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Invoke.invokeClosure(BPlusTree.java:3755)
      	at org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$Invoke.access$5900(BPlusTree.java:3649)
      	at org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.invokeDown(BPlusTree.java:1901)
      	at org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.invoke(BPlusTree.java:1779)
      	... 24 more
      
      
      

      Attachments

        Issue Links

          Activity

            People

              amashenkov Andrey Mashenkov
              rkondakov Roman Kondakov
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 20m
                  20m