Top Description Fields Constructors Methods
org.hsqldb.persist

public abstract Class RowStoreAVL

extends Object
implements PersistentStore
Class Inheritance
All Implemented Interfaces
org.hsqldb.persist.PersistentStore
Known Direct Subclasses
org.hsqldb.persist.RowStoreAVLDisk, org.hsqldb.persist.RowStoreAVLDiskData, org.hsqldb.persist.RowStoreAVLHybrid, org.hsqldb.persist.RowStoreAVLMemory
Imports
java.util.concurrent.atomic.AtomicLong, java.util.concurrent.locks.Lock, .ReadWriteLock, org.hsqldb.ColumnSchema, .Database, .HsqlException, .OpTypes, .Row, .RowAVL, .RowAction, .Session, .Table, .TableBase, org.hsqldb.error.Error, .ErrorCode, org.hsqldb.index.Index, .IndexAVL, .IndexAVLCheck.IndexAVLProbe, .IndexStats, .NodeAVL, org.hsqldb.lib.ArrayUtil, .LongKeyHashMap, org.hsqldb.navigator.RowIterator, org.hsqldb.rowio.RowInputInterface, org.hsqldb.types.LobData, .Type

Base implementation of PersistentStore for different table types.
Author
Fred Toussi (fredt@users dot sourceforge.net)
Since
1.9.0
Version
2.7.3

Field Summary

Modifier and TypeField and Description
pack-priv CachedObject[]
pack-priv long
pack-priv Database
pack-priv AtomicLong
pack-priv Index[]
pack-priv boolean
pack-priv ReadWriteLock
pack-priv boolean[]
pack-priv Lock
public LongKeyHashMap<RowAction>
pack-priv double[][]
pack-priv long
pack-priv PersistentStore[]
pack-priv TableBase
pack-priv TableSpaceManager
private long
pack-priv Lock

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public abstract void
add(Session session, CachedObject object, boolean tx)

Redeclares org.hsqldb.persist.PersistentStore.add.

public final void
add(CachedObject object, boolean keep)

Implements org.hsqldb.persist.PersistentStore.add.

add new object

public RowAction
addDeleteActionToRow(Session session, Row row, int[] colMap, boolean isMV)

Implements org.hsqldb.persist.PersistentStore.addDeleteActionToRow.

public boolean
canRead(Session session, long pos, int mode, int[] colMap)

Implements org.hsqldb.persist.PersistentStore.canRead.

public boolean
canRead(Session session, CachedObject object, int mode, int[] colMap)

Implements org.hsqldb.persist.PersistentStore.canRead.

public IndexStats[]
checkIndexes(Session session, int mode)

public abstract void
public abstract void
commitRow(Session session, Row row, int changeAction, int txModel)

Redeclares org.hsqldb.persist.PersistentStore.commitRow.

public int
compare(Session session, long key)

public void
delete(Session session, Row row)

Implements org.hsqldb.persist.PersistentStore.delete.

Basic delete with no logging or referential checks.

pack-priv void
destroyIndexes()

Used with memory indexes

pack-priv void
dropIndexFromRows(Index primaryIndex, Index oldIndex)

public long
public long
public long
public abstract CachedObject
get(long key, boolean keep)

Redeclares org.hsqldb.persist.PersistentStore.get.

get object with keep, ensuring future gets will return the same instance of the object

public abstract CachedObject
get(CachedObject object, boolean keep)

Redeclares org.hsqldb.persist.PersistentStore.get.

public abstract CachedObject
public CachedObject
public CachedObject
public Index[]
public PersistentStore
public abstract DataFileCache
public int
public abstract CachedObject
public CachedObject
public TableSpaceManager
public TableBase
public long
public boolean
public void
public final void
pack-priv boolean
insertIndexNodes(Session session, Index primaryIndex, Index newIndex)

public abstract boolean
public boolean
public boolean
public final void
moveData(Session session, PersistentStore other, int[] colIndex, int adjust)

Implements org.hsqldb.persist.PersistentStore.moveData.

Moves the data from an old store to new after changes to table The colIndex argument is the indexes of the columns that were removed, type modified or added.

public abstract void
public void
public void
public void
public abstract void
public abstract void
remove(CachedObject object)

Redeclares org.hsqldb.persist.PersistentStore.remove.

remove both persisted and cached copies

public abstract void
public void
public abstract void
rollbackRow(Session session, Row row, int changeAction, int txModel)

Redeclares org.hsqldb.persist.PersistentStore.rollbackRow.

public RowIterator
public double
searchCost(Session session, Index index, int count, int opType)

Implements org.hsqldb.persist.PersistentStore.searchCost.

public void
public void
public void
setAccessors(long base, long[] accessors, long cardinality)

Implements org.hsqldb.persist.PersistentStore.setAccessors.

public abstract void
pack-priv final void
setElementCount(long size)

public void
public void
public void
public void
public void
public void
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

accessorListback to summary
pack-priv CachedObject[] accessorList
baseElementCountback to summary
pack-priv long baseElementCount
databaseback to summary
pack-priv Database database
elementCountback to summary
pack-priv AtomicLong elementCount
indexListback to summary
pack-priv Index[] indexList
isSchemaStoreback to summary
pack-priv boolean isSchemaStore
lockback to summary
pack-priv ReadWriteLock lock
nullsListback to summary
pack-priv boolean[] nullsList
readLockback to summary
pack-priv Lock readLock
rowActionMapback to summary
public LongKeyHashMap<RowAction> rowActionMap
searchCostback to summary
pack-priv double[][] searchCost
storageSizeback to summary
pack-priv long storageSize
subStoresback to summary
pack-priv PersistentStore[] subStores
tableback to summary
pack-priv TableBase table
tableSpaceback to summary
pack-priv TableSpaceManager tableSpace
timestampback to summary
private long timestamp
writeLockback to summary
pack-priv Lock writeLock

Constructor Detail

RowStoreAVLback to summary
public RowStoreAVL()

Method Detail

addback to summary
public abstract void add(Session session, CachedObject object, boolean tx)

Redeclares org.hsqldb.persist.PersistentStore.add.

addback to summary
public final void add(CachedObject object, boolean keep)

Implements org.hsqldb.persist.PersistentStore.add.

Doc from org.hsqldb.persist.PersistentStore.add.

add new object

addDeleteActionToRowback to summary
public RowAction addDeleteActionToRow(Session session, Row row, int[] colMap, boolean isMV)

Implements org.hsqldb.persist.PersistentStore.addDeleteActionToRow.

canReadback to summary
public boolean canRead(Session session, long pos, int mode, int[] colMap)

Implements org.hsqldb.persist.PersistentStore.canRead.

canReadback to summary
public boolean canRead(Session session, CachedObject object, int mode, int[] colMap)

Implements org.hsqldb.persist.PersistentStore.canRead.

checkIndexesback to summary
public IndexStats[] checkIndexes(Session session, int mode)
commitPersistenceback to summary
public abstract void commitPersistence(CachedObject object)

Redeclares org.hsqldb.persist.PersistentStore.commitPersistence.

Doc from org.hsqldb.persist.PersistentStore.commitPersistence.

commit persisted image

commitRowback to summary
public abstract void commitRow(Session session, Row row, int changeAction, int txModel)

Redeclares org.hsqldb.persist.PersistentStore.commitRow.

compareback to summary
public int compare(Session session, long key)
deleteback to summary
public void delete(Session session, Row row)

Implements org.hsqldb.persist.PersistentStore.delete.

Basic delete with no logging or referential checks.

destroyIndexesback to summary
pack-priv void destroyIndexes()

Used with memory indexes

dropIndexFromRowsback to summary
pack-priv void dropIndexFromRows(Index primaryIndex, Index oldIndex)
elementCountback to summary
public long elementCount()

Implements org.hsqldb.persist.PersistentStore.elementCount.

elementCountback to summary
public long elementCount(Session session)

Implements org.hsqldb.persist.PersistentStore.elementCount.

elementCountUniqueback to summary
public long elementCountUnique(Index index)

Implements org.hsqldb.persist.PersistentStore.elementCountUnique.

getback to summary
public abstract CachedObject get(long key, boolean keep)

Redeclares org.hsqldb.persist.PersistentStore.get.

Doc from org.hsqldb.persist.PersistentStore.get.

get object with keep, ensuring future gets will return the same instance of the object

getback to summary
public abstract CachedObject get(CachedObject object, boolean keep)

Redeclares org.hsqldb.persist.PersistentStore.get.

getback to summary
public abstract CachedObject get(RowInputInterface in)

Redeclares org.hsqldb.persist.PersistentStore.get.

getback to summary
public CachedObject get(CachedObject object, RowInputInterface in)

Implements org.hsqldb.persist.PersistentStore.get.

getAccessorback to summary
public CachedObject getAccessor(Index key)

Implements org.hsqldb.persist.PersistentStore.getAccessor.

getAccessorKeysback to summary
public Index[] getAccessorKeys()

Implements org.hsqldb.persist.PersistentStore.getAccessorKeys.

getAccessorStoreback to summary
public PersistentStore getAccessorStore(Index index)

Implements org.hsqldb.persist.PersistentStore.getAccessorStore.

getCacheback to summary
public abstract DataFileCache getCache()

Redeclares org.hsqldb.persist.PersistentStore.getCache.

getDefaultObjectSizeback to summary
public int getDefaultObjectSize()

Implements org.hsqldb.persist.PersistentStore.getDefaultObjectSize.

getNewCachedObjectback to summary
public abstract CachedObject getNewCachedObject(Session session, Object object, boolean tx)

Redeclares org.hsqldb.persist.PersistentStore.getNewCachedObject.

getNewInstanceback to summary
public CachedObject getNewInstance(int size)

Implements org.hsqldb.persist.PersistentStore.getNewInstance.

getSpaceManagerback to summary
public TableSpaceManager getSpaceManager()

Implements org.hsqldb.persist.PersistentStore.getSpaceManager.

getTableback to summary
public TableBase getTable()

Implements org.hsqldb.persist.PersistentStore.getTable.

getTimestampback to summary
public long getTimestamp()

Implements org.hsqldb.persist.PersistentStore.getTimestamp.

hasNullback to summary
public boolean hasNull(int pos)

Implements org.hsqldb.persist.PersistentStore.hasNull.

indexRowback to summary
public void indexRow(Session session, Row row)

Implements org.hsqldb.persist.PersistentStore.indexRow.

indexRowsback to summary
public final void indexRows(Session session)

Implements org.hsqldb.persist.PersistentStore.indexRows.

insertIndexNodesback to summary
pack-priv boolean insertIndexNodes(Session session, Index primaryIndex, Index newIndex)
isMemoryback to summary
public abstract boolean isMemory()

Redeclares org.hsqldb.persist.PersistentStore.isMemory.

isRowSetback to summary
public boolean isRowSet()
isRowStoreback to summary
public boolean isRowStore()

Implements org.hsqldb.persist.PersistentStore.isRowStore.

moveDataback to summary
public final void moveData(Session session, PersistentStore other, int[] colIndex, int adjust)

Implements org.hsqldb.persist.PersistentStore.moveData.

Moves the data from an old store to new after changes to table The colIndex argument is the indexes of the columns that were removed, type modified or added. The adjust argument is {-1 | 0 | +1}.

postCommitActionback to summary
public abstract void postCommitAction(Session session, RowAction action)

Redeclares org.hsqldb.persist.PersistentStore.postCommitAction.

readLockback to summary
public void readLock()

Implements org.hsqldb.persist.PersistentStore.readLock.

readUnlockback to summary
public void readUnlock()

Implements org.hsqldb.persist.PersistentStore.readUnlock.

reindexback to summary
public void reindex(Session session, Index index, Index useIndex)

Implements org.hsqldb.persist.PersistentStore.reindex.

releaseback to summary
public abstract void release()

Redeclares org.hsqldb.persist.PersistentStore.release.

removeback to summary
public abstract void remove(CachedObject object)

Redeclares org.hsqldb.persist.PersistentStore.remove.

Doc from org.hsqldb.persist.PersistentStore.remove.

remove both persisted and cached copies

removeAllback to summary
public abstract void removeAll()

Redeclares org.hsqldb.persist.PersistentStore.removeAll.

resetAccessorKeysback to summary
public void resetAccessorKeys(Session session, Index[] keys)

Implements org.hsqldb.persist.PersistentStore.resetAccessorKeys.

rollbackRowback to summary
public abstract void rollbackRow(Session session, Row row, int changeAction, int txModel)

Redeclares org.hsqldb.persist.PersistentStore.rollbackRow.

rowIteratorback to summary
public RowIterator rowIterator()

Implements org.hsqldb.persist.PersistentStore.rowIterator.

searchCostback to summary
public double searchCost(Session session, Index index, int count, int opType)

Implements org.hsqldb.persist.PersistentStore.searchCost.

setAccessorback to summary
public void setAccessor(Index key, CachedObject accessor)

Implements org.hsqldb.persist.PersistentStore.setAccessor.

setAccessorback to summary
public void setAccessor(Index key, long accessor)

Implements org.hsqldb.persist.PersistentStore.setAccessor.

setAccessorsback to summary
public void setAccessors(long base, long[] accessors, long cardinality)

Implements org.hsqldb.persist.PersistentStore.setAccessors.

setCacheback to summary
public abstract void setCache(DataFileCache cache)

Redeclares org.hsqldb.persist.PersistentStore.setCache.

setElementCountback to summary
pack-priv final void setElementCount(long size)
setMemoryback to summary
public void setMemory(boolean mode)

Implements org.hsqldb.persist.PersistentStore.setMemory.

setReadOnlyback to summary
public void setReadOnly(boolean readOnly)

Implements org.hsqldb.persist.PersistentStore.setReadOnly.

setSpaceManagerback to summary
public void setSpaceManager(TableSpaceManager manager)

Implements org.hsqldb.persist.PersistentStore.setSpaceManager.

setTimestampback to summary
public void setTimestamp(long timestamp)

Implements org.hsqldb.persist.PersistentStore.setTimestamp.

writeLockback to summary
public void writeLock()

Implements org.hsqldb.persist.PersistentStore.writeLock.

writeUnlockback to summary
public void writeUnlock()

Implements org.hsqldb.persist.PersistentStore.writeUnlock.