|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.apache.derby.impl.store.raw.data.PageBasicOperation
org.apache.derby.impl.store.raw.data.LogicalPageOperation
org.apache.derby.impl.store.raw.data.UpdateFieldOperation
public final class UpdateFieldOperation
Represents the update of a particular field of a row on a page.
| Format ID | LOGOP_UPDATE_FIELD the formatId is written by FormatIdOutputStream when this object is written out by writeObject |
| Purpose | update a field of a record on the page |
| Upgrade | |
| Disk Layout | LogicalPageOperation the super class doMeSlot(CompressedInt) the slot of the record being updated fieldId(CompressedInt) the recordId of the record being updated OptionalData The after image of the column (length included), follow by the old image of the record (length included). If this is logically undoable, then the before image of the entire row is logged |
| Field Summary | |
|---|---|
protected int |
doMeSlot
|
protected int |
fieldId
|
protected ByteArray |
preparedLog
|
| Fields inherited from class org.apache.derby.impl.store.raw.data.LogicalPageOperation |
|---|
recordId, undo |
| Fields inherited from class org.apache.derby.impl.store.raw.data.PageBasicOperation |
|---|
containerHdl, foundHere, page |
| Fields inherited from interface org.apache.derby.iapi.store.raw.Loggable |
|---|
ABORT, BI_LOG, CHECKSUM, COMMIT, COMPENSATION, FILE_RESOURCE, FIRST, LAST, PREPARE, RAWSTORE, XA_NEEDLOCK |
| Constructor Summary | |
|---|---|
UpdateFieldOperation()
|
|
UpdateFieldOperation(RawTransaction t,
BasePage page,
int slot,
int recordId,
int fieldId,
java.lang.Object column,
LogicalUndo undo)
|
|
| Method Summary | |
|---|---|
void |
doMe(Transaction xact,
LogInstant instant,
LimitObjectInput in)
Change the value of a field. |
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 |
restoreLoggedRow(java.lang.Object[] row,
LimitObjectInput in)
Restore the row stored in the optional data of the log record. |
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,
int undoRecordId,
LogInstant CLRInstant,
LimitObjectInput in)
Restore field to its old value. |
void |
writeExternal(java.io.ObjectOutput out)
|
private void |
writeOptionalDataToBuffer(RawTransaction t,
java.lang.Object column)
Write the old column value and and new column value as optional data. |
| Methods inherited from class org.apache.derby.impl.store.raw.data.LogicalPageOperation |
|---|
generateUndo, getContainer, getRecordHandle, reclaimPrepareLocks, resetRecordHandle |
| Methods inherited from class org.apache.derby.impl.store.raw.data.PageBasicOperation |
|---|
findpage, getPage, getPageForRedoRecovery, getPageId, getPageVersion, group, needsRedo, releaseResource, resetPageNumber |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.apache.derby.iapi.store.raw.Loggable |
|---|
group, needsRedo, releaseResource |
| Field Detail |
|---|
protected int doMeSlot
protected int fieldId
protected transient ByteArray preparedLog
| Constructor Detail |
|---|
public UpdateFieldOperation(RawTransaction t,
BasePage page,
int slot,
int recordId,
int fieldId,
java.lang.Object column,
LogicalUndo undo)
throws StandardException
StandardExceptionpublic UpdateFieldOperation()
| Method Detail |
|---|
public void writeExternal(java.io.ObjectOutput out)
throws java.io.IOException
writeExternal in interface java.io.ExternalizablewriteExternal in class LogicalPageOperationjava.io.IOException
public void readExternal(java.io.ObjectInput in)
throws java.io.IOException,
java.lang.ClassNotFoundException
readExternal in interface java.io.ExternalizablereadExternal in class LogicalPageOperationjava.io.IOException - error reading from log stream
java.lang.ClassNotFoundException - log stream corruptedpublic int getTypeFormatId()
public void doMe(Transaction xact,
LogInstant instant,
LimitObjectInput in)
throws StandardException,
java.io.IOException
xact - the Transactioninstant - the log instant of this operationin - optional data
java.io.IOException - Can be thrown by any of the methods of ObjectInput.
StandardException - Standard Derby 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,
int undoRecordId,
LogInstant CLRInstant,
LimitObjectInput in)
throws StandardException,
java.io.IOException
undoMe in class LogicalPageOperationxact - the Transaction doing the rollbackundoPage - the page to rollback changes onundoRecordId - the recordId to rollback changes onCLRInstant - the log instant of this (PageUndo) operationin - optional data for the rollback operation
java.io.IOException - Can be thrown by any of the methods of ObjectInput.
StandardException - Standard Derby policy.LogicalPageOperation.undoMe(org.apache.derby.iapi.store.raw.Transaction, org.apache.derby.impl.store.raw.data.BasePage, int, org.apache.derby.iapi.store.raw.log.LogInstant, org.apache.derby.iapi.services.io.LimitObjectInput)
public void restoreLoggedRow(java.lang.Object[] row,
LimitObjectInput in)
throws StandardException,
java.io.IOException
row - an IN/OUT parameter, caller passed in the row with
the correct column number and type, the log operation will restore the
row with the optional data stored in the log record.
java.io.IOException - error reading from log stream
StandardException - Standard Derby error policyLogicalUndo
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 operation
StandardException - Standard Derby Error Policy
java.io.IOException - problem reading the complete log record from the
input streampublic ByteArray getPreparedLog()
PageBasicOperation
getPreparedLog in interface LoggablegetPreparedLog in class PageBasicOperation
private void writeOptionalDataToBuffer(RawTransaction t,
java.lang.Object column)
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 PageBasicOperation
|
Built on Wed 2013-06-12 15:21:56+0000, from revision ??? | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||