org.apache.derby.impl.store.access.conglomerate
Class GenericController

java.lang.Object
  extended by org.apache.derby.impl.store.access.conglomerate.GenericController
Direct Known Subclasses:
GenericConglomerateController, GenericCostController, GenericScanController

abstract class GenericController
extends java.lang.Object


Field Summary
protected  OpenConglomerate open_conglom
          Fields of the class
 
Constructor Summary
GenericController()
           
 
Method Summary
 void checkConsistency()
          Public Methods implementing ConglomerateController which just delegate to OpenConglomerate:
 void close()
           
 void debugConglomerate()
           
 long getEstimatedRowCount()
          Get the total estimated number of rows in the container.
 java.util.Properties getInternalTablePropertySet(java.util.Properties prop)
           
 OpenConglomerate getOpenConglom()
           
protected  void getRowPositionFromRowLocation(RowLocation row_loc, RowPosition pos)
          Private/Protected methods of This class:
 SpaceInfo getSpaceInfo()
           
 void getTableProperties(java.util.Properties prop)
           
 void init(OpenConglomerate open_conglom)
          Public Methods of This class:
 boolean isKeyed()
           
 boolean isTableLocked()
          is the open btree table locked?
 RowLocation newRowLocationTemplate()
           
protected  void queueDeletePostCommitWork(RowPosition pos)
           
 void setEstimatedRowCount(long count)
          Set the total estimated number of rows in the container.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

open_conglom

protected OpenConglomerate open_conglom
Fields of the class

Constructor Detail

GenericController

GenericController()
Method Detail

getRowPositionFromRowLocation

protected void getRowPositionFromRowLocation(RowLocation row_loc,
                                             RowPosition pos)
                                      throws StandardException
Private/Protected methods of This class:

Throws:
StandardException

queueDeletePostCommitWork

protected void queueDeletePostCommitWork(RowPosition pos)
                                  throws StandardException
Throws:
StandardException

init

public void init(OpenConglomerate open_conglom)
          throws StandardException
Public Methods of This class:

Throws:
StandardException

getOpenConglom

public OpenConglomerate getOpenConglom()

checkConsistency

public void checkConsistency()
                      throws StandardException
Public Methods implementing ConglomerateController which just delegate to OpenConglomerate:

Throws:
StandardException

debugConglomerate

public void debugConglomerate()
                       throws StandardException
Throws:
StandardException

getTableProperties

public void getTableProperties(java.util.Properties prop)
                        throws StandardException
Throws:
StandardException

getInternalTablePropertySet

public java.util.Properties getInternalTablePropertySet(java.util.Properties prop)
                                                 throws StandardException
Throws:
StandardException

getSpaceInfo

public SpaceInfo getSpaceInfo()
                       throws StandardException
Throws:
StandardException

close

public void close()
           throws StandardException
Throws:
StandardException

isKeyed

public boolean isKeyed()

newRowLocationTemplate

public RowLocation newRowLocationTemplate()
                                   throws StandardException
Throws:
StandardException

isTableLocked

public boolean isTableLocked()
is the open btree table locked?


getEstimatedRowCount

public long getEstimatedRowCount()
                          throws StandardException
Get the total estimated number of rows in the container.

The number is a rough estimate and may be grossly off. In general the server will cache the row count and then occasionally write the count unlogged to a backing store. If the system happens to shutdown before the store gets a chance to update the row count it may wander from reality.

This call is currently only supported on Heap conglomerates, it will throw an exception if called on btree conglomerates.

Returns:
The total estimated number of rows in the conglomerate.
Throws:
StandardException - Standard exception policy.

setEstimatedRowCount

public void setEstimatedRowCount(long count)
                          throws StandardException
Set the total estimated number of rows in the container.

Often, after a scan, the client of RawStore has a much better estimate of the number of rows in the container than what store has. For instance if we implement some sort of update statistics command, or just after a create index a complete scan will have been done of the table. In this case this interface allows the client to set the estimated row count for the container, and store will use that number for all future references.

This call is currently only supported on Heap conglomerates, it will throw an exception if called on btree conglomerates.

Parameters:
count - the estimated number of rows in the container.
Throws:
StandardException - Standard exception policy.

Built on Thu 2012-03-29 21:53:33+0000, from revision ???

Apache Derby V10.6 Internals - Copyright © 2004,2007 The Apache Software Foundation. All Rights Reserved.