Class CheckpointOperation
java.lang.Object
org.apache.derby.impl.store.raw.log.CheckpointOperation
- All Implemented Interfaces:
Externalizable, Serializable, Formatable, TypedFormat, Loggable
-
Field Summary
FieldsFields inherited from interface Loggable
ABORT, BI_LOG, CHECKSUM, COMMIT, COMPENSATION, FILE_RESOURCE, FIRST, LAST, PREPARE, RAWSTORE, XA_NEEDLOCK -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoiddoMe(Transaction xact, LogInstant instant, LimitObjectInput in) Nothing to do unless we are rollforward recovery; Redoing of checkpoints during rollforward recovery allows us to restart the roll-forward recovery from the last checkpoint redone during rollforward recovery, if we happen to crash during the roll-forward recovery process.the default for prepared log is always null for all the operations that don't have optionalData.intReturn my format identifier.intgroup()Checkpoint is a raw store operationbooleanneedsRedo(Transaction xact) Checkpoint does not need to be redone unless we are doing rollforward recovery.voidlongredoLWM()Access attributes of the checkpoint recordvoidreleaseResource(Transaction xact) Checkpoint has not resource to releasetoString()DEBUG: Print self.longundoLWM()void
-
Field Details
-
redoLWM
protected long redoLWM -
undoLWM
protected long undoLWM -
transactionTable
-
-
Constructor Details
-
CheckpointOperation
-
CheckpointOperation
public CheckpointOperation()
-
-
Method Details
-
writeExternal
- Specified by:
writeExternalin interfaceExternalizable- Throws:
IOException
-
readExternal
- Specified by:
readExternalin interfaceExternalizable- Throws:
IOExceptionClassNotFoundException
-
getTypeFormatId
public int getTypeFormatId()Return my format identifier.- Specified by:
getTypeFormatIdin interfaceTypedFormat- Returns:
- The identifier. (A UUID stuffed in an array of 16 bytes).
-
doMe
public void doMe(Transaction xact, LogInstant instant, LimitObjectInput in) throws StandardException Nothing to do unless we are rollforward recovery; Redoing of checkpoints during rollforward recovery allows us to restart the roll-forward recovery from the last checkpoint redone during rollforward recovery, if we happen to crash during the roll-forward recovery process. Another reason why we need to do this is dropped table stub files removed at checkpoint because the containerids may have been reused after a checkpoint if the system was rebooted.- Specified by:
doMein interfaceLoggable- Parameters:
xact- the Transactioninstant- the log instant of this operationin- optional data- Throws:
StandardException- Standard Derby policy.
-
getPreparedLog
the default for prepared log is always null for all the operations that don't have optionalData. If an operation has optional data, the operation need to prepare the optional data for this method. Checkpoint has no optional data to write out- Specified by:
getPreparedLogin interfaceLoggable
-
needsRedo
Checkpoint does not need to be redone unless we are doing rollforward recovery. -
releaseResource
Checkpoint has not resource to release- Specified by:
releaseResourcein interfaceLoggable
-
group
-
redoLWM
public long redoLWM()Access attributes of the checkpoint record -
undoLWM
public long undoLWM() -
getTransactionTable
-
toString
-