Class TableScanResultSet

All Implemented Interfaces:
Cloneable, CursorResultSet, NoPutResultSet, ResultSet, RowLocationRetRowSource, RowSource
Direct Known Subclasses:
BulkTableScanResultSet, MultiProbeTableScanResultSet, ValidateCheckConstraintResultSet

class TableScanResultSet extends ScanResultSet implements CursorResultSet, Cloneable
Takes a table and a table filter and returns the table's rows satisfying the filter as a result set. There are several things we could do during object construction that are done in the open and next calls, to improve performance.
  • Field Details

    • scanController

      protected ScanController scanController
    • scanControllerOpened

      protected boolean scanControllerOpened
    • isKeyed

      protected boolean isKeyed
    • firstScan

      protected boolean firstScan
    • startPosition

      protected ExecIndexRow startPosition
    • stopPosition

      protected ExecIndexRow stopPosition
    • conglomId

      protected long conglomId
    • dcoci

    • scoci

    • startKeyGetter

      protected GeneratedMethod startKeyGetter
    • startSearchOperator

      protected int startSearchOperator
    • stopKeyGetter

      protected GeneratedMethod stopKeyGetter
    • stopSearchOperator

      protected int stopSearchOperator
    • qualifiers

      public Qualifier[][] qualifiers
    • userSuppliedOptimizerOverrides

      public String userSuppliedOptimizerOverrides
    • runTimeStatisticsOn

      protected boolean runTimeStatisticsOn
    • indexCols

      protected int[] indexCols
    • rowsPerRead

      public int rowsPerRead
    • forUpdate

      public boolean forUpdate
    • sameStartStopPosition

      final boolean sameStartStopPosition
    • nextDone

      protected boolean nextDone
    • rlTemplate

      private RowLocation rlTemplate
    • scanProperties

      private Properties scanProperties
    • startPositionString

      public String startPositionString
    • stopPositionString

      public String stopPositionString
    • isConstraint

      public boolean isConstraint
    • coarserLock

      public boolean coarserLock
    • oneRowScan

      public boolean oneRowScan
    • rowsThisScan

      protected long rowsThisScan
    • estimatedRowCount

      private long estimatedRowCount
    • past2FutureTbl

      protected BackingStoreHashtable past2FutureTbl
      This field is used by beetle 3865, updateable cursor using index. It is a hash table containing updated rows that are thrown into future direction of the index scan, and as a result we'll hit it again but should skip it. The hash table will spill to disk if it grows too big to be kept in memory.
    • qualify

      protected boolean qualify
    • currentRowIsValid

      protected boolean currentRowIsValid
    • scanRepositioned

      protected boolean scanRepositioned
  • Constructor Details

    • TableScanResultSet

      TableScanResultSet(long conglomId, StaticCompiledOpenConglomInfo scoci, Activation activation, int resultRowTemplate, int resultSetNumber, GeneratedMethod startKeyGetter, int startSearchOperator, GeneratedMethod stopKeyGetter, int stopSearchOperator, boolean sameStartStopPosition, Qualifier[][] qualifiers, String tableName, String userSuppliedOptimizerOverrides, 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
      Throws:
      StandardException
  • Method Details