From: <mar...@us...> - 2014-03-18 09:41:04
|
Revision: 7994 http://sourceforge.net/p/bigdata/code/7994 Author: martyncutcher Date: 2014-03-18 09:41:01 +0000 (Tue, 18 Mar 2014) Log Message: ----------- Fix for #855 to ensure a bad null child addr is not persisted and fix to TestCase to ensure valid data now it is checked! Modified Paths: -------------- branches/BIGDATA_RELEASE_1_2_4/bigdata/src/java/com/bigdata/btree/data/DefaultNodeCoder.java branches/BIGDATA_RELEASE_1_2_4/bigdata/src/test/com/bigdata/btree/data/AbstractNodeDataRecordTestCase.java Modified: branches/BIGDATA_RELEASE_1_2_4/bigdata/src/java/com/bigdata/btree/data/DefaultNodeCoder.java =================================================================== --- branches/BIGDATA_RELEASE_1_2_4/bigdata/src/java/com/bigdata/btree/data/DefaultNodeCoder.java 2014-03-18 04:38:07 UTC (rev 7993) +++ branches/BIGDATA_RELEASE_1_2_4/bigdata/src/java/com/bigdata/btree/data/DefaultNodeCoder.java 2014-03-18 09:41:01 UTC (rev 7994) @@ -219,9 +219,9 @@ final long childAddr = node.getChildAddr(i); -// if (childAddr == IRawStore.NULL) -// throw new AssertionError("Child is not persistent: index=" + i -// + " out of " + nkeys + " entries, " + node.toString()); + if (childAddr == IRawStore.NULL) + throw new AssertionError("Child is not persistent: index=" + i + + " out of " + nkeys + " entries, " + node.toString()); buf.putLong(childAddr); Modified: branches/BIGDATA_RELEASE_1_2_4/bigdata/src/test/com/bigdata/btree/data/AbstractNodeDataRecordTestCase.java =================================================================== --- branches/BIGDATA_RELEASE_1_2_4/bigdata/src/test/com/bigdata/btree/data/AbstractNodeDataRecordTestCase.java 2014-03-18 04:38:07 UTC (rev 7993) +++ branches/BIGDATA_RELEASE_1_2_4/bigdata/src/test/com/bigdata/btree/data/AbstractNodeDataRecordTestCase.java 2014-03-18 09:41:01 UTC (rev 7994) @@ -79,6 +79,9 @@ final long minimumVersionTimestamp = 0L; final long maximumVersionTimestamp = 0L; + // Must not be 0L. See #855. + childAddr[0] = 12L; + final INodeData expected = new MockNodeData(new ReadOnlyKeysRaba(nkeys, keys), spannedTupleCount, childAddr, childEntryCount, hasVersionTimestamps, minimumVersionTimestamp, @@ -104,6 +107,9 @@ final long minimumVersionTimestamp = System.currentTimeMillis(); final long maximumVersionTimestamp = System.currentTimeMillis() + 20; + // Must not be 0L. See #855. + childAddr[0] = 12L; + final INodeData expected = new MockNodeData(new ReadOnlyKeysRaba(nkeys, keys), spannedTupleCount, childAddr, childEntryCount, hasVersionTimestamps, minimumVersionTimestamp, This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |