Igor Seliverstov created IGNITE-4860:
----------------------------------------
Summary: Empty leafs in BPlusTree
Key: IGNITE-4860
URL: https://issues.apache.org/jira/browse/IGNITE-4860
Project: Ignite
Issue Type: Bug
Components: cache
Reporter: Igor Seliverstov
Assignee: Sergi Vladykin
{{org.apache.ignite.internal.processors.database.BPlusTreeSelfTest#testMassiveRemove2_true}}
The test fails approximately once out of 500 times with following error:
{noformat}
10:34:30,394][INFO ][main][root] >>> Stopping test:
BPlusTreeSelfTest#testMassiveRemove2_true in 49 ms <<<
[10:34:30,392][ERROR][main][root] Test failed.
java.lang.AssertionError: Empty leaf page.
at
org.apache.ignite.internal.processors.cache.database.tree.BPlusTree.fail(BPlusTree.java:1214)
at
org.apache.ignite.internal.processors.cache.database.tree.BPlusTree.validateDownPages(BPlusTree.java:1285)
at
org.apache.ignite.internal.processors.cache.database.tree.BPlusTree.validateDownPages(BPlusTree.java:1311)
at
org.apache.ignite.internal.processors.cache.database.tree.BPlusTree.validateTree(BPlusTree.java:1102)
at
org.apache.ignite.internal.processors.database.BPlusTreeSelfTest.doTestMassiveRemove(BPlusTreeSelfTest.java:853)
at
org.apache.ignite.internal.processors.database.BPlusTreeSelfTest.testMassiveRemove2_true(BPlusTreeSelfTest.java:774)
at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
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.runTestInternal(GridAbstractTest.java:1811)
at
org.apache.ignite.testframework.junits.GridAbstractTest.access$000(GridAbstractTest.java:118)
at
org.apache.ignite.testframework.junits.GridAbstractTest$4.run(GridAbstractTest.java:1726)
at java.lang.Thread.run(Thread.java:745)
java.lang.AssertionError: Empty leaf page.
at
org.apache.ignite.internal.processors.cache.database.tree.BPlusTree.fail(BPlusTree.java:1214)
at
org.apache.ignite.internal.processors.cache.database.tree.BPlusTree.validateDownPages(BPlusTree.java:1285)
at
org.apache.ignite.internal.processors.cache.database.tree.BPlusTree.validateDownPages(BPlusTree.java:1311)
at
org.apache.ignite.internal.processors.cache.database.tree.BPlusTree.validateTree(BPlusTree.java:1102)
at
org.apache.ignite.internal.processors.database.BPlusTreeSelfTest.doTestMassiveRemove(BPlusTreeSelfTest.java:853)
at
org.apache.ignite.internal.processors.database.BPlusTreeSelfTest.testMassiveRemove2_true(BPlusTreeSelfTest.java:774)
at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
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.runTestInternal(GridAbstractTest.java:1811)
at
org.apache.ignite.testframework.junits.GridAbstractTest.access$000(GridAbstractTest.java:118)
at
org.apache.ignite.testframework.junits.GridAbstractTest$4.run(GridAbstractTest.java:1726)
at java.lang.Thread.run(Thread.java:745)
{noformat}
I've checked the test, seems a race happens while deleting pages, which
prevents to merge empty leaf properly.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)