|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.h2.engine.DbObjectBase
org.h2.schema.SchemaObjectBase
org.h2.index.BaseIndex
org.h2.index.HashIndex
public class HashIndex
An unique index based on an in-memory hash map.
Field Summary |
---|
Fields inherited from class org.h2.index.BaseIndex |
---|
columnIds, columns, indexColumns, indexType, isMultiVersion, table |
Fields inherited from class org.h2.engine.DbObjectBase |
---|
comment, database, trace |
Fields inherited from interface org.h2.engine.DbObject |
---|
AGGREGATE, COMMENT, CONSTANT, CONSTRAINT, FUNCTION_ALIAS, INDEX, RIGHT, ROLE, SCHEMA, SEQUENCE, SETTING, TABLE_OR_VIEW, TRIGGER, USER, USER_DATATYPE |
Constructor Summary | |
---|---|
HashIndex(RegularTable table,
int id,
java.lang.String indexName,
IndexColumn[] columns,
IndexType indexType)
|
Method Summary | |
---|---|
void |
add(Session session,
Row row)
Add a row to the index. |
boolean |
canGetFirstOrLast()
Check if the index can directly look up the lowest or highest value of a column. |
boolean |
canScan()
Can this index iterate over all rows? |
void |
checkRename()
Check if this object can be renamed. |
void |
close(Session session)
Close this index. |
Cursor |
find(Session session,
SearchRow first,
SearchRow last)
Find a row or a list of rows and create a cursor to iterate over the result. |
Cursor |
findFirstOrLast(Session session,
boolean first)
Find the first (or last) value of this index. |
double |
getCost(Session session,
int[] masks,
TableFilter filter,
SortOrder sortOrder)
Estimate the cost to search for rows given the search mask. |
long |
getDiskSpaceUsed()
Get the used disk space for this index. |
long |
getRowCount(Session session)
Get the row count of this table, for the given session. |
long |
getRowCountApproximation()
Get the approximated row count for this table. |
boolean |
needRebuild()
Check if the index needs to be rebuilt. |
void |
remove(Session session)
Remove the index. |
void |
remove(Session session,
Row row)
Remove a row from the index. |
void |
truncate(Session session)
Remove all rows from the index. |
Methods inherited from class org.h2.index.BaseIndex |
---|
canFindNext, checkIndexColumnTypes, commit, compareRows, containsNullAndAllowMultipleNull, find, findNext, getColumnIndex, getColumns, getCostRangeIndex, getCreateSQL, getCreateSQLForCopy, getDropSQL, getDuplicateKeyException, getIndexColumns, getIndexType, getPlanSQL, getRow, getTable, getType, initBaseIndex, isHidden, isRowIdIndex, removeChildrenAndResources, setSortedInsertMode |
Methods inherited from class org.h2.schema.SchemaObjectBase |
---|
getSchema, getSQL, initSchemaObjectBase |
Methods inherited from class org.h2.engine.DbObjectBase |
---|
getChildren, getComment, getDatabase, getId, getModificationId, getName, initDbObjectBase, invalidate, isTemporary, rename, setComment, setModified, setObjectName, setTemporary, toString |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.h2.schema.SchemaObject |
---|
getSchema |
Methods inherited from interface org.h2.engine.DbObject |
---|
getChildren, getComment, getDatabase, getId, getName, getSQL, isTemporary, rename, setComment, setTemporary |
Constructor Detail |
---|
public HashIndex(RegularTable table, int id, java.lang.String indexName, IndexColumn[] columns, IndexType indexType)
Method Detail |
---|
public void truncate(Session session)
Index
session
- the sessionpublic void add(Session session, Row row)
Index
session
- the session to userow
- the row to addpublic void remove(Session session, Row row)
Index
session
- the sessionrow
- the rowpublic Cursor find(Session session, SearchRow first, SearchRow last)
Index
session
- the sessionfirst
- the first row, or null for no limitlast
- the last row, or null for no limit
public long getRowCount(Session session)
Index
session
- the session
public long getRowCountApproximation()
Index
public long getDiskSpaceUsed()
Index
public void close(Session session)
Index
session
- the session used to write datapublic void remove(Session session)
Index
session
- the sessionpublic double getCost(Session session, int[] masks, TableFilter filter, SortOrder sortOrder)
Index
session
- the sessionmasks
- per-column comparison bit masks, null means 'always false',
see constants in IndexConditionfilter
- the table filtersortOrder
- the sort order
public void checkRename()
DbObjectBase
checkRename
in interface DbObject
checkRename
in class DbObjectBase
public boolean needRebuild()
Index
public boolean canGetFirstOrLast()
Index
public Cursor findFirstOrLast(Session session, boolean first)
Index
session
- the sessionfirst
- true if the first (lowest for ascending indexes) or last
value should be returned
public boolean canScan()
Index
canScan
in interface Index
canScan
in class BaseIndex
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |