Closed GoogleCodeExporter closed 8 years ago
This is another trace, but in the update call:
edu.uci.ics.hyracks.storage.am.btree.exceptions.BTreeException:
java.lang.IllegalStateException:
edu.uci.ics.hyracks.storage.am.common.exceptions.TreeIndexDuplicateKeyException:
Trying to insert duplicate key into leaf node.\n\tat
edu.uci.ics.hyracks.storage.am.btree.impls.BTree.performOp(BTree.java:783)\n\tat
edu.uci.ics.hyracks.storage.am.btree.impls.BTree.performOp(BTree.java:630)\n\tat
edu.uci.ics.hyracks.storage.am.btree.impls.BTree.performOp(BTree.java:630)\n\tat
edu.uci.ics.hyracks.storage.am.btree.impls.BTree.insertUpdateOrDelete(BTree.java
:286)\n\tat
edu.uci.ics.hyracks.storage.am.btree.impls.BTree.update(BTree.java:348)\n\tat
edu.uci.ics.hyracks.storage.am.btree.impls.BTree.access$300(BTree.java:68)\n\tat
edu.uci.ics.hyracks.storage.am.btree.impls.BTree$BTreeAccessor.update(BTree.java
:877)\n\tat
edu.uci.ics.pregelix.dataflow.util.UpdateBuffer.updateIndex(UpdateBuffer.java:10
1)\n\tat
edu.uci.ics.pregelix.dataflow.util.CopyUpdateUtil.copyUpdate(CopyUpdateUtil.java
:49)\n\tat
edu.uci.ics.pregelix.dataflow.std.IndexNestedLoopRightOuterJoinFunctionUpdateOpe
ratorNodePushable.writeResults(IndexNestedLoopRightOuterJoinFunctionUpdateOperat
orNodePushable.java:287)\n\tat
edu.uci.ics.pregelix.dataflow.std.IndexNestedLoopRightOuterJoinFunctionUpdateOpe
ratorNodePushable.outputMatch(IndexNestedLoopRightOuterJoinFunctionUpdateOperato
rNodePushable.java:213)\n\tat
edu.uci.ics.pregelix.dataflow.std.IndexNestedLoopRightOuterJoinFunctionUpdateOpe
ratorNodePushable.nextFrame(IndexNestedLoopRightOuterJoinFunctionUpdateOperatorN
odePushable.java:199)\n\t... 10 more\nCaused by:
java.lang.IllegalStateException:
edu.uci.ics.hyracks.storage.am.common.exceptions.TreeIndexDuplicateKeyException:
Trying to insert duplicate key into leaf node.\n\tat
edu.uci.ics.hyracks.storage.am.btree.frames.BTreeNSMLeafFrame.split(BTreeNSMLeaf
Frame.java:198)\n\tat
edu.uci.ics.hyracks.storage.am.btree.impls.BTree.performLeafSplit(BTree.java:431
)\n\tat
edu.uci.ics.hyracks.storage.am.btree.impls.BTree.updateLeaf(BTree.java:484)\n\ta
t
edu.uci.ics.hyracks.storage.am.btree.impls.BTree.performOp(BTree.java:732)\n\t..
. 21 more\nCaused by:
edu.uci.ics.hyracks.storage.am.common.exceptions.TreeIndexDuplicateKeyException:
Trying to insert duplicate key into leaf node.\n\tat
edu.uci.ics.hyracks.storage.am.btree.frames.BTreeNSMLeafFrame.findInsertTupleInd
ex(BTreeNSMLeafFrame.java:75)\n\tat
edu.uci.ics.hyracks.storage.am.btree.frames.BTreeNSMLeafFrame.split(BTreeNSMLeaf
Frame.java:196)
Original comment by buyingyi@gmail.com
on 30 Jul 2013 at 8:06
edu.uci.ics.hyracks.storage.am.btree.impls.BTree$BTreeAccessor.update should
never throw TreeIndexDuplicateKeyException.
Original comment by buyingyi@gmail.com
on 30 Jul 2013 at 8:08
Here is another trace:
edu.uci.ics.pregelix.dataflow.std.IndexNestedLoopRightOuterJoinFunctionUpdateOpe
ratorNodePushable.nextFrame(IndexNestedLoopRightOuterJoinFunctionUpdateOperatorN
odePushable.java:208)\n\tat
edu.uci.ics.pregelix.dataflow.MaterializingReadOperatorDescriptor$1.nextFrame(Ma
terializingReadOperatorDescriptor.java:63)\n\t... 9 more\nCaused by:
edu.uci.ics.hyracks.storage.am.common.exceptions.TreeIndexDuplicateKeyException:
Trying to insert duplicate key into leaf node.\n\tat
edu.uci.ics.hyracks.storage.am.btree.frames.BTreeNSMLeafFrame.findInsertTupleInd
ex(BTreeNSMLeafFrame.java:75)\n\tat
edu.uci.ics.hyracks.storage.am.btree.impls.BTree.updateLeaf(BTree.java:478)\n\ta
t
edu.uci.ics.hyracks.storage.am.btree.impls.BTree.performOp(BTree.java:732)\n\tat
edu.uci.ics.hyracks.storage.am.btree.impls.BTree.performOp(BTree.java:630)\n\tat
edu.uci.ics.hyracks.storage.am.btree.impls.BTree.insertUpdateOrDelete(BTree.java
:286)\n\tat
edu.uci.ics.hyracks.storage.am.btree.impls.BTree.update(BTree.java:348)\n\tat
edu.uci.ics.hyracks.storage.am.btree.impls.BTree.access$300(BTree.java:68)\n\tat
edu.uci.ics.hyracks.storage.am.btree.impls.BTree$BTreeAccessor.update(BTree.java
:877)\n\tat
edu.uci.ics.pregelix.dataflow.util.UpdateBuffer.updateIndex(UpdateBuffer.java:10
1)\n\tat
edu.uci.ics.pregelix.dataflow.util.CopyUpdateUtil.copyUpdate(CopyUpdateUtil.java
:49)\n\tat
edu.uci.ics.pregelix.dataflow.std.IndexNestedLoopRightOuterJoinFunctionUpdateOpe
ratorNodePushable.writeResults(IndexNestedLoopRightOuterJoinFunctionUpdateOperat
orNodePushable.java:287)\n\tat
Original comment by buyingyi@gmail.com
on 31 Jul 2013 at 12:20
Run with one partition per machine, and can still hit this:
Caused by:
edu.uci.ics.hyracks.storage.am.common.exceptions.TreeIndexDuplicateKeyException:
Trying to insert duplicate key into leaf node.
at edu.uci.ics.hyracks.storage.am.btree.frames.BTreeNSMLeafFrame.findInsertTupleIndex(BTreeNSMLeafFrame.java:75)
at edu.uci.ics.hyracks.storage.am.btree.impls.BTree.updateLeaf(BTree.java:478)
at edu.uci.ics.hyracks.storage.am.btree.impls.BTree.performOp(BTree.java:732)
at edu.uci.ics.hyracks.storage.am.btree.impls.BTree.performOp(BTree.java:630)
at edu.uci.ics.hyracks.storage.am.btree.impls.BTree.performOp(BTree.java:630)
at edu.uci.ics.hyracks.storage.am.btree.impls.BTree.insertUpdateOrDelete(BTree.java:286)
at edu.uci.ics.hyracks.storage.am.btree.impls.BTree.update(BTree.java:348)
at edu.uci.ics.hyracks.storage.am.btree.impls.BTree.access$300(BTree.java:68)
at edu.uci.ics.hyracks.storage.am.btree.impls.BTree$BTreeAccessor.update(BTree.java:877)
at edu.uci.ics.pregelix.dataflow.util.UpdateBuffer.updateIndex(UpdateBuffer.java:101)
at edu.uci.ics.pregelix.dataflow.util.CopyUpdateUtil.copyUpdate(CopyUpdateUtil.java:49)
at edu.uci.ics.pregelix.dataflow.std.IndexNestedLoopRightOuterJoinFunctionUpdateOperatorNodePushable.writeResults(IndexNestedLoopRightOuterJoinFunctionUpdateOperatorNodePushable.java:287)
at edu.uci.ics.pregelix.dataflow.std.IndexNestedLoopRightOuterJoinFunctionUpdateOperatorNodePushable.outputMatch(IndexNestedLoopRightOuterJoinFunctionUpdateOperatorNodePushable.java:213)
at edu.uci.ics.pregelix.dataflow.std.IndexNestedLoopRightOuterJoinFunctionUpdateOperatorNodePushable.nextFrame(IndexNestedLoopRightOuterJoinFunctionUpdateOperatorNodePushable.java:199)
Original comment by buyingyi@gmail.com
on 31 Jul 2013 at 8:57
Providing a way to reproduce the issue from my end would help.
If that's not possible, then let's look it at together today.
Sattam
Original comment by salsuba...@gmail.com
on 31 Jul 2013 at 1:15
It turned out the data is being loaded with duplicates (checking for duplicates
were omitted), causing the index to be corrupted.
Original comment by salsuba...@gmail.com
on 1 Aug 2013 at 12:58
Original issue reported on code.google.com by
buyingyi@gmail.com
on 29 Jul 2013 at 2:34