You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@labs.apache.org by el...@apache.org on 2012/07/10 22:30:53 UTC
svn commit: r1359886 - in /labs/mavibot/trunk/mavibot/src:
main/java/org/apache/mavibot/btree/Node.java
main/java/org/apache/mavibot/btree/RemoveResult.java
test/java/org/apache/mavibot/btree/BTreeTest.java
Author: elecharny
Date: Tue Jul 10 20:30:53 2012
New Revision: 1359886
URL: http://svn.apache.org/viewvc?rev=1359886&view=rev
Log:
o Fixed an issue when a value is deleted on the left of the leftmost leaf
o Improved some toString() method
o Added some tests
Modified:
labs/mavibot/trunk/mavibot/src/main/java/org/apache/mavibot/btree/Node.java
labs/mavibot/trunk/mavibot/src/main/java/org/apache/mavibot/btree/RemoveResult.java
labs/mavibot/trunk/mavibot/src/test/java/org/apache/mavibot/btree/BTreeTest.java
Modified: labs/mavibot/trunk/mavibot/src/main/java/org/apache/mavibot/btree/Node.java
URL: http://svn.apache.org/viewvc/labs/mavibot/trunk/mavibot/src/main/java/org/apache/mavibot/btree/Node.java?rev=1359886&r1=1359885&r2=1359886&view=diff
==============================================================================
--- labs/mavibot/trunk/mavibot/src/main/java/org/apache/mavibot/btree/Node.java (original)
+++ labs/mavibot/trunk/mavibot/src/main/java/org/apache/mavibot/btree/Node.java Tue Jul 10 20:30:53 2012
@@ -287,7 +287,7 @@ import java.util.LinkedList;
Node<K, V> newPage = copy( revision );
newPage.children[pos] = removeResult.getModifiedPage();
- if ( removeResult.getNewLeftMost() != null )
+ if ( ( removeResult.getNewLeftMost() != null ) && ( pos != 0 ) )
{
newPage.keys[pos] = removeResult.getNewLeftMost();
}
Modified: labs/mavibot/trunk/mavibot/src/main/java/org/apache/mavibot/btree/RemoveResult.java
URL: http://svn.apache.org/viewvc/labs/mavibot/trunk/mavibot/src/main/java/org/apache/mavibot/btree/RemoveResult.java?rev=1359886&r1=1359885&r2=1359886&view=diff
==============================================================================
--- labs/mavibot/trunk/mavibot/src/main/java/org/apache/mavibot/btree/RemoveResult.java (original)
+++ labs/mavibot/trunk/mavibot/src/main/java/org/apache/mavibot/btree/RemoveResult.java Tue Jul 10 20:30:53 2012
@@ -50,9 +50,10 @@ package org.apache.mavibot.btree;
{
StringBuilder sb = new StringBuilder();
- sb.append( "RemoveResult, removed element = " ).append( getRemovedElement() );
- sb.append( ", modifiedPage = " ).append( getModifiedPage() );
- sb.append( ", new LeftMost = " ).append( getNewLeftMost() );
+ sb.append( "RemoveResult :" );
+ sb.append( "\n removed element = " ).append( getRemovedElement() );
+ sb.append( "\n modifiedPage = " ).append( getModifiedPage() );
+ sb.append( "\n new LeftMost = " ).append( getNewLeftMost() );
return sb.toString();
}
Modified: labs/mavibot/trunk/mavibot/src/test/java/org/apache/mavibot/btree/BTreeTest.java
URL: http://svn.apache.org/viewvc/labs/mavibot/trunk/mavibot/src/test/java/org/apache/mavibot/btree/BTreeTest.java?rev=1359886&r1=1359885&r2=1359886&view=diff
==============================================================================
--- labs/mavibot/trunk/mavibot/src/test/java/org/apache/mavibot/btree/BTreeTest.java (original)
+++ labs/mavibot/trunk/mavibot/src/test/java/org/apache/mavibot/btree/BTreeTest.java Tue Jul 10 20:30:53 2012
@@ -662,5 +662,23 @@ public class BTreeTest
btree.delete( 18 );
assertNull( btree.find( 18 ) );
+
+ // Delete two more elements to have two leaves with N/2 elements
+ btree.delete( 7 );
+ assertNull( btree.find( 7 ) );
+
+ btree.delete( 12 );
+ assertNull( btree.find( 12 ) );
+
+ // Delete the extra elements in the first leaf
+ btree.delete( 1 );
+ assertNull( btree.find( 1 ) );
+
+ btree.delete( 2 );
+ assertNull( btree.find( 2 ) );
+
+ // Delete an element on first position from a leaf containing N/2 elements
+ //btree.delete( 5 );
+ //assertNull( btree.find( 5 ) );
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org