Buggy code:
public class HashScanResultSet extends NoPutResultSetImpl implements CursorResultSet { private boolean hashtableBuilt ; private ExecIndexRow startPosition ; private ExecIndexRow stopPosition ; protected ExecRow candidate ; protected ExecRow compactRow ; protected boolean firstNext = true ; private int numFetchedOnNext ; private int entryVectorSize ; private Vector entryVector ; private long conglomId ; protected StaticCompiledOpenConglomInfo scoci ; private GeneratedMethod resultRowAllocator ; private GeneratedMethod startKeyGetter ; private int startSearchOperator ; private GeneratedMethod stopKeyGetter ; private int stopSearchOperator ; public Qualifier [ ] [ ] scanQualifiers ; public Qualifier [ ] [ ] nextQualifiers ; private int initialCapacity ; private float loadFactor ; private int maxCapacity ; private GeneratedMethod closeCleanup ; public String tableName ; public String indexName ; public boolean forUpdate ; private boolean runTimeStatisticsOn ; private FormatableBitSet accessedCols ; public int isolationLevel ; public int lockMode ; public int [ ] keyColumns ; private boolean sameStartStopPosition ; private boolean skipNullKeyColumns ; protected BackingStoreHashtable hashtable ; protected boolean eliminateDuplicates ; public Properties scanProperties ; public String startPositionString ; public String stopPositionString ; public int hashtableSize ; public boolean isConstraint ; public static final int DEFAULT_INITIAL_CAPACITY = - 1 ; public static final float DEFAULT_LOADFACTOR = ( ( float ) ( - 1.0 ) ) ; public static final int DEFAULT_MAX_CAPACITY = - 1 ; public HashScanResultSet ( long conglomId , StaticCompiledOpenConglomInfo scoci , Activation activation , GeneratedMethod resultRowAllocator , int resultSetNumber , GeneratedMethod startKeyGetter , int startSearchOperator , GeneratedMethod stopKeyGetter , int stopSearchOperator , boolean sameStartStopPosition , Qualifier [ ] [ ] scanQualifiers , Qualifier [ ] [ ] nextQualifiers , int initialCapacity , float loadFactor , int maxCapacity , int hashKeyItem , String tableName , String indexName , boolean isConstraint , boolean forUpdate , int colRefItem , int lockMode , boolean tableLocked , int isolationLevel , boolean skipNullKeyColumns , double optimizerEstimatedRowCount , double optimizerEstimatedCost , GeneratedMethod closeCleanup ) throws StandardException { } public void openCore ( ) throws StandardException { TransactionController tc ; beginTime = getCurrentTimeMillis ( ) ; if ( SanityManager . DEBUG ) SanityManager . ASSERT ( ( ! ( isOpen ) ) , "HashScanResultSet<seq2seq4repair_space>already<seq2seq4repair_space>open" ) ; tc = activation . getTransactionController ( ) ; if ( ( startKeyGetter ) != null ) { startPosition = ( ( ExecIndexRow ) ( startKeyGetter . invoke ( activation ) ) ) ; if ( sameStartStopPosition ) { stopPosition = startPosition ; } } if ( ( stopKeyGetter ) != null ) { stopPosition = ( ( ExecIndexRow ) ( stopKeyGetter . invoke ( activation ) ) ) ; } if ( skipScan ( startPosition , stopPosition ) ) { } else if ( ! ( hashtableBuilt ) ) { DataValueDescriptor [ ] startPositionRow = ( ( startPosition ) == null ) ? null : startPosition . getRowArray ( ) ; DataValueDescriptor [ ] stopPositionRow = ( ( stopPosition ) == null ) ? null : stopPosition . getRowArray ( ) ; <START_BUG> hashtable = tc . createBackingStoreHashtableFromScan ( conglomId , ( forUpdate ? TransactionController . OPENMODE_FORUPDATE : 0 ) , lockMode , isolationLevel , accessedCols , startPositionRow , startSearchOperator , scanQualifiers , stopPositionRow , stopSearchOperator , ( - 1 ) , keyColumns , eliminateDuplicates , ( - 1 ) , ( - 1 ) , initialCapacity , loadFactor , runTimeStatisticsOn , skipNullKeyColumns ) ; <END_BUG> if ( runTimeStatisticsOn ) { hashtableSize = hashtable . size ( ) ; if ( ( scanProperties ) == null ) { scanProperties = new Properties ( ) ; } try { if ( ( hashtable ) != null ) { hashtable . getAllRuntimeStats ( scanProperties ) ; } } catch ( StandardException se ) { } } hashtableBuilt = true ; activation . informOfRowCount ( this , ( ( long ) ( hashtableSize ) ) ) ; } isOpen = true ; resetProbeVariables ( ) ; ( numOpens ) ++ ; openTime += getElapsedMillis ( beginTime ) ; } public void reopenCore ( ) throws StandardException { } private void resetProbeVariables ( ) throws StandardException { } public ExecRow getNextRowCore ( ) throws StandardException { } public void close ( ) throws StandardException { } public long getTimeSpent ( int type ) { } public int getScanIsolationLevel ( ) { } public boolean requiresRelocking ( ) { } public RowLocation getRowLocation ( ) throws StandardException { } public ExecRow getCurrentRow ( ) throws StandardException { } public String printStartPosition ( ) { } public String printStopPosition ( ) { } private String printPosition ( int searchOperator , GeneratedMethod positionGetter , ExecIndexRow eiRow ) { } public Properties getScanProperties ( ) { } public boolean isForUpdate ( ) { } }

Fix:
hashtable = tc . createBackingStoreHashtableFromScan ( conglomId , ( forUpdate ? TransactionController . OPENMODE_FORUPDATE : 0 ) , lockMode , isolationLevel , accessedCols , startPositionRow , startSearchOperator , scanQualifiers , stopPositionRow , stopSearchOperator , ( - 1 ) , keyColumns , eliminateDuplicates , ( - 1 ) , maxCapacity , initialCapacity , loadFactor , runTimeStatisticsOn , skipNullKeyColumns ) ;