org.apache.derby.impl.sql.execute
Class DistinctScanResultSet

java.lang.Object
  extended by org.apache.derby.impl.sql.execute.BasicNoPutResultSetImpl
      extended by org.apache.derby.impl.sql.execute.NoPutResultSetImpl
          extended by org.apache.derby.impl.sql.execute.ScanResultSet
              extended by org.apache.derby.impl.sql.execute.HashScanResultSet
                  extended by org.apache.derby.impl.sql.execute.DistinctScanResultSet
All Implemented Interfaces:
CursorResultSet, NoPutResultSet, ResultSet, RowLocationRetRowSource, RowSource

 class DistinctScanResultSet
extends HashScanResultSet

Eliminates duplicates while scanning the underlying conglomerate. (Assumes no predicates, for now.)


Field Summary
(package private)  java.util.Enumeration element
           
 
Fields inherited from class org.apache.derby.impl.sql.execute.HashScanResultSet
compactRow, DEFAULT_INITIAL_CAPACITY, DEFAULT_LOADFACTOR, DEFAULT_MAX_CAPACITY, eliminateDuplicates, firstNext, forUpdate, hashtable, hashtableSize, indexName, isConstraint, keyColumns, nextQualifiers, scanProperties, scanQualifiers, scoci, startPositionString, stopPositionString, tableName, userSuppliedOptimizerOverrides
 
Fields inherited from class org.apache.derby.impl.sql.execute.ScanResultSet
accessedCols, candidate, isolationLevel, lockMode
 
Fields inherited from class org.apache.derby.impl.sql.execute.NoPutResultSetImpl
checkNullCols, clonedExecRow, cncLen, resultSetNumber, targetResultSet
 
Fields inherited from class org.apache.derby.impl.sql.execute.BasicNoPutResultSetImpl
activation, beginTime, closeTime, constructorTime, currentRow, endExecutionTime, finished, isOpen, isTopResultSet, nextTime, numOpens, openTime, optimizerEstimatedCost, optimizerEstimatedRowCount, resultDescription, rowsFiltered, rowsSeen, startExecutionTime, subqueryTrackingArray
 
Fields inherited from interface org.apache.derby.iapi.sql.ResultSet
CURRENT_RESULTSET_ONLY, ENTIRE_RESULTSET_TREE, ISAFTERLAST, ISBEFOREFIRST, ISFIRST, ISLAST
 
Fields inherited from interface org.apache.derby.iapi.sql.execute.NoPutResultSet
ABSOLUTE, FIRST, LAST, NEXT, PREVIOUS, RELATIVE
 
Constructor Summary
DistinctScanResultSet(long conglomId, StaticCompiledOpenConglomInfo scoci, Activation activation, GeneratedMethod resultRowAllocator, int resultSetNumber, int hashKeyItem, java.lang.String tableName, java.lang.String userSuppliedOptimizerOverrides, java.lang.String indexName, boolean isConstraint, int colRefItem, int lockMode, boolean tableLocked, int isolationLevel, double optimizerEstimatedRowCount, double optimizerEstimatedCost)
           
 
Method Summary
 ExecRow getNextRowCore()
          Return the next row (if any) from the scan (if open).
 
Methods inherited from class org.apache.derby.impl.sql.execute.HashScanResultSet
canGetInstantaneousLocks, close, getCurrentRow, getRowLocation, getScanProperties, getTimeSpent, isForUpdate, openCore, printStartPosition, printStopPosition, reopenCore, requiresRelocking
 
Methods inherited from class org.apache.derby.impl.sql.execute.ScanResultSet
getScanIsolationLevel, initIsolationLevel
 
Methods inherited from class org.apache.derby.impl.sql.execute.NoPutResultSetImpl
clearCurrentRow, clearOrderableCache, closeRowSource, getCursorName, getNextRowFromRowSource, getResultDescription, getValidColumns, markRowAsDeleted, needsRowLocation, needsToClone, positionScanAtRowLocation, printQualifiers, resultSetNumber, rowLocation, setCurrentRow, setNeedsRowLocation, setTargetResultSet, skipRow, skipScan, updateRow
 
Methods inherited from class org.apache.derby.impl.sql.execute.BasicNoPutResultSetImpl
addWarning, attachStatementContext, checkCancellationFlag, checkRowPosition, cleanUp, dumpTimeStats, finish, finishAndRTS, getAbsoluteRow, getActivation, getAutoGeneratedKeysResultset, getBeginExecutionTimestamp, getCompactRow, getCurrentTimeMillis, getElapsedMillis, getEndExecutionTimestamp, getEstimatedRowCount, getExecuteTime, getExecutionFactory, getFirstRow, getLanguageConnectionContext, getLastRow, getNextRow, getPointOfAttachment, getPreviousRow, getRelativeRow, getRowNumber, getSubqueryTrackingArray, getTransactionController, getWarnings, isClosed, markAsTopResultSet, modifiedRowCount, open, recordConstructorTime, returnsRows, setAfterLastRow, setBeforeFirstRow, setCompactRow, setCompatRow
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.derby.iapi.sql.ResultSet
checkRowPosition, cleanUp, clearCurrentRow, finish, getAbsoluteRow, getActivation, getAutoGeneratedKeysResultset, getBeginExecutionTimestamp, getCursorName, getEndExecutionTimestamp, getExecuteTime, getFirstRow, getLastRow, getNextRow, getPreviousRow, getRelativeRow, getResultDescription, getRowNumber, getSubqueryTrackingArray, getWarnings, isClosed, modifiedRowCount, open, returnsRows, setAfterLastRow, setBeforeFirstRow
 

Field Detail

element

java.util.Enumeration element
Constructor Detail

DistinctScanResultSet

DistinctScanResultSet(long conglomId,
                      StaticCompiledOpenConglomInfo scoci,
                      Activation activation,
                      GeneratedMethod resultRowAllocator,
                      int resultSetNumber,
                      int hashKeyItem,
                      java.lang.String tableName,
                      java.lang.String userSuppliedOptimizerOverrides,
                      java.lang.String indexName,
                      boolean isConstraint,
                      int colRefItem,
                      int lockMode,
                      boolean tableLocked,
                      int isolationLevel,
                      double optimizerEstimatedRowCount,
                      double optimizerEstimatedCost)
                throws StandardException
Throws:
StandardException
Method Detail

getNextRowCore

public ExecRow getNextRowCore()
                       throws StandardException
Return the next row (if any) from the scan (if open).

Specified by:
getNextRowCore in interface NoPutResultSet
Overrides:
getNextRowCore in class HashScanResultSet
Returns:
the next row in the result
Throws:
StandardException - thrown on failure to get next row
See Also:
NoPutResultSet.getNextRowCore()

Built on Thu 2011-03-10 11:54:14+0000, from revision ???

Apache Derby V10.6 Internals - Copyright © 2004,2007 The Apache Software Foundation. All Rights Reserved.