Top Fields Constructors Methods
org.apache.derby.impl.store.access.conglomerate

public abstract Class GenericConglomerateController

extends GenericController
implements ConglomerateController
Class Inheritance
All Implemented Interfaces
org.apache.derby.iapi.store.access.ConglomerateController, org.apache.derby.iapi.store.access.ConglomPropertyQueryable
Known Direct Subclasses
org.apache.derby.impl.store.access.heap.HeapController
Imports
org.apache.derby.shared.common.reference.SQLState, org.apache.derby.shared.common.sanity.SanityManager, org.apache.derby.shared.common.error.StandardException, org.apache.derby.iapi.store.access.conglomerate.LogicalUndo, org.apache.derby.iapi.store.access.ConglomerateController, .Qualifier, .RowUtil, org.apache.derby.iapi.store.raw.FetchDescriptor, org.apache.derby.iapi.types.DataValueDescriptor, .RowLocation, org.apache.derby.iapi.services.io.FormatableBitSet

Field Summary

Inherited from org.apache.derby.impl.store.access.conglomerate.GenericController:
open_conglom

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public void
public boolean

Returns:

boolean indicating that the close has resulted in a real close of the controller. A held scan will return false if called by closeForEndTransaction(false), otherwise it will return true. A non-held scan will always return true.
closeForEndTransaction
(boolean
If true, means to close controller even if it has been opened to be kept opened across commit. This is used to close these controllers on abort.
closeHeldScan
)

Implements org.apache.derby.iapi.store.access.ConglomerateController.closeForEndTransaction.

Close conglomerate controller as part of terminating a transaction.

public boolean
delete(RowLocation loc)

Implements org.apache.derby.iapi.store.access.ConglomerateController.delete.

Delete a row from the conglomerate.

public boolean
fetch(RowLocation
The "RowLocation" which describes the exact row to fetch from the table.
loc
,
DataValueDescriptor[]
The row to read the data into.
row
,
FormatableBitSet
A description of which columns to return from row on the page into "destRow." destRow and validColumns work together to describe the row to be returned by the fetch - see RowUtil for description of how these three parameters work together to describe a fetched "row".
validColumns
)

Implements org.apache.derby.iapi.store.access.ConglomerateController.fetch.

Fetch the (partial) row at the given location.

public boolean
fetch(RowLocation
The "RowLocation" which describes the exact row to fetch from the table.
loc
,
DataValueDescriptor[]
The row to read the data into.
row
,
FormatableBitSet
A description of which columns to return from row on the page into "destRow." destRow and validColumns work together to describe the row to be returned by the fetch - see RowUtil for description of how these three parameters work together to describe a fetched "row".
validColumns
,
boolean
If false, then the call will throw a lock timeout exception immediately, if the lock can not be granted without waiting. If true call will act exactly as fetch() interface with no waitForLock parameter.
waitForLock
)

Implements org.apache.derby.iapi.store.access.ConglomerateController.fetch.

Fetch the (partial) row at the given location.

public boolean
replace(RowLocation loc, DataValueDescriptor[] row, FormatableBitSet validColumns)

Implements org.apache.derby.iapi.store.access.ConglomerateController.replace.

Replace the (partial) row at the given location.

Inherited from org.apache.derby.impl.store.access.conglomerate.GenericController:
checkConsistencydebugConglomerategetEstimatedRowCountgetInternalTablePropertySetgetOpenConglomgetRowPositionFromRowLocationgetSpaceInfogetTablePropertiesinitisKeyedisTableLockednewRowLocationTemplatequeueDeletePostCommitWorksetEstimatedRowCount

Constructor Detail

GenericConglomerateControllerback to summary
public GenericConglomerateController()

Method Detail

closeback to summary
public void close() throws StandardException

Overrides org.apache.derby.impl.store.access.conglomerate.GenericController.close.

Implements org.apache.derby.iapi.store.access.ConglomerateController.close.

Doc from org.apache.derby.iapi.store.access.ConglomerateController.close.

Close the conglomerate controller.

Close the conglomerate controller. Callers must not use the conglomerate controller after calling close. It is strongly recommended that callers clear out the reference after closing, e.g.,

ConglomerateController cc;
cc.close;
cc = null;
Exceptions
StandardException:
Standard exception policy.
See Also
ConglomerateController#close
closeForEndTransactionback to summary
public boolean closeForEndTransaction(boolean closeHeldScan) throws StandardException

Implements org.apache.derby.iapi.store.access.ConglomerateController.closeForEndTransaction.

Close conglomerate controller as part of terminating a transaction.

Use this call to close the conglomerate controller resources as part of committing or aborting a transaction. The normal close() routine may do some cleanup that is either unnecessary, or not correct due to the unknown condition of the controller following a transaction ending error. Use this call when closing all controllers as part of an abort of a transaction.

This call is meant to only be used internally by the Storage system, clients of the storage system should use the simple close() interface.

RESOLVE (mikem) - move this call to ConglomerateManager so it is obvious that non-access clients should not call this.

Parameters
closeHeldScan:boolean

If true, means to close controller even if it has been opened to be kept opened across commit. This is used to close these controllers on abort.

Returns:boolean

boolean indicating that the close has resulted in a real close of the controller. A held scan will return false if called by closeForEndTransaction(false), otherwise it will return true. A non-held scan will always return true.

Exceptions
StandardException:
Standard exception policy.
deleteback to summary
public boolean delete(RowLocation loc) throws StandardException

Implements org.apache.derby.iapi.store.access.ConglomerateController.delete.

Doc from org.apache.derby.iapi.store.access.ConglomerateController.delete.

Delete a row from the conglomerate.

Returns:boolean

Returns true if delete was successful, false if the record pointed at no longer represents a valid record.

Exceptions
StandardException:
Standard exception policy.
See Also
ConglomerateController#delete
fetchback to summary
public boolean fetch(RowLocation loc, DataValueDescriptor[] row, FormatableBitSet validColumns) throws StandardException

Implements org.apache.derby.iapi.store.access.ConglomerateController.fetch.

Doc from org.apache.derby.iapi.store.access.ConglomerateController.fetch.

Fetch the (partial) row at the given location.

Parameters
loc:RowLocation

The "RowLocation" which describes the exact row to fetch from the table.

row:DataValueDescriptor[]

The row to read the data into.

validColumns:FormatableBitSet

A description of which columns to return from row on the page into "destRow." destRow and validColumns work together to describe the row to be returned by the fetch - see RowUtil for description of how these three parameters work together to describe a fetched "row".

Returns:boolean

Returns true if fetch was successful, false if the record pointed at no longer represents a valid record.

Exceptions
StandardException:
Standard exception policy.
See Also
ConglomerateController#fetch
fetchback to summary
public boolean fetch(RowLocation loc, DataValueDescriptor[] row, FormatableBitSet validColumns, boolean waitForLock) throws StandardException

Implements org.apache.derby.iapi.store.access.ConglomerateController.fetch.

Doc from org.apache.derby.iapi.store.access.ConglomerateController.fetch.

Fetch the (partial) row at the given location.

Parameters
loc:RowLocation

The "RowLocation" which describes the exact row to fetch from the table.

row:DataValueDescriptor[]

The row to read the data into.

validColumns:FormatableBitSet

A description of which columns to return from row on the page into "destRow." destRow and validColumns work together to describe the row to be returned by the fetch - see RowUtil for description of how these three parameters work together to describe a fetched "row".

waitForLock:boolean

If false, then the call will throw a lock timeout exception immediately, if the lock can not be granted without waiting. If true call will act exactly as fetch() interface with no waitForLock parameter.

Returns:boolean

Returns true if fetch was successful, false if the record pointed at no longer represents a valid record.

Exceptions
StandardException:
Standard exception policy.
See Also
ConglomerateController#fetch
replaceback to summary
public boolean replace(RowLocation loc, DataValueDescriptor[] row, FormatableBitSet validColumns) throws StandardException

Implements org.apache.derby.iapi.store.access.ConglomerateController.replace.

Doc from org.apache.derby.iapi.store.access.ConglomerateController.replace.

Replace the (partial) row at the given location.

Returns:boolean

true if update was successful, returns false if the update fails because the record pointed at no longer represents a valid record.

Exceptions
StandardException:
Standard exception policy.
See Also
ConglomerateController#replace