class TableScanResultSet extends ScanResultSet implements CursorResultSet, java.lang.Cloneable
| Modifier and Type | Field and Description |
|---|---|
boolean |
coarserLock |
protected long |
conglomId |
private boolean |
currentRowIsValid |
protected DynamicCompiledOpenConglomInfo |
dcoci |
private long |
estimatedRowCount |
protected boolean |
firstScan |
boolean |
forUpdate |
protected int[] |
indexCols |
java.lang.String |
indexName |
boolean |
isConstraint |
protected boolean |
isKeyed |
private boolean |
nextDone |
boolean |
oneRowScan |
protected BackingStoreHashtable |
past2FutureTbl
This field is used by beetle 3865, updateable cursor using index.
|
Qualifier[][] |
qualifiers |
private boolean |
qualify |
private RowLocation |
rlTemplate |
int |
rowsPerRead |
protected long |
rowsThisScan |
protected boolean |
runTimeStatisticsOn |
(package private) boolean |
sameStartStopPosition |
protected ScanController |
scanController |
protected boolean |
scanControllerOpened |
private java.util.Properties |
scanProperties |
private boolean |
scanRepositioned |
protected StaticCompiledOpenConglomInfo |
scoci |
protected GeneratedMethod |
startKeyGetter |
protected ExecIndexRow |
startPosition |
java.lang.String |
startPositionString |
protected int |
startSearchOperator |
protected GeneratedMethod |
stopKeyGetter |
protected ExecIndexRow |
stopPosition |
java.lang.String |
stopPositionString |
protected int |
stopSearchOperator |
java.lang.String |
tableName |
java.lang.String |
userSuppliedOptimizerOverrides |
accessedCols, candidate, isolationLevel, lockMode, resultRowBuildercheckNullCols, clonedExecRow, cncLen, resultSetNumber, targetResultSetactivation, beginTime, closeTime, compactRow, constructorTime, currentRow, endExecutionTime, finished, isOpen, isTopResultSet, nextTime, numOpens, openTime, optimizerEstimatedCost, optimizerEstimatedRowCount, resultDescription, rowsFiltered, rowsSeen, startExecutionTime, subqueryTrackingArrayCURRENT_RESULTSET_ONLY, ENTIRE_RESULTSET_TREE, ISAFTERLAST, ISBEFOREFIRST, ISFIRST, ISLAST| Constructor and Description |
|---|
TableScanResultSet(long conglomId,
StaticCompiledOpenConglomInfo scoci,
Activation activation,
int resultRowTemplate,
int resultSetNumber,
GeneratedMethod startKeyGetter,
int startSearchOperator,
GeneratedMethod stopKeyGetter,
int stopSearchOperator,
boolean sameStartStopPosition,
Qualifier[][] qualifiers,
java.lang.String tableName,
java.lang.String userSuppliedOptimizerOverrides,
java.lang.String indexName,
boolean isConstraint,
boolean forUpdate,
int colRefItem,
int indexColItem,
int lockMode,
boolean tableLocked,
int isolationLevel,
int rowsPerRead,
boolean oneRowScan,
double optimizerEstimatedRowCount,
double optimizerEstimatedCost) |
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
canGetInstantaneousLocks()
Can we get instantaneous locks when getting share row
locks at READ COMMITTED.
|
java.lang.Object |
clone()
Shallow clone this result set.
|
void |
close()
If the result set has been opened,
close the open scan.
|
ExecRow |
getCurrentRow()
This result set has its row from the last fetch done.
|
ExecRow |
getNextRowCore()
Return the next row (if any) from the scan (if open).
|
RowLocation |
getRowLocation()
This result set has its row location from
the last fetch done.
|
java.util.Properties |
getScanProperties() |
long |
getTimeSpent(int type)
Return the total amount of time spent in this ResultSet
|
(package private) void |
initStartAndStopKey()
Initialize the
startPosition and stopPosition fields
which are used to limit the rows returned by the scan. |
boolean |
isForUpdate()
Is this ResultSet or it's source result set for update
|
void |
openCore()
open a scan on the table. scan parameters are evaluated
at each open, so there is probably some way of altering
their values...
|
protected void |
openScanController(TransactionController tc) |
void |
positionScanAtRowLocation(RowLocation rl)
Positions the cursor in the specified rowLocation.
|
private java.lang.String |
printPosition(int searchOperator,
GeneratedMethod positionGetter,
ExecIndexRow positioner)
Return a start or stop positioner as a String.
|
java.lang.String |
printStartPosition()
Print an array of Qualifiers to the trace stream.
|
java.lang.String |
printStopPosition() |
void |
reopenCore()
Reopen a table scan.
|
protected void |
reopenScanController() |
boolean |
requiresRelocking()
Do we need to relock the row when going to the heap.
|
protected void |
setRowCountIfPossible(long rowsThisScan)
Update the number of rows in the scan controller.
|
getScanIsolationLevel, initIsolationLevelclearCurrentRow, clearOrderableCache, closeRowSource, getCursorName, getNextRowFromRowSource, getResultDescription, getValidColumns, markRowAsDeleted, needsRowLocation, needsToClone, printQualifiers, resultSetNumber, rowLocation, setCurrentRow, setNeedsRowLocation, setTargetResultSet, skipRow, skipScan, updateRowaddWarning, 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, isXplainOnlyMode, markAsTopResultSet, modifiedRowCount, open, recordConstructorTime, returnsRows, setAfterLastRow, setBeforeFirstRow, setCompactRow, setCompatRowequals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaddWarning, 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, setBeforeFirstRowprotected ScanController scanController
protected boolean scanControllerOpened
protected boolean isKeyed
protected boolean firstScan
protected ExecIndexRow startPosition
protected ExecIndexRow stopPosition
protected long conglomId
protected DynamicCompiledOpenConglomInfo dcoci
protected StaticCompiledOpenConglomInfo scoci
protected GeneratedMethod startKeyGetter
protected int startSearchOperator
protected GeneratedMethod stopKeyGetter
protected int stopSearchOperator
public Qualifier[][] qualifiers
public java.lang.String tableName
public java.lang.String userSuppliedOptimizerOverrides
public java.lang.String indexName
protected boolean runTimeStatisticsOn
protected int[] indexCols
public int rowsPerRead
public boolean forUpdate
final boolean sameStartStopPosition
private boolean nextDone
private RowLocation rlTemplate
private java.util.Properties scanProperties
public java.lang.String startPositionString
public java.lang.String stopPositionString
public boolean isConstraint
public boolean coarserLock
public boolean oneRowScan
protected long rowsThisScan
private long estimatedRowCount
protected BackingStoreHashtable past2FutureTbl
private boolean qualify
private boolean currentRowIsValid
private boolean scanRepositioned
TableScanResultSet(long conglomId,
StaticCompiledOpenConglomInfo scoci,
Activation activation,
int resultRowTemplate,
int resultSetNumber,
GeneratedMethod startKeyGetter,
int startSearchOperator,
GeneratedMethod stopKeyGetter,
int stopSearchOperator,
boolean sameStartStopPosition,
Qualifier[][] qualifiers,
java.lang.String tableName,
java.lang.String userSuppliedOptimizerOverrides,
java.lang.String indexName,
boolean isConstraint,
boolean forUpdate,
int colRefItem,
int indexColItem,
int lockMode,
boolean tableLocked,
int isolationLevel,
int rowsPerRead,
boolean oneRowScan,
double optimizerEstimatedRowCount,
double optimizerEstimatedCost)
throws StandardException
StandardExceptionpublic void openCore()
throws StandardException
openCore in interface NoPutResultSetStandardException - thrown on failure to openvoid initStartAndStopKey()
throws StandardException
startPosition and stopPosition fields
which are used to limit the rows returned by the scan.StandardExceptionprotected void openScanController(TransactionController tc) throws StandardException
StandardExceptionprotected void reopenScanController()
throws StandardException
StandardExceptionpublic void reopenCore()
throws StandardException
reopenCore in interface NoPutResultSetreopenCore in class BasicNoPutResultSetImplStandardException - thrown on failure to openNoPutResultSet.openCore()public ExecRow getNextRowCore() throws StandardException
getNextRowCore in interface NoPutResultSetgetNextRowCore in class BasicNoPutResultSetImplStandardException - thrown on failure to get next rowNoPutResultSet.getNextRowCore()public void close()
throws StandardException
close in interface ResultSetclose in class ScanResultSetStandardException - on errorpublic long getTimeSpent(int type)
getTimeSpent in interface ResultSettype - CURRENT_RESULTSET_ONLY - time spent only in this ResultSet
ENTIRE_RESULTSET_TREE - time spent in this ResultSet and below.public RowLocation getRowLocation() throws StandardException
getRowLocation in interface CursorResultSetStandardException - thrown on failure to get row locationCursorResultSetpublic ExecRow getCurrentRow() throws StandardException
getCurrentRow in interface CursorResultSetStandardException - thrown on failure.CursorResultSetpublic void positionScanAtRowLocation(RowLocation rl) throws StandardException
NoPutResultSetpositionScanAtRowLocation in interface NoPutResultSetpositionScanAtRowLocation in class NoPutResultSetImplrl - row location of the current cursor rowStandardException - thrown on failure to
get location from storage engineAlso sets qualify to false so that later calls to getCurrentRow
will not attempt to re-qualify the current row.public java.lang.String printStartPosition()
public java.lang.String printStopPosition()
private java.lang.String printPosition(int searchOperator,
GeneratedMethod positionGetter,
ExecIndexRow positioner)
public java.util.Properties getScanProperties()
public boolean requiresRelocking()
NoPutResultSetrequiresRelocking in interface NoPutResultSetrequiresRelocking in class BasicNoPutResultSetImplNoPutResultSet.requiresRelocking()protected final void setRowCountIfPossible(long rowsThisScan)
throws StandardException
rowsThisScan - The number of rows to update the scanController toStandardException - Thrown on errorprotected boolean canGetInstantaneousLocks()
canGetInstantaneousLocks in class ScanResultSetpublic boolean isForUpdate()
isForUpdate in interface NoPutResultSetisForUpdate in class NoPutResultSetImplpublic java.lang.Object clone()
clone in class java.lang.ObjectApache Derby V10.10 Internals - Copyright © 2004,2014 The Apache Software Foundation. All Rights Reserved.