You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-commits@db.apache.org by dj...@apache.org on 2007/03/25 17:24:42 UTC
svn commit: r522280 - in /db/derby/code/trunk/java/engine/org/apache/derby:
iapi/store/access/ impl/sql/execute/ impl/store/access/
impl/store/access/sort/
Author: djd
Date: Sun Mar 25 08:24:41 2007
New Revision: 522280
URL: http://svn.apache.org/viewvc?view=rev&rev=522280
Log:
DERBY-2486 Rename SortController.close to completeInserts which better matches its current use
and future use once SortController is used to completely control a sort.
Also some minor protection changes of methods in the sort implementation.
Modified:
db/derby/code/trunk/java/engine/org/apache/derby/iapi/store/access/SortController.java
db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/AlterTableConstantAction.java
db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/CreateIndexConstantAction.java
db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/DistinctScalarAggregateResultSet.java
db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/GroupedAggregateResultSet.java
db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/InsertResultSet.java
db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/SortResultSet.java
db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/RAMTransaction.java
db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/sort/MergeInserter.java
db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/sort/MergeSort.java
db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/sort/SortBuffer.java
Modified: db/derby/code/trunk/java/engine/org/apache/derby/iapi/store/access/SortController.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/iapi/store/access/SortController.java?view=diff&rev=522280&r1=522279&r2=522280
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/iapi/store/access/SortController.java (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/iapi/store/access/SortController.java Sun Mar 25 08:24:41 2007
@@ -21,11 +21,8 @@
package org.apache.derby.iapi.store.access;
-import org.apache.derby.iapi.types.CloneableObject;
-
-import org.apache.derby.iapi.types.DataValueDescriptor;
-
import org.apache.derby.iapi.error.StandardException;
+import org.apache.derby.iapi.types.DataValueDescriptor;
/**
@@ -47,23 +44,19 @@
public interface SortController
{
/**
- Close this sort controller.
- <p>
- Currently, since only one sort controller is allowed per sort,
- closing the sort controller means the last row has been
- inserted.
+ Inform SortController that all the rows have
+ been inserted into it.
**/
- void close();
+ void completedInserts();
/**
Insert a row into the sort.
- @param row The row to insert into the conglomerate. The stored
+ @param row The row to insert into the SortController. The stored
representations of the row's columns are copied into a new row
- somewhere in the conglomerate.
+ somewhere in the sort.
@exception StandardException Standard exception policy.
- @see CloneableObject
**/
void insert(DataValueDescriptor[] row)
throws StandardException;
Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/AlterTableConstantAction.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/AlterTableConstantAction.java?view=diff&rev=522280&r1=522279&r2=522280
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/AlterTableConstantAction.java (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/AlterTableConstantAction.java Sun Mar 25 08:24:41 2007
@@ -1531,7 +1531,7 @@
boolean updateStatistics = false;
if(!truncateTable)
{
- sorters[index].close();
+ sorters[index].completedInserts();
sorters[index] = null;
if (td.statisticsExist(cd))
@@ -1987,11 +1987,10 @@
}
/**
- * @see ResultSet#cleanUp
*
* @exception StandardException Thrown on error
*/
- public void cleanUp() throws StandardException
+ private void cleanUp() throws StandardException
{
if (compressHeapCC != null)
{
@@ -2011,7 +2010,7 @@
{
if (sorters[index] != null)
{
- sorters[index].close();
+ sorters[index].completedInserts();
}
sorters[index] = null;
}
Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/CreateIndexConstantAction.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/CreateIndexConstantAction.java?view=diff&rev=522280&r1=522279&r2=522280
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/CreateIndexConstantAction.java (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/CreateIndexConstantAction.java Sun Mar 25 08:24:41 2007
@@ -765,7 +765,7 @@
}
finally
{
- sorter.close();
+ sorter.completedInserts();
}
return new CardinalityCounter(tc.openSortRowSource(sortId));
Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/DistinctScalarAggregateResultSet.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/DistinctScalarAggregateResultSet.java?view=diff&rev=522280&r1=522279&r2=522280
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/DistinctScalarAggregateResultSet.java (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/DistinctScalarAggregateResultSet.java Sun Mar 25 08:24:41 2007
@@ -382,7 +382,7 @@
/*
** End the sort and open up the result set
*/
- sorter.close();
+ sorter.completedInserts();
scanController =
tc.openSortScan(sortId, activation.getResultSetHoldability());
Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/GroupedAggregateResultSet.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/GroupedAggregateResultSet.java?view=diff&rev=522280&r1=522279&r2=522280
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/GroupedAggregateResultSet.java (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/GroupedAggregateResultSet.java Sun Mar 25 08:24:41 2007
@@ -270,7 +270,7 @@
*/
source.close();
sortProperties = sorter.getSortInfo().getAllSortInfo(sortProperties);
- sorter.close();
+ sorter.completedInserts();
scanController =
tc.openSortScan(sortId, activation.getResultSetHoldability());
@@ -329,7 +329,7 @@
}
source.close();
sortProperties = sorter.getSortInfo().getAllSortInfo(sortProperties);
- sorter.close();
+ sorter.completedInserts();
return tc.openSortScan(sortId, activation.getResultSetHoldability());
}
Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/InsertResultSet.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/InsertResultSet.java?view=diff&rev=522280&r1=522279&r2=522280
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/InsertResultSet.java (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/InsertResultSet.java Sun Mar 25 08:24:41 2007
@@ -1805,7 +1805,7 @@
// We can finally drain the sorter and rebuild the index
// RESOLVE - all indexes are btrees right now
// Populate the index.
- sorters[index].close();
+ sorters[index].completedInserts();
sorters[index] = null;
rowSources[index] = new CardinalityCounter(tc.openSortRowSource(sortIds[index]));
newIndexCongloms[index] = tc.createAndLoadConglomerate(
@@ -1923,7 +1923,7 @@
{
if (sorters[index] != null)
{
- sorters[index].close();
+ sorters[index].completedInserts();
}
sorters[index] = null;
}
@@ -2213,7 +2213,7 @@
for (int index = 0; index < numIndexes; index++)
{
sorters[index] = tc.openSort(sortIds[index]);
- sorters[index].close();
+ sorters[index].completedInserts();
rowSources[index] = tc.openSortRowSource(sortIds[index]);
}
Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/SortResultSet.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/SortResultSet.java?view=diff&rev=522280&r1=522279&r2=522280
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/SortResultSet.java (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/SortResultSet.java Sun Mar 25 08:24:41 2007
@@ -318,7 +318,7 @@
}
source.close();
sortProperties = sorter.getSortInfo().getAllSortInfo(sortProperties);
- sorter.close();
+ sorter.completedInserts();
return tc.openSortScan(sortId, activation.getResultSetHoldability());
}
Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/RAMTransaction.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/RAMTransaction.java?view=diff&rev=522280&r1=522279&r2=522280
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/RAMTransaction.java (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/RAMTransaction.java Sun Mar 25 08:24:41 2007
@@ -301,7 +301,7 @@
for (int i = sortControllers.size() - 1; i >= 0; i--)
{
SortController sc = (SortController) sortControllers.get(i);
- sc.close();
+ sc.completedInserts();
}
sortControllers.clear();
}
Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/sort/MergeInserter.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/sort/MergeInserter.java?view=diff&rev=522280&r1=522279&r2=522280
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/sort/MergeInserter.java (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/sort/MergeInserter.java Sun Mar 25 08:24:41 2007
@@ -35,28 +35,28 @@
**/
-public final class MergeInserter implements SortController
+final class MergeInserter implements SortController
{
/**
The sort this inserter is for.
**/
- protected MergeSort sort = null;
+ private MergeSort sort;
/**
The transaction this inserter is in.
**/
- protected TransactionManager tran;
+ private TransactionManager tran;
/**
A vector of the conglomerate ids of the merge runs.
**/
- Vector mergeRuns = null;
+ private Vector mergeRuns;
/**
An in-memory ordered set that is used to sort rows
before they're sent to merge runs.
**/
- SortBuffer sortBuffer = null;
+ private SortBuffer sortBuffer;
/**
Information about memory usage to dynamically tune the
@@ -195,15 +195,13 @@
}
/**
- Close this sort controller. Closing the sort controller
- means the caller is done inserting rows. This method
- must not throw any exceptions since it's called during
- error processing.
+ * Called when the caller has completed
+ * inserting rows into the sorter.
- @see SortController#close
+ @see SortController#completedInserts
**/
- public void close()
+ public void completedInserts()
{
// Tell the sort that we're closed, and hand off
// the sort buffer and the vector of merge runs.
Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/sort/MergeSort.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/sort/MergeSort.java?view=diff&rev=522280&r1=522279&r2=522280
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/sort/MergeSort.java (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/sort/MergeSort.java Sun Mar 25 08:24:41 2007
@@ -58,7 +58,7 @@
**/
-public final class MergeSort implements Sort
+final class MergeSort implements Sort
{
/*
@@ -346,7 +346,7 @@
// which will give us any in-progress merge
// runs, if there are any.
if (inserter != null)
- inserter.close();
+ inserter.completedInserts();
inserter = null;
// Make sure the scan is closed, if there is one.
Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/sort/SortBuffer.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/sort/SortBuffer.java?view=diff&rev=522280&r1=522279&r2=522280
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/sort/SortBuffer.java (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/impl/store/access/sort/SortBuffer.java Sun Mar 25 08:24:41 2007
@@ -112,7 +112,7 @@
Arrange that the next node allocated in the tree have
it's aux field set to the argument.
**/
- public void setNextAux(int aux)
+ void setNextAux(int aux)
{
nextAux = aux;
}
@@ -121,7 +121,7 @@
Retrieve the aux value from the last node deallocated
from the tree.
**/
- public int getLastAux()
+ int getLastAux()
{
return lastAux;
}
@@ -130,7 +130,7 @@
Construct doesn't do anything, callers must call init
and check its return code.
**/
- public SortBuffer(MergeSort sort)
+ SortBuffer(MergeSort sort)
{
this.sort = sort;
}
@@ -139,7 +139,7 @@
Initialize. Returns false if the allocator
couldn't be initialized.
**/
- public boolean init()
+ boolean init()
{
allocator = new NodeAllocator();
@@ -159,14 +159,14 @@
return true;
}
- public void reset()
+ void reset()
{
allocator.reset();
head = allocator.newNode();
height = 0;
}
- public void close()
+ void close()
{
if (allocator != null)
allocator.close();
@@ -178,7 +178,7 @@
/**
Grow by a certain percent if we can
*/
- public void grow(int percent)
+ void grow(int percent)
{
if (percent > 0)
allocator.grow(percent);
@@ -190,7 +190,7 @@
It's the capacity of the node allocator minus one
because the sorter uses one node for the head.
**/
- public int capacity()
+ int capacity()
{
if (allocator == null)
return 0;
@@ -204,7 +204,7 @@
<P>
See Knuth Vol. 3, Sec. 6.2.3, pp. 455-457 for the algorithm.
**/
- public int insert(DataValueDescriptor[] k)
+ int insert(DataValueDescriptor[] k)
throws StandardException
{
int c;
@@ -415,7 +415,7 @@
Return the lowest key and delete it from
the tree, preserving the balance of the tree.
**/
- public DataValueDescriptor[] removeFirst()
+ DataValueDescriptor[] removeFirst()
{
if (head.rightLink == null)
return null;