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/19 17:59:14 UTC
svn commit: r1363402 -
/labs/mavibot/trunk/mavibot/src/main/java/org/apache/mavibot/btree/Node.java
Author: elecharny
Date: Thu Jul 19 15:59:14 2012
New Revision: 1363402
URL: http://svn.apache.org/viewvc?rev=1363402&view=rev
Log:
o Added some Javadoc
o Renamed some private methods for clarity sake
o Fixed a bug when a key was not present in a node and we remove it
Modified:
labs/mavibot/trunk/mavibot/src/main/java/org/apache/mavibot/btree/Node.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=1363402&r1=1363401&r2=1363402&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 Thu Jul 19 15:59:14 2012
@@ -143,7 +143,11 @@ import java.util.LinkedList;
}
- private RemoveResult<K, V> remove( RemoveResult<K, V> removeResult, int index, int pos, boolean found )
+ /**
+ * Modify the current node after a remove has been done in one of its children.
+ * The node won't be merged with another node.
+ */
+ private RemoveResult<K, V> handleRemoveResult( RemoveResult<K, V> removeResult, int index, int pos, boolean found )
{
// Simplest case : the element has been removed from the underlying page,
// we just have to copy the current page an modify the reference to link to
@@ -161,7 +165,7 @@ import java.util.LinkedList;
K newLeftMost = removeResult.getNewLeftMost();
- if ( ( newLeftMost != null ) && ( pos != 0 ) )
+ if ( ( newLeftMost != null ) && ( pos < 0 ) )
{
newPage.keys[index] = newLeftMost;
}
@@ -209,7 +213,7 @@ import java.util.LinkedList;
// If we just modified the child, return a modified page
if ( deleteResult instanceof RemoveResult )
{
- RemoveResult<K, V> removeResult = remove( (RemoveResult<K, V>)deleteResult, index, pos, found );
+ RemoveResult<K, V> removeResult = handleRemoveResult( (RemoveResult<K, V>)deleteResult, index, pos, found );
return removeResult;
}
@@ -218,7 +222,7 @@ import java.util.LinkedList;
// the current page
if ( deleteResult instanceof BorrowedFromSiblingResult )
{
- return borrowedResult( deleteResult, pos );
+ return handleBorrowedResult( deleteResult, pos );
}
// Last, not least, we have merged two child pages. We now have to remove
@@ -315,7 +319,7 @@ import java.util.LinkedList;
* @param pos The position the key was found in the current node
* @return
*/
- private DeleteResult<K, V> borrowedResult( DeleteResult<K, V> deleteResult, int pos )
+ private DeleteResult<K, V> handleBorrowedResult( DeleteResult<K, V> deleteResult, int pos )
{
BorrowedFromSiblingResult<K, V> borrowedResult = (BorrowedFromSiblingResult<K, V>)deleteResult;
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org