public class ContainerUndoOperation extends ContainerBasicOperation implements Compensation
Modifier and Type | Field and Description |
---|---|
private ContainerOperation |
undoOp |
containerHdl, containerId
ABORT, BI_LOG, CHECKSUM, COMMIT, COMPENSATION, FILE_RESOURCE, FIRST, LAST, PREPARE, RAWSTORE, XA_NEEDLOCK
Constructor and Description |
---|
ContainerUndoOperation() |
ContainerUndoOperation(RawContainerHandle hdl,
ContainerOperation op)
Set up a Container undo operation during run time rollback
|
Modifier and Type | Method and Description |
---|---|
void |
doMe(Transaction xact,
LogInstant instant,
LimitObjectInput in)
Apply the undo operation, in this implementation of the
RawStore, it can only call the undoMe method of undoOp
|
int |
getTypeFormatId()
Return my format identifier.
|
int |
group()
A space operation is a RAWSTORE log record
|
void |
readExternal(java.io.ObjectInput in) |
void |
releaseResource(Transaction xact)
Release any resource that was acquired for doMe for rollback or
recovery redo.
|
void |
setUndoOp(Undoable op)
Set up a Container undo operation during recovery redo.
|
void |
writeExternal(java.io.ObjectOutput out) |
findContainer, findContainerForRedoRecovery, getPreparedLog, needsRedo, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getPreparedLog, needsRedo
private transient ContainerOperation undoOp
public ContainerUndoOperation(RawContainerHandle hdl, ContainerOperation op) throws StandardException
StandardException
- container Handle is not activepublic ContainerUndoOperation()
public void writeExternal(java.io.ObjectOutput out) throws java.io.IOException
writeExternal
in interface java.io.Externalizable
writeExternal
in class ContainerBasicOperation
java.io.IOException
public void readExternal(java.io.ObjectInput in) throws java.io.IOException, java.lang.ClassNotFoundException
readExternal
in interface java.io.Externalizable
readExternal
in class ContainerBasicOperation
java.io.IOException
- cannot read log record from log streamjava.lang.ClassNotFoundException
- cannot read ByteArray objectpublic int getTypeFormatId()
getTypeFormatId
in interface TypedFormat
public void setUndoOp(Undoable op)
setUndoOp
in interface Compensation
op
- the Undoable operationLoggable.needsRedo(org.apache.derby.iapi.store.raw.Transaction)
public final void doMe(Transaction xact, LogInstant instant, LimitObjectInput in) throws StandardException, java.io.IOException
doMe
in interface Loggable
xact
- the Transaction that is doing the rollbackinstant
- the log instant of this compenstaion operationin
- optional datajava.io.IOException
- Can be thrown by any of the methods of ObjectInput.StandardException
- Standard Derby error policy.ContainerOperation.generateUndo(org.apache.derby.iapi.store.raw.Transaction, org.apache.derby.iapi.services.io.LimitObjectInput)
public void releaseResource(Transaction xact)
Loggable
releaseResource
in interface Loggable
releaseResource
in class ContainerBasicOperation
public int group()
ContainerBasicOperation
group
in interface Loggable
group
in class ContainerBasicOperation
Apache Derby V10.13 Internals - Copyright © 2004,2016 The Apache Software Foundation. All Rights Reserved.