| java.lang.Object org.apache.derby.impl.store.raw.data.PageBasicOperation org.apache.derby.impl.store.raw.data.LogicalPageOperation
All known Subclasses: org.apache.derby.impl.store.raw.data.DeleteOperation, org.apache.derby.impl.store.raw.data.UpdateFieldOperation, org.apache.derby.impl.store.raw.data.InsertOperation,
LogicalPageOperation | abstract public class LogicalPageOperation extends PageBasicOperation implements LogicalUndoable(Code) | | An abstract class that is used for logical log operation. A logical log
operation is one where the undo of the operation may be applied to a
different page than the original operation.
|
recordId | protected int recordId(Code) | | |
LogicalPageOperation | public LogicalPageOperation()(Code) | | |
getContainer | public ContainerHandle getContainer()(Code) | | Return the container handle where the log operated on
|
getRecordHandle | public RecordHandle getRecordHandle()(Code) | | Return the record handle that correspond to the record that was changed
during roll forward. This is used as a hint by logical undo as a good
place to look for the record to apply the roll back.
|
reclaimPrepareLocks | public void reclaimPrepareLocks(Transaction t, LockingPolicy locking_policy) throws StandardException(Code) | | reclaim locks associated with the changes in this log record.
Parameters: locking_policy - The locking policy to use to claim the locks. exception: StandardException - Standard exception policy. |
resetRecordHandle | public void resetRecordHandle(RecordHandle rh)(Code) | | After the logical undo logic figures out where the real record that
needs roll back is, reset this log operation to refer to that record
|
undoMe | abstract public void undoMe(Transaction xact, BasePage undoPage, int undoRecordId, LogInstant CLRinstant, LimitObjectInput in) throws StandardException, IOException(Code) | | Undo the change indicated by this log operation and optional data.
The undoPage and undoRecordId is the page, record the undo should apply to.
The undoRecorId differs from the roll forward recordId if the undoPage
differs from the page the roll forward operation was applied to, in
other words, the record moved to another page and the recordId changed.
A logical operation can at most deal with 1 record.
The available() method of in indicates how much data can be read, i.e.
how much was originally written.
In this RawStore implementation, should only only be called via
CompOp.doMe.
Parameters: xact - the Transaction doing the rollback Parameters: undoPage - the page to rollback changes on Parameters: undoRecordId - the recordId to rollback changes on Parameters: CLRinstant - the log instant of this (PageUndo) operation Parameters: in - optional data for the rollback operation exception: IOException - Can be thrown by any of the methods of ObjectInput. exception: StandardException - Standard Cloudscape policy. |
|
|