Top Description Fields Constructors Methods
org.apache.derby.impl.store.raw.data

public final Class SetReservedSpaceOperation

extends PageBasicOperation
Class Inheritance
Imports
org.apache.derby.iapi.services.io.StoredFormatIds, .CompressedNumber, .LimitObjectInput, org.apache.derby.iapi.store.raw.Page, .Transaction, org.apache.derby.iapi.store.raw.log.LogInstant, org.apache.derby.shared.common.sanity.SanityManager, org.apache.derby.shared.common.error.StandardException, java.io.ObjectOutput, .ObjectInput, .IOException

Represents shrinking of the reserved space of a particular row on a page. This operation is not undoable.

Field Summary

Modifier and TypeField and Description
protected int
protected int
protected int
protected int
Inherited from org.apache.derby.impl.store.raw.data.PageBasicOperation:
containerHdlfoundHerepage

Constructor Summary

AccessConstructor and Description
pack-priv
SetReservedSpaceOperation(BasePage page, int slot, int recordId, int newValue, int oldValue)

public

Method Summary

Modifier and TypeMethod and Description
public void
doMe(Transaction
the Transaction
xact
,
LogInstant
the log instant of this operation
instant
,
LimitObjectInput
optional data
in
)

Implements org.apache.derby.iapi.store.raw.Loggable.doMe.

Apply the change indicated by this operation and optional data.

public int
public void
readExternal(ObjectInput
the stream to read data from in order to restore the object
in
)

Overrides org.apache.derby.impl.store.raw.data.PageBasicOperation.readExternal.

Implements java.io.Externalizable.readExternal.

Read this in

public void
restoreMe(Transaction
the Transaction doing the rollback
xact
,
BasePage
the page to rollback changes on
undoPage
,
LogInstant
the log instant of this (PageUndo) operation
CLRinstant
,
LimitObjectInput
optional data for the rollback operation
in
)

Implements abstract org.apache.derby.impl.store.raw.data.PageBasicOperation.restoreMe.

restore the before image of the page

public String
public void
writeExternal(ObjectOutput
the stream to write the object to
out
)

Overrides org.apache.derby.impl.store.raw.data.PageBasicOperation.writeExternal.

Implements java.io.Externalizable.writeExternal.

The object implements the writeExternal method to save its contents by calling the methods of DataOutput for its primitive values or calling the writeObject method of ObjectOutput for objects, strings, and arrays.

Inherited from org.apache.derby.impl.store.raw.data.PageBasicOperation:
findpagegetPagegetPageForRedoRecoverygetPageIdgetPageVersiongetPreparedLoggroupneedsRedoreclaimPrepareLocksreleaseResourceresetPageNumber

Field Detail

doMeSlotback to summary
protected int doMeSlot
newValueback to summary
protected int newValue
oldValueback to summary
protected int oldValue
recordIdback to summary
protected int recordId

Constructor Detail

SetReservedSpaceOperationback to summary
pack-priv SetReservedSpaceOperation(BasePage page, int slot, int recordId, int newValue, int oldValue)
SetReservedSpaceOperationback to summary
public SetReservedSpaceOperation()

Method Detail

doMeback to summary
public void doMe(Transaction xact, LogInstant instant, LimitObjectInput in) throws StandardException, IOException

Implements org.apache.derby.iapi.store.raw.Loggable.doMe.

Doc from org.apache.derby.iapi.store.raw.Loggable.doMe.

Apply the change indicated by this operation and optional data. If this method fail, the system will be shut down because the log record has already been written to disk. Moreover, the log record will be replayed during recovery and this doMe method will be called on the same page again, so if it fails again, recovery will fail and the database cannot be started. So it is very important to make sure that every resource you need, such as disk space, has been acquired before the logAndDo method is called!
This method cannot acquire any resource (like latching of a page) since it is called underneath the logging system, ie., the log record has already been written to the log stream.

The available() method of in indicates how much data can be read, i.e. how much was originally written.

Parameters
xact:Transaction

the Transaction

instant:LogInstant

the log instant of this operation

in:LimitObjectInput

optional data

Exceptions
StandardException:
Standard Derby policy.
IOException:
Can be thrown by any of the methods of ObjectInput.
See Also
org.apache.derby.iapi.store.raw.Loggable#doMe
getTypeFormatIdback to summary
public int getTypeFormatId()

Implements org.apache.derby.iapi.services.io.TypedFormat.getTypeFormatId.

Return my format identifier.

Returns:int

Doc from org.apache.derby.iapi.services.io.TypedFormat.getTypeFormatId.

The identifier. (A UUID stuffed in an array of 16 bytes).

readExternalback to summary
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException

Overrides org.apache.derby.impl.store.raw.data.PageBasicOperation.readExternal.

Implements java.io.Externalizable.readExternal.

Read this in

Parameters
in:ObjectInput

Doc from java.io.Externalizable.readExternal.

the stream to read data from in order to restore the object

Exceptions
IOException:
error reading from log stream
ClassNotFoundException:
log stream corrupted
restoreMeback to summary
public void restoreMe(Transaction xact, BasePage undoPage, LogInstant CLRinstant, LimitObjectInput in) throws StandardException, IOException

Implements abstract org.apache.derby.impl.store.raw.data.PageBasicOperation.restoreMe.

restore the before image of the page

Parameters
xact:Transaction

Doc from org.apache.derby.impl.store.raw.data.PageBasicOperation.restoreMe.

the Transaction doing the rollback

undoPage:BasePage

Doc from org.apache.derby.impl.store.raw.data.PageBasicOperation.restoreMe.

the page to rollback changes on

CLRinstant:LogInstant

Doc from org.apache.derby.impl.store.raw.data.PageBasicOperation.restoreMe.

the log instant of this (PageUndo) operation

in:LimitObjectInput

Doc from org.apache.derby.impl.store.raw.data.PageBasicOperation.restoreMe.

optional data for the rollback operation

Exceptions
StandardException:
Standard Derby Error Policy
IOException:
problem reading the complete log record from the input stream
toStringback to summary
public String toString()

Overrides org.apache.derby.impl.store.raw.data.PageBasicOperation.toString.

DEBUG: Print self.

Returns:String

Doc from java.lang.Object.toString.

a string representation of the object

writeExternalback to summary
public void writeExternal(ObjectOutput out) throws IOException

Overrides org.apache.derby.impl.store.raw.data.PageBasicOperation.writeExternal.

Implements java.io.Externalizable.writeExternal.

Doc from java.io.Externalizable.writeExternal.

The object implements the writeExternal method to save its contents by calling the methods of DataOutput for its primitive values or calling the writeObject method of ObjectOutput for objects, strings, and arrays.

Parameters
out:ObjectOutput

the stream to write the object to

Exceptions
IOException:
Includes any I/O exceptions that may occur