java.io.Externalizable, java.io.Serializable, Formatable, TypedFormat, Loggable, RePreparable, Undoablepublic class CopyRowsOperation extends PhysicalPageOperation
| Format ID | LOGOP_COPY_ROWS the formatId is written by FormatIdOutputStream when this object is written out by writeObject |
| Purpose | |
| copy some rows from one page to another | |
| Upgrade | |
| Disk Layout | PhysicalPageOperation the superclass num_rows(CompressedInt) number of rows to copy destSlot(CompressedInt) the first slot number at the destination page recordIds(CompressedInt[num_rows]) the recordIds at the destination page OptionalData the after image of the rows to be inserted into the destination page |
| Modifier and Type | Field | Description |
|---|---|---|
protected int |
destSlot |
|
protected int |
num_rows |
|
protected ByteArray |
preparedLog |
|
protected int[] |
recordIds |
|
protected int[] |
reservedSpace |
ABORT, BI_LOG, CHECKSUM, COMMIT, COMPENSATION, FILE_RESOURCE, FIRST, LAST, PREPARE, RAWSTORE, XA_NEEDLOCKcontainerHdl, foundHere, page| Constructor | Description |
|---|---|
CopyRowsOperation() |
|
CopyRowsOperation(RawTransaction t,
BasePage destPage,
BasePage srcPage,
int destSlot,
int num_rows,
int srcSlot,
int[] recordIds) |
| Modifier and Type | Method | Description |
|---|---|---|
void |
doMe(Transaction xact,
LogInstant instant,
LimitObjectInput in) |
Apply the change indicated by this operation and optional data.
|
ByteArray |
getPreparedLog() |
the default for optional data is set to null.
|
int |
getTypeFormatId() |
Return my format identifier.
|
void |
readExternal(java.io.ObjectInput in) |
Read this in
|
void |
restoreMe(Transaction xact,
BasePage undoPage,
LogInstant CLRInstant,
LimitObjectInput in) |
restore the before image of the page
|
java.lang.String |
toString() |
DEBUG: Print self.
|
void |
undoMe(Transaction xact,
BasePage undoPage,
LogInstant CLRInstant,
LimitObjectInput in) |
to undo this operation, purge all records that were copied over.
|
void |
writeExternal(java.io.ObjectOutput out) |
|
private void |
writeOptionalDataToBuffer(RawTransaction t,
BasePage srcPage,
int srcSlot) |
Write the rows that are to be copied into this page
|
group, needsRedo, releaseResourceclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitfindpage, getPage, getPageForRedoRecovery, getPageId, getPageVersion, group, needsRedo, reclaimPrepareLocks, releaseResource, resetPageNumbergenerateUndoprotected int num_rows
protected int destSlot
protected int[] recordIds
protected int[] reservedSpace
protected transient ByteArray preparedLog
CopyRowsOperation(RawTransaction t, BasePage destPage, BasePage srcPage, int destSlot, int num_rows, int srcSlot, int[] recordIds) throws StandardException
StandardExceptionpublic CopyRowsOperation()
public void writeExternal(java.io.ObjectOutput out)
throws java.io.IOException
writeExternal in interface java.io.ExternalizablewriteExternal in class PageBasicOperationjava.io.IOExceptionpublic void readExternal(java.io.ObjectInput in)
throws java.io.IOException,
java.lang.ClassNotFoundException
readExternal in interface java.io.ExternalizablereadExternal in class PageBasicOperationjava.io.IOException - error reading from log streamjava.lang.ClassNotFoundException - log stream corruptedpublic int getTypeFormatId()
public void doMe(Transaction xact, LogInstant instant, LimitObjectInput in) throws StandardException, java.io.IOException
LoggableThe available() method of in indicates how much data can be read, i.e. how much was originally written.
xact - the Transactioninstant - the log instant of this operationin - optional datajava.io.IOException - Can be thrown by any of the methods of ObjectInput.StandardException - Standard Derby error policy.Loggable.doMe(org.apache.derby.iapi.store.raw.Transaction, org.apache.derby.iapi.store.raw.log.LogInstant, org.apache.derby.iapi.services.io.LimitObjectInput)public void undoMe(Transaction xact, BasePage undoPage, LogInstant CLRInstant, LimitObjectInput in) throws StandardException, java.io.IOException
undoMe in class PhysicalPageOperationxact - the Transaction doing the rollbackundoPage - the page to rollback changes onCLRInstant - the log instant of this (PageUndo) operationin - optional data for the rollback operationjava.io.IOException - Can be thrown by any of the methods of ObjectInput.StandardException - Standard Derby error policyPhysicalPageOperation.undoMe(org.apache.derby.iapi.store.raw.Transaction, org.apache.derby.impl.store.raw.data.BasePage, org.apache.derby.iapi.store.raw.log.LogInstant, org.apache.derby.iapi.services.io.LimitObjectInput)public void restoreMe(Transaction xact, BasePage undoPage, LogInstant CLRInstant, LimitObjectInput in) throws StandardException, java.io.IOException
restoreMe in class PageBasicOperationxact - the Transaction doing the rollbackundoPage - the page to rollback changes onCLRInstant - the log instant of this (PageUndo) operationin - optional data for the rollback operationjava.io.IOException - problem reading the complete log record from the input streamStandardException - Standard Derby Error Policypublic ByteArray getPreparedLog()
PageBasicOperationgetPreparedLog in interface LoggablegetPreparedLog in class PageBasicOperationprivate void writeOptionalDataToBuffer(RawTransaction t, BasePage srcPage, int srcSlot) throws StandardException, java.io.IOException
java.io.IOException - Can be thrown by any of the methods of ObjectOutput.StandardException - Standard Derby policy.public java.lang.String toString()
toString in class PageBasicOperationApache Derby V10.14 Internals - Copyright © 2004,2018 The Apache Software Foundation. All Rights Reserved.