Class H2ScanIndex<D extends org.h2.index.BaseIndex>
- java.lang.Object
-
- org.h2.engine.DbObjectBase
-
- org.h2.schema.SchemaObjectBase
-
- org.h2.index.BaseIndex
-
- org.apache.ignite.internal.processors.query.h2.opt.H2ScanIndex<D>
-
- All Implemented Interfaces:
org.h2.engine.DbObject,org.h2.index.Index,org.h2.schema.SchemaObject
- Direct Known Subclasses:
H2TableScanIndex
public class H2ScanIndex<D extends org.h2.index.BaseIndex> extends org.h2.index.BaseIndexScan index. Do not actually store any information, but rather delegate to some underlying index. The only reason why this index exists is H2 requirement that every table must have the very first index withIndexType.isScan()set totrue. SeeTYPE.
-
-
Constructor Summary
Constructors Constructor Description H2ScanIndex(D delegate)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadd(org.h2.engine.Session ses, org.h2.result.Row row)booleancanFindNext()booleancanGetFirstOrLast()booleancanScan()voidcheckRename()voidclose(org.h2.engine.Session ses)voidcommit(int operation, org.h2.result.Row row)intcompareRows(org.h2.result.SearchRow rowData, org.h2.result.SearchRow compare)org.h2.index.IndexLookupBatchcreateLookupBatch(org.h2.table.TableFilter[] filters, int filter)protected Ddelegate()org.h2.index.Cursorfind(org.h2.engine.Session ses, org.h2.result.SearchRow first, org.h2.result.SearchRow last)org.h2.index.Cursorfind(org.h2.table.TableFilter filter, org.h2.result.SearchRow first, org.h2.result.SearchRow last)org.h2.index.CursorfindFirstOrLast(org.h2.engine.Session ses, boolean first)org.h2.index.CursorfindNext(org.h2.engine.Session ses, org.h2.result.SearchRow higherThan, org.h2.result.SearchRow last)ArrayList<org.h2.engine.DbObject>getChildren()intgetColumnIndex(org.h2.table.Column col)org.h2.table.Column[]getColumns()StringgetComment()doublegetCost(org.h2.engine.Session session, int[] masks, org.h2.table.TableFilter[] filters, int filter, org.h2.result.SortOrder sortOrder, HashSet<org.h2.table.Column> allColumnsSet)StringgetCreateSQL()StringgetCreateSQLForCopy(org.h2.table.Table tbl, String quotedName)org.h2.engine.DatabasegetDatabase()longgetDiskSpaceUsed()StringgetDropSQL()intgetId()org.h2.table.IndexColumn[]getIndexColumns()org.h2.index.IndexTypegetIndexType()org.h2.result.RowgetRow(org.h2.engine.Session ses, long key)longgetRowCount(org.h2.engine.Session ses)longgetRowCountApproximation()org.h2.schema.SchemagetSchema()StringgetSQL()org.h2.table.TablegetTable()intgetType()booleanisHidden()booleanisRowIdIndex()booleanisTemporary()booleanneedRebuild()voidremove(org.h2.engine.Session ses)voidremove(org.h2.engine.Session ses, org.h2.result.Row row)voidremoveChildrenAndResources(org.h2.engine.Session ses)voidrename(String newName)voidsetComment(String comment)voidsetSortedInsertMode(boolean sortedInsertMode)voidsetTemporary(boolean temporary)voidtruncate(org.h2.engine.Session ses)-
Methods inherited from class org.h2.index.BaseIndex
checkIndexColumnTypes, getCostRangeIndex, getDuplicateKeyException, getPlanSQL, initBaseIndex, isFindUsingFullTableScan, isFirstColumn, mayHaveNullDuplicates
-
Methods inherited from class org.h2.engine.DbObjectBase
getModificationId, getName, initDbObjectBase, invalidate, isValid, setModified, setObjectName, toString
-
-
-
-
Constructor Detail
-
H2ScanIndex
public H2ScanIndex(D delegate)
- Parameters:
delegate- Delegate.
-
-
Method Detail
-
delegate
protected D delegate()
- Returns:
- Delegate.
-
getDiskSpaceUsed
public long getDiskSpaceUsed()
-
add
public void add(org.h2.engine.Session ses, org.h2.result.Row row)
-
canFindNext
public boolean canFindNext()
- Specified by:
canFindNextin interfaceorg.h2.index.Index- Overrides:
canFindNextin classorg.h2.index.BaseIndex
-
canGetFirstOrLast
public boolean canGetFirstOrLast()
-
canScan
public boolean canScan()
- Specified by:
canScanin interfaceorg.h2.index.Index- Overrides:
canScanin classorg.h2.index.BaseIndex
-
close
public final void close(org.h2.engine.Session ses)
-
commit
public void commit(int operation, org.h2.result.Row row)- Specified by:
commitin interfaceorg.h2.index.Index- Overrides:
commitin classorg.h2.index.BaseIndex
-
compareRows
public int compareRows(org.h2.result.SearchRow rowData, org.h2.result.SearchRow compare)- Specified by:
compareRowsin interfaceorg.h2.index.Index- Overrides:
compareRowsin classorg.h2.index.BaseIndex
-
find
public org.h2.index.Cursor find(org.h2.table.TableFilter filter, org.h2.result.SearchRow first, org.h2.result.SearchRow last)- Specified by:
findin interfaceorg.h2.index.Index- Overrides:
findin classorg.h2.index.BaseIndex
-
find
public org.h2.index.Cursor find(org.h2.engine.Session ses, org.h2.result.SearchRow first, org.h2.result.SearchRow last)
-
findFirstOrLast
public org.h2.index.Cursor findFirstOrLast(org.h2.engine.Session ses, boolean first)
-
findNext
public org.h2.index.Cursor findNext(org.h2.engine.Session ses, org.h2.result.SearchRow higherThan, org.h2.result.SearchRow last)- Specified by:
findNextin interfaceorg.h2.index.Index- Overrides:
findNextin classorg.h2.index.BaseIndex
-
getColumnIndex
public int getColumnIndex(org.h2.table.Column col)
- Specified by:
getColumnIndexin interfaceorg.h2.index.Index- Overrides:
getColumnIndexin classorg.h2.index.BaseIndex
-
getColumns
public org.h2.table.Column[] getColumns()
- Specified by:
getColumnsin interfaceorg.h2.index.Index- Overrides:
getColumnsin classorg.h2.index.BaseIndex
-
getIndexColumns
public org.h2.table.IndexColumn[] getIndexColumns()
- Specified by:
getIndexColumnsin interfaceorg.h2.index.Index- Overrides:
getIndexColumnsin classorg.h2.index.BaseIndex
-
getIndexType
public org.h2.index.IndexType getIndexType()
- Specified by:
getIndexTypein interfaceorg.h2.index.Index- Overrides:
getIndexTypein classorg.h2.index.BaseIndex
-
getRow
public org.h2.result.Row getRow(org.h2.engine.Session ses, long key)- Specified by:
getRowin interfaceorg.h2.index.Index- Overrides:
getRowin classorg.h2.index.BaseIndex
-
getRowCount
public long getRowCount(org.h2.engine.Session ses)
-
getRowCountApproximation
public long getRowCountApproximation()
-
getTable
public org.h2.table.Table getTable()
- Specified by:
getTablein interfaceorg.h2.index.Index- Overrides:
getTablein classorg.h2.index.BaseIndex
-
isRowIdIndex
public boolean isRowIdIndex()
- Specified by:
isRowIdIndexin interfaceorg.h2.index.Index- Overrides:
isRowIdIndexin classorg.h2.index.BaseIndex
-
needRebuild
public boolean needRebuild()
-
remove
public void remove(org.h2.engine.Session ses)
-
remove
public void remove(org.h2.engine.Session ses, org.h2.result.Row row)
-
setSortedInsertMode
public void setSortedInsertMode(boolean sortedInsertMode)
- Specified by:
setSortedInsertModein interfaceorg.h2.index.Index- Overrides:
setSortedInsertModein classorg.h2.index.BaseIndex
-
createLookupBatch
public org.h2.index.IndexLookupBatch createLookupBatch(org.h2.table.TableFilter[] filters, int filter)- Specified by:
createLookupBatchin interfaceorg.h2.index.Index- Overrides:
createLookupBatchin classorg.h2.index.BaseIndex
-
truncate
public void truncate(org.h2.engine.Session ses)
-
getSchema
public org.h2.schema.Schema getSchema()
- Specified by:
getSchemain interfaceorg.h2.schema.SchemaObject- Overrides:
getSchemain classorg.h2.schema.SchemaObjectBase
-
isHidden
public boolean isHidden()
- Specified by:
isHiddenin interfaceorg.h2.schema.SchemaObject- Overrides:
isHiddenin classorg.h2.index.BaseIndex
-
checkRename
public void checkRename()
- Specified by:
checkRenamein interfaceorg.h2.engine.DbObject- Specified by:
checkRenamein classorg.h2.engine.DbObjectBase
-
getChildren
public ArrayList<org.h2.engine.DbObject> getChildren()
- Specified by:
getChildrenin interfaceorg.h2.engine.DbObject- Overrides:
getChildrenin classorg.h2.engine.DbObjectBase
-
getComment
public String getComment()
- Specified by:
getCommentin interfaceorg.h2.engine.DbObject- Overrides:
getCommentin classorg.h2.engine.DbObjectBase
-
getCreateSQL
public String getCreateSQL()
- Specified by:
getCreateSQLin interfaceorg.h2.engine.DbObject- Overrides:
getCreateSQLin classorg.h2.index.BaseIndex
-
getCreateSQLForCopy
public String getCreateSQLForCopy(org.h2.table.Table tbl, String quotedName)
- Specified by:
getCreateSQLForCopyin interfaceorg.h2.engine.DbObject- Overrides:
getCreateSQLForCopyin classorg.h2.index.BaseIndex
-
getDatabase
public org.h2.engine.Database getDatabase()
- Specified by:
getDatabasein interfaceorg.h2.engine.DbObject- Overrides:
getDatabasein classorg.h2.engine.DbObjectBase
-
getDropSQL
public String getDropSQL()
- Specified by:
getDropSQLin interfaceorg.h2.engine.DbObject- Overrides:
getDropSQLin classorg.h2.index.BaseIndex
-
getId
public int getId()
- Specified by:
getIdin interfaceorg.h2.engine.DbObject- Overrides:
getIdin classorg.h2.engine.DbObjectBase
-
getSQL
public String getSQL()
- Specified by:
getSQLin interfaceorg.h2.engine.DbObject- Overrides:
getSQLin classorg.h2.schema.SchemaObjectBase
-
getType
public int getType()
- Specified by:
getTypein interfaceorg.h2.engine.DbObject- Overrides:
getTypein classorg.h2.index.BaseIndex
-
isTemporary
public boolean isTemporary()
- Specified by:
isTemporaryin interfaceorg.h2.engine.DbObject- Overrides:
isTemporaryin classorg.h2.engine.DbObjectBase
-
removeChildrenAndResources
public void removeChildrenAndResources(org.h2.engine.Session ses)
- Specified by:
removeChildrenAndResourcesin interfaceorg.h2.engine.DbObject- Overrides:
removeChildrenAndResourcesin classorg.h2.index.BaseIndex
-
rename
public void rename(String newName)
- Specified by:
renamein interfaceorg.h2.engine.DbObject- Overrides:
renamein classorg.h2.engine.DbObjectBase
-
setComment
public void setComment(String comment)
- Specified by:
setCommentin interfaceorg.h2.engine.DbObject- Overrides:
setCommentin classorg.h2.engine.DbObjectBase
-
setTemporary
public void setTemporary(boolean temporary)
- Specified by:
setTemporaryin interfaceorg.h2.engine.DbObject- Overrides:
setTemporaryin classorg.h2.engine.DbObjectBase
-
getCost
public double getCost(org.h2.engine.Session session, int[] masks, org.h2.table.TableFilter[] filters, int filter, org.h2.result.SortOrder sortOrder, HashSet<org.h2.table.Column> allColumnsSet)
-
-