openScan should be called.
| Modifier and Type | Field and Description |
|---|---|
| private static final int | |
| pack-priv long | baseConglomerateId
The id of the conglomerate which contains the base table. |
| pack-priv static final int | |
| private static final String | |
| private static final String | |
| pack-priv int | rowLocationColumn
The column id (zero-based integer index) of the column which holds the row location to the base conglomerate. |
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| public void | compressConglomerate(TransactionManager xact_manager, Transaction rawtran)
Implements org.
|
| public void | create(TransactionManager xact_manager, int segmentId, long input_conglomid, DataValueDescriptor[] template, ColumnOrdering[] columnOrder, int[] collationIds, Properties properties, int temporaryFlag)
Create an empty secondary index b-tree, using the generic b-tree to do the generic part of the creation process. |
| public ScanManager | defragmentConglomerate(TransactionManager xact_manager, Transaction rawtran, boolean
see openScan() hold, int see openScan() open_mode, int see openScan() lock_level, LockingPolicy locking_policy, int see openScan() isolation_level)Implements org. Open a b-tree compress scan. |
| public void | drop(TransactionManager xact_manager)
Implements abstract org. Implements org. Drop this b-tree secondary index. |
| public int | estimateMemoryUsage()
Implements org. Estimate the memory usage in bytes of the data value and the overhead of the class. |
| public boolean | Returns: boolean indicating if a row was found and retrieved or not.The TransactionController under which this
operation takes place. xact_manager, Transaction The raw store xact to associate all ops with. rawtran, long The identifier of the conglomerate
to open the scan for. conglomId, int Specifiy flags to control opening of table.
OPENMODE_FORUPDATE - if set open the table for
update otherwise open table shared. open_mode, int One of (MODE_TABLE, MODE_RECORD, or MODE_NONE). lock_level, LockingPolicy The LockingPolicy to use to open the conglomerate. locking_policy, int The isolation level to lock the conglomerate at.
One of (ISOLATION_READ_COMMITTED or
ISOLATION_SERIALIZABLE). isolation_level, FormatableBitSet A description of which columns to return from
every fetch in the scan. template,
and scanColumnList work together
to describe the row to be returned by the scan -
see RowUtil for description of how these three
parameters work together to describe a "row". scanColumnList, DataValueDescriptor[] The row to retrieve the maximum value into. fetchRow)Implements org. Retrieve the maximum value row in an ordered conglomerate. |
| protected BTreeLockingPolicy | getBtreeLockingPolicy(Transaction rawtran, int lock_level, int mode, int isolation_level, ConglomerateController base_cc, OpenBTree open_btree)
Implements abstract org. Create a new btree locking policy from scratch. |
| public StaticCompiledOpenConglomInfo | Returns: The static compiled information.The TransactionController under which this operation
takes place. xact_manager, long The identifier of the conglomerate to open. conglomId)Implements org. Return static information about the conglomerate to be included in a a compiled plan. |
| public int | getTypeFormatId()
Implements org. Return my format identifier. |
| public long | load(TransactionManager
The TransactionController under which this operation
takes place. xact_manager, boolean If true, the conglomerate is being created in the
same operation as the openAndLoadConglomerate.
The enables further optimization as recovery does
not require page allocation to be logged. createConglom, RowLocationRetRowSource Where the rows come from. rowSource)Implements abstract org. Implements org. Bulk Load a B-tree secondary index. |
| public final ConglomerateController | lockTable(TransactionManager
Transaction to associate the lock with. xact_manager, int open_mode, int lock_level, int isolation_level)Implements abstract org. Lock the base table. |
| public ConglomerateController | open(TransactionManager
The access xact to associate all ops on cc with. xact_manager, Transaction The raw store xact to associate all ops on cc with. rawtran, boolean hold, int A bit mask of TransactionController.MODE_* bits,
indicating info about the open. open_mode, int Either TransactionController.MODE_TABLE or
TransactionController.MODE_RECORD, as passed into
the openConglomerate() call. lock_level, LockingPolicy The LockingPolicy to use to open the conglomerate. locking_policy, StaticCompiledOpenConglomInfo static_info, DynamicCompiledOpenConglomInfo dynamic_info)Implements abstract org. Implements org. Open a b-tree controller. |
| public ScanManager | openScan(TransactionManager xact_manager, Transaction rawtran, boolean hold, int open_mode, int lock_level, LockingPolicy locking_policy, int isolation_level, FormatableBitSet scanColumnList, DataValueDescriptor[] startKeyValue, int startSearchOperator, Qualifier[][] qualifier, DataValueDescriptor[] stopKeyValue, int stopSearchOperator, StaticCompiledOpenConglomInfo static_info, DynamicCompiledOpenConglomInfo dynamic_info)
Implements org. Open a b-tree secondary index scan controller. |
| public StoreCostController | Returns: The open StoreCostController.The TransactionController under which this
operation takes place. xact_manager, Transaction raw transaction context in which scan is managed. rawtran)Implements org. Return an open StoreCostController for the conglomerate. |
| public void | purgeConglomerate(TransactionManager xact_manager, Transaction rawtran)
Implements org.
|
| public void | readExternal(ObjectInput
the stream to read data from in order to restore the object in)Overrides org. Implements java. Restore the in-memory representation from the stream. |
| private void | |
| public void | writeExternal(ObjectOutput
the stream to write the object to out)Overrides org. Implements java. Store the stored representation of the column value in the stream. |
| public void | writeExternal_v10_2(ObjectOutput out)
Store the stored representation of the column value in the stream. |
| public void | writeExternal_v10_3(ObjectOutput out)
Store the stored representation of the column value in the stream. |
| BASE_MEMORY_USAGE | back to summary |
|---|---|
| private static final int BASE_MEMORY_USAGE | |
| baseConglomerateId | back to summary |
|---|---|
| pack-priv long baseConglomerateId The id of the conglomerate which contains the base table. Row locations inserted into this secondary index are assumed to refer to that conglomerate. Used to obtain table/row locks on the base table rows which the index rows point at. | |
| FORMAT_NUMBER | back to summary |
|---|---|
| pack-priv static final int FORMAT_NUMBER | |
| PROPERTY_BASECONGLOMID | back to summary |
|---|---|
| private static final String PROPERTY_BASECONGLOMID | |
| PROPERTY_ROWLOCCOLUMN | back to summary |
|---|---|
| private static final String PROPERTY_ROWLOCCOLUMN | |
| rowLocationColumn | back to summary |
|---|---|
| pack-priv int rowLocationColumn The column id (zero-based integer index) of the column which holds the row location to the base conglomerate. The default value of RowLocationColumn is the last key column. Used to obtain table/row locks on the base table rows with the index rows point at. Currently, RowLocationColumn must be the last key column. | |
| B2I | back to summary |
|---|---|
| public B2I() | |
| compressConglomerate | back to summary |
|---|---|
| public void compressConglomerate(TransactionManager xact_manager, Transaction rawtran) throws StandardException Implements org. | |
| create | back to summary |
|---|---|
| public void create(TransactionManager xact_manager, int segmentId, long input_conglomid, DataValueDescriptor[] template, ColumnOrdering[] columnOrder, int[] collationIds, Properties properties, int temporaryFlag) throws StandardException Create an empty secondary index b-tree, using the generic b-tree to do the generic part of the creation process. This routine opens the newly created container, adds a single page, and makes this page the root by inserting a LeafControlRow onto this page at slot 0 and marking in that control row that the page is a root page. The following properties are specific to the b-tree secondary index:
| |
| drop | back to summary |
|---|---|
| public void drop(TransactionManager xact_manager) throws StandardException Implements abstract org. Implements org. Drop this b-tree secondary index.
| |
| estimateMemoryUsage | back to summary |
|---|---|
| public int estimateMemoryUsage() Implements org. Doc from org. Estimate the memory usage in bytes of the data value and the overhead of the class.
| |
| fetchMaxOnBTree | back to summary |
|---|---|
| public boolean fetchMaxOnBTree(TransactionManager xact_manager, Transaction rawtran, long conglomId, int open_mode, int lock_level, LockingPolicy locking_policy, int isolation_level, FormatableBitSet scanColumnList, DataValueDescriptor[] fetchRow) throws StandardException Implements org. Retrieve the maximum value row in an ordered conglomerate. Returns true and fetches the rightmost row of an ordered conglomerate into "fetchRow" if there is at least one row in the conglomerate. If there are no rows in the conglomerate it returns false. Non-ordered conglomerates will not implement this interface, calls will generate a StandardException. RESOLVE - this interface is temporary, long term equivalent (and more) functionality will be provided by the openBackwardScan() interface.
| |
| getBtreeLockingPolicy | back to summary |
|---|---|
| protected BTreeLockingPolicy getBtreeLockingPolicy(Transaction rawtran, int lock_level, int mode, int isolation_level, ConglomerateController base_cc, OpenBTree open_btree) throws StandardException Implements abstract org. Create a new btree locking policy from scratch.
| |
| getStaticCompiledConglomInfo | back to summary |
|---|---|
| public StaticCompiledOpenConglomInfo getStaticCompiledConglomInfo(TransactionController xact_manager, long conglomId) throws StandardException Implements org. Return static information about the conglomerate to be included in a a compiled plan. The static info would be valid until any ddl was executed on the conglomid, and would be up to the caller to throw away when that happened. This ties in with what language already does for other invalidation of static info. The type of info in this would be containerid and array of format id's from which templates can be created. The info in this object is read only and can be shared among as many threads as necessary.
| |
| getTypeFormatId | back to summary |
|---|---|
| public int getTypeFormatId() Implements org. Return my format identifier.
| |
| load | back to summary |
|---|---|
| public long load(TransactionManager xact_manager, boolean createConglom, RowLocationRetRowSource rowSource) throws StandardException Implements abstract org. Implements org. Bulk Load a B-tree secondary index.
| |
| lockTable | back to summary |
|---|---|
| public final ConglomerateController lockTable(TransactionManager xact_manager, int open_mode, int lock_level, int isolation_level) throws StandardException Implements abstract org. Lock the base table. Assumes that segment of the base container is the same as the segment of the btree segment. RESOLVE - we really want to get the lock without opening the container. raw store will be providing this.
| |
| open | back to summary |
|---|---|
| public ConglomerateController open(TransactionManager xact_manager, Transaction rawtran, boolean hold, int open_mode, int lock_level, LockingPolicy locking_policy, StaticCompiledOpenConglomInfo static_info, DynamicCompiledOpenConglomInfo dynamic_info) throws StandardException Implements abstract org. Implements org. Open a b-tree controller.
| |
| openScan | back to summary |
|---|---|
| public ScanManager openScan(TransactionManager xact_manager, Transaction rawtran, boolean hold, int open_mode, int lock_level, LockingPolicy locking_policy, int isolation_level, FormatableBitSet scanColumnList, DataValueDescriptor[] startKeyValue, int startSearchOperator, Qualifier[][] qualifier, DataValueDescriptor[] stopKeyValue, int stopSearchOperator, StaticCompiledOpenConglomInfo static_info, DynamicCompiledOpenConglomInfo dynamic_info) throws StandardException Implements org. Open a b-tree secondary index scan controller.
| |
| openStoreCost | back to summary |
|---|---|
| public StoreCostController openStoreCost(TransactionManager xact_manager, Transaction rawtran) throws StandardException Implements org. Return an open StoreCostController for the conglomerate. Return an open StoreCostController which can be used to ask about the estimated row counts and costs of ScanController and ConglomerateController operations, on the given conglomerate.
| |
| purgeConglomerate | back to summary |
|---|---|
| public void purgeConglomerate(TransactionManager xact_manager, Transaction rawtran) throws StandardException Implements org. | |
| readExternal | back to summary |
|---|---|
| public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException Overrides org. Implements java. Restore the in-memory representation from the stream.
| |
| traverseRight | back to summary |
|---|---|
| private void traverseRight() Private methods of B2I, arranged alphabetically. | |
| writeExternal | back to summary |
|---|---|
| public void writeExternal(ObjectOutput out) throws IOException Overrides org. Implements java. Store the stored representation of the column value in the stream. For more detailed description of the ACCESS_B2I_V3_ID and ACCESS_B2I_V5_ID formats see documentation at top of file.
| |
| writeExternal_v10_2 | back to summary |
|---|---|
| public void writeExternal_v10_2(ObjectOutput out) throws IOException Store the stored representation of the column value in the stream. For more detailed description of the ACCESS_B2I_V3_ID format see documentation at top of file.
| |
| writeExternal_v10_3 | back to summary |
|---|---|
| public void writeExternal_v10_3(ObjectOutput out) throws IOException Store the stored representation of the column value in the stream. For more detailed description of the ACCESS_B2I_V3_ID and ACCESS_B2I_V4_ID formats see documentation at top of file.
| |