public class MVTable extends RegularTable
| Modifier and Type | Field and Description |
|---|---|
static DebuggingThreadLocal<java.util.ArrayList<java.lang.String>> |
EXCLUSIVE_LOCKS
The table names this thread has exclusively locked.
|
static DebuggingThreadLocal<java.util.ArrayList<java.lang.String>> |
SHARED_LOCKS
The tables names this thread has a shared lock on.
|
static DebuggingThreadLocal<java.lang.String> |
WAITING_FOR_LOCK
The table name this thread is waiting to lock.
|
containsLargeObject, lockExclusiveSession, lockSharedSessionscolumns, compareMode, isHidden, TYPE_CACHED, TYPE_MEMORYcomment, database, trace| Constructor and Description |
|---|
MVTable(CreateTableData data,
MVTableEngine.Store store) |
| Modifier and Type | Method and Description |
|---|---|
Index |
addIndex(Session session,
java.lang.String indexName,
int indexId,
IndexColumn[] cols,
IndexType indexType,
boolean create,
java.lang.String indexComment)
Create an index for this table
|
void |
addRow(Session session,
Row row)
Add a row to the table and all indexes.
|
void |
close(Session session)
Close the table object and flush changes.
|
void |
commit()
Mark the transaction as committed, so that the modification counter of
the database is incremented.
|
long |
getDiskSpaceUsed() |
java.util.ArrayList<Index> |
getIndexes()
Get all indexes for this table.
|
java.lang.String |
getMapName() |
long |
getMaxDataModificationId()
Get the last data modification id.
|
Row |
getRow(Session session,
long key)
Get the given row.
|
long |
getRowCount(Session session)
Get the row count for this table.
|
long |
getRowCountApproximation()
Get the approximated row count for this table.
|
Index |
getScanIndex(Session session)
Get the scan index to iterate through all rows.
|
Index |
getUniqueIndex()
Get any unique index for this table if one exists.
|
boolean |
isMVStore() |
boolean |
lock(Session session,
boolean exclusive,
boolean forceLockEvenInMvcc)
Lock the table for the given session.
|
Row |
lockRow(Session session,
Row row)
Locks row, preventing any updated to it, except from the session specified.
|
void |
removeChildrenAndResources(Session session)
Remove all dependent objects and free all resources (files, blocks in
files) of this object.
|
void |
removeRow(Session session,
Row row)
Remove a row from the table and all indexes.
|
void |
truncate(Session session)
Remove all rows from the table and indexes.
|
void |
unlock(Session s)
Release the lock for this session.
|
void |
updateRow(Session session,
Row oldRow,
Row newRow)
Update a row to the table and all indexes.
|
addRowsToIndex, canDrop, canGetRowCount, canTruncate, checkDeadlock, checkRename, checkSupportAlter, getContainsLargeObject, getDeadlockDetails, getRowIdColumn, getTableType, isDeterministic, isLockedExclusively, isLockedExclusivelyBy, sortRows, toStringgetCreateSQL, getDropSQL, getMainIndexColumn, isGlobalTemporaryaddConstraint, addDependencies, addDependentView, addSequence, addSynonym, addTrigger, canReference, checkWritingAllowed, compareValues, createRow, doesColumnExist, dropMultipleColumnsConstraintsAndIndexes, findPrimaryKey, fire, fireAfterRow, fireBeforeRow, fireRow, getBestPlanItem, getCheckForeignKeyConstraints, getChildren, getColumn, getColumn, getColumns, getCompareMode, getConstraints, getCreateSQLForCopy, getDefaultValue, getDependentViews, getIndex, getIndexForColumn, getOnCommitDrop, getOnCommitTruncate, getOnUpdateValue, getPrimaryKey, getScanIndex, getTemplateRow, getTemplateSimpleRow, getType, hasSelectTrigger, isHidden, isPersistData, isPersistIndexes, isQueryComparable, isTableExpression, isView, removeConstraint, removeDependentView, removeIndex, removeIndexOrTransferOwnership, removeSequence, removeSynonym, removeTrigger, rename, renameColumn, setCheckForeignKeyConstraints, setColumns, setHidden, setOnCommitDrop, setOnCommitTruncate, setTableExpression, updateRows, validateConvertUpdateSequencegetSchema, getSQL, getSQLgetComment, getDatabase, getId, getModificationId, getName, invalidate, isTemporary, isValid, setComment, setModified, setObjectName, setTemporaryclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetComment, getDatabase, getId, getName, isTemporary, setComment, setTemporarypublic static final DebuggingThreadLocal<java.lang.String> WAITING_FOR_LOCK
public static final DebuggingThreadLocal<java.util.ArrayList<java.lang.String>> EXCLUSIVE_LOCKS
public static final DebuggingThreadLocal<java.util.ArrayList<java.lang.String>> SHARED_LOCKS
public MVTable(CreateTableData data, MVTableEngine.Store store)
public java.lang.String getMapName()
public boolean lock(Session session, boolean exclusive, boolean forceLockEvenInMvcc)
Tablepublic void unlock(Session s)
Tablepublic void close(Session session)
Tablepublic Row getRow(Session session, long key)
Tablepublic Index addIndex(Session session, java.lang.String indexName, int indexId, IndexColumn[] cols, IndexType indexType, boolean create, java.lang.String indexComment)
Tablepublic void removeRow(Session session, Row row)
Tablepublic void truncate(Session session)
Tablepublic void addRow(Session session, Row row)
Tablepublic void updateRow(Session session, Row oldRow, Row newRow)
Tablepublic Row lockRow(Session session, Row row)
Tablepublic Index getScanIndex(Session session)
TablegetScanIndex in class Tablesession - the sessionpublic Index getUniqueIndex()
TablegetUniqueIndex in class Tablepublic java.util.ArrayList<Index> getIndexes()
TablegetIndexes in class Tablepublic long getMaxDataModificationId()
TablegetMaxDataModificationId in class Tablepublic void removeChildrenAndResources(Session session)
DbObjectBaseremoveChildrenAndResources in interface DbObjectremoveChildrenAndResources in class Tablesession - the sessionpublic long getRowCount(Session session)
TablegetRowCount in class Tablesession - the sessionpublic long getRowCountApproximation()
TablegetRowCountApproximation in class Tablepublic long getDiskSpaceUsed()
getDiskSpaceUsed in class Tablepublic void commit()