ConglomerateController
, ConglomPropertyQueryable
HeapController
public abstract class GenericConglomerateController extends GenericController implements ConglomerateController
LOCK_INS, LOCK_INS_PREVKEY, LOCK_READ, LOCK_UPD, LOCK_UPDATE_LOCKS, ROWISDUPLICATE
open_conglom
Constructor | Description |
---|---|
GenericConglomerateController() |
Modifier and Type | Method | Description |
---|---|---|
void |
close() |
Close the conglomerate controller.
|
boolean |
closeForEndTransaction(boolean closeHeldScan) |
Close conglomerate controller as part of terminating a transaction.
|
boolean |
delete(RowLocation loc) |
Delete a row from the conglomerate.
|
boolean |
fetch(RowLocation loc,
DataValueDescriptor[] row,
FormatableBitSet validColumns) |
Fetch the (partial) row at the given location.
|
boolean |
fetch(RowLocation loc,
DataValueDescriptor[] row,
FormatableBitSet validColumns,
boolean waitForLock) |
Fetch the (partial) row at the given location.
|
boolean |
replace(RowLocation loc,
DataValueDescriptor[] row,
FormatableBitSet validColumns) |
Replace the (partial) row at the given location.
|
checkConsistency, debugConglomerate, getSpaceInfo, insert, insertAndFetchLocation, isKeyed, lockRow, lockRow, newRowLocationTemplate, unlockRowAfterRead
getInternalTablePropertySet, getTableProperties
checkConsistency, debugConglomerate, getEstimatedRowCount, getInternalTablePropertySet, getOpenConglom, getRowPositionFromRowLocation, getSpaceInfo, getTableProperties, init, isKeyed, isTableLocked, newRowLocationTemplate, queueDeletePostCommitWork, setEstimatedRowCount
public void close() throws StandardException
ConglomerateController
Close the conglomerate controller. Callers must not use the conglomerate controller after calling close. It is strongly recommended that callers clear out the reference after closing, e.g.,
ConglomerateController cc; cc.close; cc = null;
close
in interface ConglomerateController
close
in class GenericController
StandardException
- Standard exception policy.ConglomerateController.close()
public boolean closeForEndTransaction(boolean closeHeldScan) throws StandardException
Use this call to close the conglomerate controller resources as part of committing or aborting a transaction. The normal close() routine may do some cleanup that is either unnecessary, or not correct due to the unknown condition of the controller following a transaction ending error. Use this call when closing all controllers as part of an abort of a transaction.
This call is meant to only be used internally by the Storage system, clients of the storage system should use the simple close() interface.
RESOLVE (mikem) - move this call to ConglomerateManager so it is obvious that non-access clients should not call this.
closeForEndTransaction
in interface ConglomerateController
closeHeldScan
- If true, means to close controller even if
it has been opened to be kept opened
across commit. This is
used to close these controllers on abort.StandardException
- Standard exception policy.public boolean delete(RowLocation loc) throws StandardException
ConglomerateController
delete
in interface ConglomerateController
StandardException
- Standard exception policy.ConglomerateController.delete(org.apache.derby.iapi.types.RowLocation)
public boolean fetch(RowLocation loc, DataValueDescriptor[] row, FormatableBitSet validColumns) throws StandardException
ConglomerateController
fetch
in interface ConglomerateController
loc
- The "RowLocation" which describes the exact row
to fetch from the table.row
- The row to read the data into.validColumns
- A description of which columns to return from
row on the page into "destRow." destRow
and validColumns work together to
describe the row to be returned by the fetch -
see RowUtil for description of how these three
parameters work together to describe a fetched
"row".StandardException
- Standard exception policy.ConglomerateController.fetch(org.apache.derby.iapi.types.RowLocation, org.apache.derby.iapi.types.DataValueDescriptor[], org.apache.derby.iapi.services.io.FormatableBitSet)
public boolean fetch(RowLocation loc, DataValueDescriptor[] row, FormatableBitSet validColumns, boolean waitForLock) throws StandardException
ConglomerateController
fetch
in interface ConglomerateController
loc
- The "RowLocation" which describes the exact row
to fetch from the table.row
- The row to read the data into.validColumns
- A description of which columns to return from
row on the page into "destRow." destRow
and validColumns work together to
describe the row to be returned by the fetch -
see RowUtil for description of how these three
parameters work together to describe a fetched
"row".waitForLock
- If false, then the call will throw a lock timeout
exception immediately, if the lock can not be
granted without waiting. If true call will
act exactly as fetch() interface with no
waitForLock parameter.StandardException
- Standard exception policy.ConglomerateController.fetch(org.apache.derby.iapi.types.RowLocation, org.apache.derby.iapi.types.DataValueDescriptor[], org.apache.derby.iapi.services.io.FormatableBitSet)
public boolean replace(RowLocation loc, DataValueDescriptor[] row, FormatableBitSet validColumns) throws StandardException
ConglomerateController
replace
in interface ConglomerateController
StandardException
- Standard exception policy.ConglomerateController.replace(org.apache.derby.iapi.types.RowLocation, org.apache.derby.iapi.types.DataValueDescriptor[], org.apache.derby.iapi.services.io.FormatableBitSet)
Apache Derby V10.14 Internals - Copyright © 2004,2018 The Apache Software Foundation. All Rights Reserved.