| java.lang.Object org.apache.derby.impl.store.access.RAMAccessManager
All known Subclasses: org.apache.derby.impl.store.access.RllRAMAccessManager,
Method Summary | |
public Serviceable | apply(String key, Serializable value, Dictionary p) | public void | backup(String backupDir, boolean wait) | public void | backupAndEnableLogArchiveMode(String backupDir, boolean deleteOnlineArchivedLogFiles, boolean wait) | public void | boot(boolean create, Properties startParams) | abstract protected void | bootLookupSystemLockLevel(TransactionController tc) Query property system to get the System lock level.
This routine will be called during boot after access has booted far
enough, to allow access to the property conglomerate. | public void | checkpoint() | void | conglomCacheAddEntry(long conglomid, Conglomerate conglom) Add a newly created conglomerate to the cache. | Conglomerate | conglomCacheFind(TransactionManager xact_mgr, long conglomid) Find a conglomerate by conglomid in the cache.
Look for a conglomerate given a conglomid. | protected void | conglomCacheInvalidate() Invalide the current Conglomerate Cache.
Abort of certain operations will invalidate the contents of the
cache. | void | conglomCacheRemoveEntry(long conglomid) Remove an entry from the cache. | void | conglomCacheUpdateEntry(long conglomid, Conglomerate new_conglom) Update a conglomerate directory entry.
Update the Conglom column of the Conglomerate Directory. | public void | createFinished() Database creation finished. | public void | disableLogArchiveMode(boolean deleteOnlineArchivedLogFiles) | public MethodFactory | findMethodFactoryByFormat(UUID format) Find an access method that implements a format type. | public MethodFactory | findMethodFactoryByImpl(String impltype) Find an access method that implements an implementation type. | public void | freeze() | public TransactionController | getAndNameTransaction(ContextManager cm, String transName) | protected LockingPolicy | getDefaultLockingPolicy() Return the default locking policy for this access manager. | public LockFactory | getLockFactory() | protected long | getNextConglomId(int factory_type) Return next conglomid to try to add the container with.
The conglomerate number has 2 parts. | RawStoreFactory | getRawStore() | abstract protected int | getSystemLockLevel() Return the locking level of the system.
This routine controls the lowest level of locking enabled for all locks
for all tables accessed through this accessmanager. | public TransactionController | getTransaction(ContextManager cm) | public TransactionInfo[] | getTransactionInfo() | PropertyConglomerate | getTransactionalProperties() | public Object | getXAResourceManager() Return the XAResourceManager associated with this AccessFactory. | public void | init(boolean dbOnly, Dictionary p) | public boolean | isReadOnly() | public Serializable | map(String key, Serializable value, Dictionary p) | public Cacheable | newCacheable(CacheManager cm) | public void | registerAccessMethod(MethodFactory factory) | public Object | startXATransaction(ContextManager cm, int format_id, byte[] global_id, byte[] branch_id) Start a global transaction.
Get a transaction controller with which to manipulate data within
the access manager. | public void | stop() | public void | unfreeze() | public boolean | validate(String key, Serializable value, Dictionary p) | public void | waitForPostCommitToFinishWork() |
conglom_map | protected ConglomerateFactory conglom_map(Code) | | A map of the implementation specific id to conglomerate object.
A map of the implementation specific id to conglomerate object.
The id is encoded into the conglomerate number, and then used to
pick the right implementation of the conglomerate. It is then
up to the conglomerate implementation to retrieve it's stored
representation from disk.
An internal mapping of the encoding of conglomerate identity in the
conglomerate number to the actual conglomerate implementation. Encoding
this means that we can't dynamically add conglomerate implementations
into the system, so when we want to do that this mapping will have to
be more dynamic - but for now store knows exactly what implementations
there are.
|
system_default_locking_policy | LockingPolicy system_default_locking_policy(Code) | | Default locking policy for the entire system.
|
RAMAccessManager | public RAMAccessManager()(Code) | | Constructors for This class:
|
backupAndEnableLogArchiveMode | public void backupAndEnableLogArchiveMode(String backupDir, boolean deleteOnlineArchivedLogFiles, boolean wait) throws StandardException(Code) | | |
bootLookupSystemLockLevel | abstract protected void bootLookupSystemLockLevel(TransactionController tc) throws StandardException(Code) | | Query property system to get the System lock level.
This routine will be called during boot after access has booted far
enough, to allow access to the property conglomerate. This routine
will call the property system and set the value to be returned by
getSystemLockLevel().
exception: StandardException - Standard exception policy. |
conglomCacheAddEntry | void conglomCacheAddEntry(long conglomid, Conglomerate conglom) throws StandardException(Code) | | Add a newly created conglomerate to the cache.
Parameters: conglomid - The conglomid of conglomerate to replace. Parameters: conglom - The Conglom to add. exception: StandardException - Standard exception policy. |
conglomCacheFind | Conglomerate conglomCacheFind(TransactionManager xact_mgr, long conglomid) throws StandardException(Code) | | Find a conglomerate by conglomid in the cache.
Look for a conglomerate given a conglomid. If in cache return it,
otherwise fault in an entry by asking the owning factory to produce
an entry.
The conglomerate object identified by "conglomid". Parameters: conglomid - The conglomerate id of the conglomerate to look up. exception: StandardException - Standard exception policy. |
conglomCacheInvalidate | protected void conglomCacheInvalidate() throws StandardException(Code) | | Invalide the current Conglomerate Cache.
Abort of certain operations will invalidate the contents of the
cache. Longer term we could just invalidate those entries, but
for now just invalidate the whole cache.
exception: StandardException - Standard exception policy. |
conglomCacheRemoveEntry | void conglomCacheRemoveEntry(long conglomid) throws StandardException(Code) | | Remove an entry from the cache.
Parameters: conglomid - The conglomid of conglomerate to replace. exception: StandardException - Standard exception policy. |
conglomCacheUpdateEntry | void conglomCacheUpdateEntry(long conglomid, Conglomerate new_conglom) throws StandardException(Code) | | Update a conglomerate directory entry.
Update the Conglom column of the Conglomerate Directory. The
Conglomerate with id "conglomid" is replaced by "new_conglom".
Parameters: conglomid - The conglomid of conglomerate to replace. Parameters: new_conglom - The new Conglom to update the conglom column to. exception: StandardException - Standard exception policy. |
disableLogArchiveMode | public void disableLogArchiveMode(boolean deleteOnlineArchivedLogFiles) throws StandardException(Code) | | |
getDefaultLockingPolicy | protected LockingPolicy getDefaultLockingPolicy()(Code) | | Return the default locking policy for this access manager.
the default locking policy for this accessmanager. |
getNextConglomId | protected long getNextConglomId(int factory_type) throws StandardException(Code) | | Return next conglomid to try to add the container with.
The conglomerate number has 2 parts. The low 4 bits are used to
encode the factory which "owns" the conglomerate. The high 60 bits
are used as a normal unique id mechanism.
So for example if the next id to assign is 0x54 the following will
be the conglomid:
if a HEAP (factory 0) - 0x540
if a BTREE (factory 1) - 0x541
And the next id assigned will be:
if a HEAP (factory 0) - 0x550
if a BTREE (factory 1) - 0x551
Parameters: factory_type - factory id as gotten from getConglomerateFactoryId() The identifier to be used to open the conglomerate later. exception: StandardException - Standard exception policy. |
getSystemLockLevel | abstract protected int getSystemLockLevel()(Code) | | Return the locking level of the system.
This routine controls the lowest level of locking enabled for all locks
for all tables accessed through this accessmanager. The concrete
implementation may set this value always to table level locking for
a client configuration, or it may set it to row level locking for a
server configuration.
If TransactionController.MODE_RECORD is returned table may either be
locked at table or row locking depending on the type of access expected
(ie. level 3 will require table locking for heap scans.)
TransactionController.MODE_TABLE if only table locking allowed,else returns TransactionController.MODE_RECORD. |
getXAResourceManager | public Object getXAResourceManager() throws StandardException(Code) | | Return the XAResourceManager associated with this AccessFactory.
Returns an object which can be used to implement the "offline"
2 phase commit interaction between the accessfactory and outstanding
transaction managers taking care of in-doubt transactions.
The XAResourceManager associated with this accessfactory. |
isReadOnly | public boolean isReadOnly()(Code) | | |
startXATransaction | public Object startXATransaction(ContextManager cm, int format_id, byte[] global_id, byte[] branch_id) throws StandardException(Code) | | Start a global transaction.
Get a transaction controller with which to manipulate data within
the access manager. Implicitly creates an access context.
Must only be called if no other transaction context exists in the
current context manager. If another transaction exists in the context
an exception will be thrown.
The (format_id, global_id, branch_id) triplet is meant to come exactly
from a javax.transaction.xa.Xid. We don't use Xid so that the system
can be delivered on a non-1.2 vm system and not require the javax classes
in the path.
Parameters: cm - The context manager for the current context. Parameters: format_id - the format id part of the Xid - ie. Xid.getFormatId(). Parameters: global_id - the global transaction identifier part of XID - ie.Xid.getGlobalTransactionId(). Parameters: branch_id - The branch qualifier of the Xid - ie. Xid.getBranchQaulifier() exception: StandardException - Standard exception policy. See Also: TransactionController |
waitForPostCommitToFinishWork | public void waitForPostCommitToFinishWork()(Code) | | |
|
|