Fennel: Class List (original) (raw)

AbortExcn

Exception class for aborted execution

AggComputer

Abstract base class representing computation of a single aggregate function over a collection of scalar values all having the same group key

AggInvocation

AggInvocation represents one call to an aggregate function

AioLinuxScheduler

AioLinuxScheduler implements DeviceAccessScheduler via Linux-specific kernel-mode libaio calls

AioPollingScheduler

AioPollingScheduler implements DeviceAccessScheduler via Unix aio calls and threads which poll for completion

AioSignalHandlerThread

AioSignalScheduler

AioSignalScheduler implements DeviceAccessScheduler via Unix aio calls and threads which run a signal handler

AtomicCounter

AtomicCounter wraps STL support for atomic increment/decrement

AttributeAccessor

AttributeAccessor defines how to efficiently unmarshal the value of an attribute from a stored tuple

AttributeAccessorImpl

AttributeAccessorImpl is a common base for all implementations of the AttributeAccessor interface

AutoBacktrace

AutoBacktrace provides a handler that intercepts fatal errors, prints a backtrace, and passes on the fatal error to other handlers

Backtrace

A Backtrace represents a backtrace of the run-time stack

Backtrace::LibraryInfo

BacktraceTest

BackupRestorePage

Random access request binding for I/O requests issued during backup/restore

BackupRestoreTest

Unit test for backup and restore of database header pages and a VersionedRandomAllocationSegment

BackupRestoreTest::TestNode

BarrierExecStream

BarrierExecStream is a synchronizing barrier to wait for the completion of several upstream producers and generate a status output for the downstream consumer

BarrierExecStreamParams

BarrierExecStreamParams defines parameters for BarrierExecStream

BernoulliRng

BernoulliRng produces a series of values with a Bernoulli distribution

BernoulliSamplingExecStream

BernoulliSamplingExecStream implements TABLESAMPLE BERNOULLI

BernoulliSamplingExecStreamGenerator

Bernoulli sampling data generator

BernoulliSamplingExecStreamParams

BernoulliSamplingExecStreamParams defines parameters for BernoulliSamplingExecStream

BinaryType

BitAccessor

BitAccessor accesses NOT NULL bit attributes

BitmapInput

Structure containing information about the constructed bitmaps corresponding the inputs and expected result

BoolAnd

BoolEqual

BoolGreater

BoolGreaterEqual

BoolInstruction

BoolInstructionRegister

BoolIs

BoolIsNot

BoolIsNotNull

BoolIsNull

BoolLess

BoolLessEqual

BoolMove

BoolNativeEqual< TMPLT >

BoolNativeGreater< TMPLT >

BoolNativeGreaterEqual< TMPLT >

BoolNativeInstruction< TMPLT >

Support for operators that return booleans, i.e

BoolNativeInstructionRegister

BoolNativeIsNotNull< TMPLT >

BoolNativeIsNull< TMPLT >

BoolNativeLess< TMPLT >

BoolNativeLessEqual< TMPLT >

BoolNativeNotEqual< TMPLT >

BoolNot

BoolNotEqual

BoolOr

BoolPointerEqual< PTR_TYPE >

BoolPointerGreater< PTR_TYPE >

BoolPointerGreaterEqual< PTR_TYPE >

BoolPointerInstruction< PTR_TYPE >

Support for operators that return booleans, i.e

BoolPointerInstructionRegister

BoolPointerIsNotNull< PTR_TYPE >

BoolPointerIsNull< PTR_TYPE >

BoolPointerLess< PTR_TYPE >

BoolPointerLessEqual< PTR_TYPE >

BoolPointerNotEqual< PTR_TYPE >

BoolRef

BoolToNull

BTreeAccessBase

BTreeAccessBase is a base for classes which access BTree contents

BTreeBuilder

BTreeBuilder implements bulk load for BTrees

BTreeBuildLevel

BTreeBuildLevel is subordinate to BTreeBuilder

BTreeCompactNodeAccessor

BTreeCompactNodeAccessor maintains the data on a BTreeNode as a compact array of fixed-length entries, with all free space contiguous at the end of the page

BTreeDescriptor

BTreeDescriptor defines the information required for accessing a BTree

BTreeDuplicateKeyExcn

Exception class for duplicate keys encountered during insert or update

BTreeExecStream

BTreeExecStream is a common base for ExecStream implementations which access BTrees

BTreeExecStreamParams

BTreeExecStreamParams defines parameters common to implementations of BTreeExecStream

BTreeHeapNodeAccessor

BTreeHeapNodeAccessor maintains the data on a BTreeNode using a standard indirection scheme

BTreeInsertExecStream

BTreeInsertExecStream inserts tuples into a BTree, reading them from an upstream stream producer

BTreeInsertExecStreamParams

BTreeInserterParams defines parameters for instantiating a BTreeInserter

BTreeKeyedNodeAccessor< NodeAccessor, KeyAccessor >

BTreeKeyedNodeAccessor is a template for implementing some of the virtual methods in the BTreeNodeAccessor interface

BTreeLeafReader

BTreeLeafReader extends BTreeReader by only doing reads of leaf pages in a btree

BTreeNode

Header stored on each page of a BTree

BTreeNodeAccessor

BTreeNodeAccessor is an abstract base class for accessing the sorted tuple data stored on a BTreeNode

BTreeNonLeafReader

BTreeNonLeafReader extends BTreeReader by only doing reads of non-leaf pages in a btree

BTreeOwnerRootMap

BTreeParams

BTreeParams defines parameters used when accessing btrees

BTreePrefetchSearchExecStream

BTreePrefetchSearchExecStream extends BTreeSearchExecStream by pre-fetching index leaf pages

BTreePrefetchSearchExecStreamParams

BTreePrefetchSearchExecStreamParams defines parameters for instantiating a BTreePrefetchSearchExecStream

BTreePrefetchSearchKey

Structure used to store the search key information that was used to locate a pre-fetched btree leaf page

BTreeReader

BTreeReader provides read-only access to the contents of a BTree

BTreeReader::NullPageStack

Dummy stack implementation used when we don't care about keeping track of PageId's on the way down

BTreeReadersTest

This test unit tests the BTreeNonLeafReader and BTreeLeafReader classes

BTreeReadersTest::LeafRecord

BTreeReadExecStream

BTreeReadExecStream is an abstract base class for ExecStream implementations which project a stream of tuples via a BTreeReader

BTreeReadExecStreamParams

BTreeReadExecStreamParams defines parameters for instantiating a BTreeReadExecStream

BTreeRecoveryFactory

BTreeRecoveryFactory implements the LogicalTxnParticipantFactory interface by constructing BTreeWriters to be used for recovery

BTreeScanExecStream

BTreeScanExecStream reads all data from a BTree

BTreeScanExecStreamParams

BTreeScanExecStreamParams defines parameters for instantiating a BTreeScanExecStream

BTreeSearchExecStream

BTreeSearchExecStream reads keys from a child and returns matching tuples in the BTree

BTreeSearchExecStreamParams

BTreeSearchExecStreamParams defines parameters for instantiating a BTreeSearchExecStream

BTreeSearchKeyParameter

Structure used to store information about dynamic parameters used in the btree search

BTreeSearchUniqueExecStream

BTreeSearchUniqueExecStream is a specialization of BTreeSearchExecStream for the case where it is known that each search is guaranteed to find at most one match

BTreeSortExecStream

BTreeSortExecStream sorts its input stream according to a parameterized key and returns the sorted data as its output, using a BTree to accomplish the sort

BTreeSortExecStreamParams

BTreeSortExecStreamParams defines parameters for instantiating a BTreeSortExecStream

BTreeStatistics

BTreeStatistics is used to return information about the tree computed as a side-effect of verification

BTreeTest

BTreeTest::Record

BTreeTxnTest

BTreeTxnTest::Record

BTreeTxnTest::TestThreadData

BTreeVerifier

BTreeVerifier checks BTree integrity

BTreeWriter

BTreeWriter extends BTreeReader to provide read-write access to the contents of a BTree

ByteArrayInputStream

ByteArrayInputStream implements the ByteInputStream interface by reading data from an existing fixed-size array of bytes

ByteArrayOutputStream

ByteArrayOutputStream implements the ByteOutputStream interface by writing data to an existing fixed-size array of bytes

ByteBuffer

ByteBuffer allows access to an array of buffers as a single memory space

ByteInputStream

ByteInputStream defines an interface for reading from a stream of bytes

ByteOutputStream

ByteOutputStream defines an interface for writing to a stream of bytes

ByteStream

ByteStream is a common base class for ByteInputStream and ByteOutputStream

ByteStreamMarker

ByteStreamMarker is an opaque position within a ByteStream

ByteWindow< IndexT >

ByteWindow represents a window into a large array of bytes

Cache

Cache defines an abstract interface for caching pages of devices

CacheAccessor

CacheAccessor defines the subset of the Cache interface used for accessing cache pages

CacheAllocator

CacheAllocator defines an interface for allocating memory pages to be used by the cache

CacheImpl< PageT, VictimPolicyT >

CacheImpl is a template implementation of the Cache interface

CachePage

CachePage is a descriptor for the state of a page of cache memory

CacheParams

CacheParams defines parameters used to instantiate a Cache

CacheStats

CacheStats defines performance/activity statistics collected by the cache; these can be obtained as a snapshot from Cache::collectStats()

CacheTest

CacheTest exercises the entire Cache interface in both single-threaded and multi-threaded modes

CacheTestBase

CacheTestBase is a common base for any test which depends on the Cache interface

CalcAssembler

The CalcAssembler is responsible for taking a textual representation of a calculator program and forming a calculator

CalcAssemblerException

A CalcAssemblerException represents a exception generated by the CalcAssembler while assembling a calculator program

CalcAssemblerTest

CalcAssemblerTestCase

CalcCastTest

CalcChecker

CalcExcn

Exception class for errors encountered during calculator execution

CalcExecStream

CalcExecStream reads tuples from a child stream and performs calculations of SQL expressions

CalcExecStreamParams

CalcExecStreamParams defines parameters for instantiating a CalcExecStream

CalcExecStreamTestSuite

CalcExecStreamTestSuite tests the CalcExecStream

CalcExtCastTest

CalcExtContextTest

CalcExtDateTimeTest

CalcExtDynamicVariableTest

CalcExtMathTest

CalcExtRegExpTest

CalcExtStringTest

CalcExtWinAggFuncTest

CalcInit

CalcInstFactoryTest

CalcLexer

CalcLexer is the scanner class used by the assembler to tokenize a calculator program

CalcMessage

An object for passing warning and error messages from execution

CalcMiscTest

CalcTestInfo< T >

CalcTokenUnion

CalcTokenUnion is an union of the possible basic types that a token/expression can be in the calculator grammar

CalcTokenValue

CalcTokenValue is the data type of the sematic values of the tokens

Calculator

CalcYYLocType

CalcYYLocType provides the location of the token or expression being parsed

CartesianJoinExecStream

CartesianJoinExecStream produces the Cartesian product of two input streams

CartesianJoinExecStreamParams

CartesianJoinExecStreamParams defines parameters for instantiating a CartesianJoinExecStream

CastCast< RESULT_T, SOURCE_T >

CastInstruction< RESULT_T, SOURCE_T >

Instructions that cast between types

CastInstructionRegister

CharType

CheckpointProvider

CheckpointProvider defines an interface for requesting a checkpoint

CheckpointThread

CheckpointThread is dedicated to listening for checkpoint requests and carrying them out

CircularBuffer< T >

A circular buffer containing a maximum of N entries of type T

CircularBufferIter< T >

Iterator over a circular buffer

CircularSegment

CircularSegment implements circular page allocation in terms of an underlying LINEAR_ALLOCATION segment

ClosableObject

ClosableObject is a common base for all classes which require a close() method to be called before destruction (e.g

ClosableObjectDestructor

A destructor functor for use as the "D" parameter to a boost::shared_ptr constructor

ClusterPageData

Information about the cluster page

CmdInterpreter

CmdInterpreter interprets command objects received via JNI from Farrago

CmdInterpreter::DbHandle

Handle type for a database

CmdInterpreter::ExecutionHandle

Handle type for storing execution state information

CmdInterpreter::StreamGraphHandle

CmdInterpreter::TxnHandle

Handle type which combines a database with a txn

CollectExecStream

CollectExecStream reads all tuples from a child stream and collects them into a single tuple which is written to one output tuple

CollectExecStreamParams

CollectExecStreamParams defines parameters for instantiating a CollectExecStream

CollectExecStreamTestSuite

Test Suite for the collect/uncollect xo's

ColumnGenerator< T >

Column generator

CompositeExecStreamGenerator

Generates a result set consisting of columns each generated by its own generator

CompoundId

CompoundId is a collection of static methods for manipulating PageIds, BlockIds, and SegByteIds

ConduitExecStream

ConduitExecStream is an abstract base for any ExecStream with exactly one input and one output

ConduitExecStreamParams

ConduitExecStreamParams defines parameters for ConduitExecStream

ConfigMap

ConfigMap defines a simple container for configuration parameter/value pairs

ConfluenceExecStream

ConfluenceExecStream is an abstract base for any ExecStream with multiple inputs and exactly one output

ConfluenceExecStreamParams

ConfluenceExecStreamParams defines parameters for ConfluenceExecStream

ConstColumnGenerator

Constant column generator

ConstExecStreamGenerator

CopyExecStream

CopyExecStream is an adapter for converting the output of a BUFPROV_PRODUCER producer stream for use by a BUFPROF_CONSUMER consumer stream

CopyExecStreamParams

CopyExecStreamParams defines parameters for CopyExecStream

Correlation

Mapping an id to an left input column

CorrelationJoinExecStream

CorrelationJoinExecStream produces a join of two input streams

CorrelationJoinExecStreamParams

CorrelationJoinExecStreamParams defines parameters for instantiating a CorrelationJoinExecStream

CorrelationJoinExecStreamTestSuite

CountAggComputer

CountAggComputer is an abstract base for computing COUNT()

CountNullableAggComputer

CountNullableAggComputer computes COUNT(X), which does not count tuples for which X IS NULL

CountStarAggComputer

CountStarAggComputer computes COUNT(*), which counts tuples without regard for null values

CrcSegInputStream

CrcSegInputStream extends SegInputStream by verifying checksum information on each page read

CrcSegOutputStream

CrcSegOutputStream extends SegOutputStream by stamping each page with a CRC/PseudoUuid/PageId combination

Database

Database defines the top-level database object, which is the unit of self-contained storage and recovery

DatabaseHeader

Header stored in the first two pages of a Database data file

DatabaseTest

DatabaseTest::TestNode

DataFormatExcn

Exception class for incompatible data format errors

DataVisitor

Visitor interface for dump/check/repair functions

DelegatingCacheAccessor

DelegatingCacheAccessor is a common base class for all implementations of CacheAccessor which delegate part of their behavior to another underlying CacheAccessor

DelegatingSegment

DelegatingSegment is a common base class for all Segments which delegate part of their behavior to another underlying Segment

DeviceAccessScheduler

DeviceAccessScheduler is an interface representing the ability to initiate access requests on devices and handle their completions asynchronously

DeviceAccessSchedulerParams

DeviceAccessSchedulerParams defines parameters used to create a DeviceAccessScheduler

DeviceDesign

DeviceIdPagePredicate

DeviceIdPagePredicate is an implementation of PagePredicate which returns true for pages mapped to a given DeviceId

DeviceMode

DfsTreeExecStreamScheduler

DfsTreeExecStreamScheduler is a reference implementation of the ExecStreamScheduler interface

DiffluenceExecStream

DiffluenceExecStream is an abstract base for any ExecStream with multiple outputs and exactly one input

DiffluenceExecStreamParams

DiffluenceExecStreamParams defines parameters for DiffluenceExecStream

DoubleBufferExecStream

DoubleBufferExecStream is an adapter for converting the output of an upstream BUFPROV_CONSUMER producer for use by a downstream BUFPROV_PRODUCER consumer, with support for the producer and consumer executing in parallel

DoubleBufferExecStreamParams

DoubleBufferExecStreamParams defines parameters for DoubleBufferExecStream

DupColumnGenerator

Duplicate column generator

DupRepeatingSeqColumnGenerator

A duplicating repeating column sequence generator

DynamicBuildLevel

DynamicDelegatingSegment

DynamicDelegatingSegment is similar to DelegatingSegment, except the delegating segment can be dynamically changed during the life of the segment

DynamicParam

Dynamic parameters are parameters (physically tuples) shared amongst streams

DynamicParamExecStreamGenerator

Outputs the value of a specified dynamic param, reinterpreted as int64_t

DynamicParamManager

DynamicParamManager defines methods to allocate, access, and deallocate dynamic parameters

EICtx

ErrorSource

ErrorSource is a common base for all classes that post row exceptions to an ErrorTarget

ErrorTarget

ErrorTarget defines an interface for receiving Fennel row errors

ExecStream

ExecStream defines an abstract base for all execution objects which process streams of data

ExecStreamBufAccessor

ExecStreamBufAccessor defines access to the buffer memory via which ExecStreams transfer data

ExecStreamBuilder

ExecStreamBuilder builds a prepared ExecStreamGraph from its Java representation

ExecStreamDesign

ExecStreamEmbryo

ExecStreamEmbryo encapsulates the "embryonic" state of an ExecStream in which it has been created, and thus has a definite type, and also has all of its parameters defined; but its prepare() method has not yet been called

ExecStreamFactory

ExecStreamFactory builds an ExecStreamEmbryo from the Java representation of a stream definition

ExecStreamGovernor

ExecStreamGovernor defines an abstract base for determining resource allocation for an execution stream graph as well as the individual execution streams within the graph

ExecStreamGovernorTest

Testcase for the exec stream resource governor

ExecStreamGraph

An ExecStreamGraph is a directed graph representing dataflow among ExecStreams

ExecStreamGraphEmbryo

ExecStreamGraphEmbryo encapsulates the "embryonic" state of an ExecStreamGraph as its constituent embryonic streams are built up

ExecStreamGraphImpl

ExecStreamGraphImpl is an implementation for the ExecStreamGraph interface based on the boost graph template

ExecStreamGraphImpl::DotEdgeRenderer

ExecStreamGraphImpl::DotGraphRenderer

ExecStreamGraphImpl::DotVertexRenderer

ExecStreamGraphImpl::DynamicParamInfo

ExecStreamGraphImpl::ExplicitEdgePredicate

ExecStreamHowTo

ExecStreamHowTo is a guide to writing new implementations of the ExecStream interface and plugging them into Farrago

ExecStreamParams

Common parameters for instantiating any ExecStream

ExecStreamQuantum

ExecStreamQuantum defines the quantum for scheduling of an ExecStream

ExecStreamResourceKnobs

ExecStreamResourceKnobs is a structure that stores the settings of the different knobs that are used to determine exec stream resource allocation

ExecStreamResourceQuantity

ExecStreamResourceQuantity quantifies various resources which can be allocated to an ExecStream

ExecStreamResourceRequirements

Structure used to track the resource requirements for a single stream

ExecStreamScheduler

ExecStreamScheduler defines an abstract base for controlling the scheduling of execution streams

ExecStreamSubFactory

ExecStreamSubFactory_lu

ExecStreamTestBase

ExecStreamTestBase is a common base for tests of ExecStream implementations

ExecStreamTestSuite

ExecStreamTestSuite tests various implementations of ExecStream

ExecStreamUnitTestBase

ExecStreamUnitTestBase extends ExecStreamTestBase to be the common base of the unit tests of ExecStreams which assume a single stream graph

ExtendedInstruction

Base class for all extended instructions

ExtendedInstruction0

Extended instruction which takes 0 parameters and is implemented using a functor

ExtendedInstruction0Context

Extended instruction which takes 0 parameters and is implemented using a functor

ExtendedInstruction1< T0 >

Extended instruction which takes 1 parameter and is implemented using a functor

ExtendedInstruction1Context< T0 >

Extended instruction which takes 1 parameter and is implemented using a functor

ExtendedInstruction2< T0, T1 >

Extended instruction which takes 2 parameters and is implemented using a functor

ExtendedInstruction2Context< T0, T1 >

Extended instruction which takes 2 parameters and is implemented using a functor

ExtendedInstruction3< T0, T1, T2 >

Extended instruction which takes 3 parameters and is implemented using a functor

ExtendedInstruction3Context< T0, T1, T2 >

Extended instruction which takes 3 parameters and is implemented using a functor

ExtendedInstruction4< T0, T1, T2, T3 >

Extended instruction which takes 4 parameters and is implemented using a functor

ExtendedInstruction4Context< T0, T1, T2, T3 >

Extended instruction which takes 4 parameters and is implemented using a functor

ExtendedInstruction5< T0, T1, T2, T3, T4 >

Extended instruction which takes 5 parameters and is implemented using a functor

ExtendedInstruction5Context< T0, T1, T2, T3, T4 >

Extended instruction which takes 5 parameters and is implemented using a functor

ExtendedInstructionContext

A abstract base class for Extended Instructions that wish to store context between exec() calls

ExtendedInstructionDef

Describes an extended instruction

ExtendedInstructionHowTo

ExtendedInstructionTable

A singleton mapping of ExtendedInstruction signatures to ExtendedInstruction functors

ExtentAllocationNode

ExtentAllocationNode is the allocation map for one extent in a RandomAllocationSegment

ExternalSortExecStream

ExternalSortExecStream sorts its input stream according to a parameterized key and returns the sorted data as its output

ExternalSortExecStreamImpl

ExternalSortExecStreamImpl implements the ExternalSortExecStream interface

ExternalSortExecStreamParams

ExternalSortExecStreamParams defines parameters for instantiating an ExternalSortExecStream

ExternalSortExecStreamTest

ExternalSortFetchArray

Data structure used for array fetch when reading from substreams

ExternalSortInfo

Global information shared with sorter sub-components

ExternalSortMergeInfo

TODO: doc

ExternalSortMerger

ExternalSortMerger manages the process of merging stored runs

ExternalSortOutput

ExternalSortMerger marshals XO output buffers by fetching from a top-level ExternalSortSubStream

ExternalSortRunAccessor

ExternalSortRunAccessor manages I/O for storing runs and reading them back

ExternalSortRunLoader

ExternalSortRunLoader manages the state of a run as it is being loaded and sorted in memory

ExternalSortSubStream

Fetch interface implemented by sorter subcomponents which return intermediate results

ExternalSortTask

ExternalSortTask represents a task entry in the queue serviced by the parallel sorter's thread pool

ExtRegExpContext

ExtremeAggComputer

ExtremeAggComputer computes MIN/MAX, ignoring null values but returning null if the input is empty

FemVisitor

FennelExcn

Base class for all Fennel exceptions

fennel::FennelResource

FileDevice

FileDevice is a base class for devices built atop the OS file system

FileStatsTarget

FileStatsTarget implements the StatsTarget interface by writing to a simple text file

FileSystem

FileSystem provides some static utility methods for manipulating the OS file system

FixedBuildLevel

FixedOffsetVarWidthAccessor< network >

FixedOffsetVarWidthAccessor accesses the first variable-width attribute if it is NOT NULL

FixedWidthAccessor

FixedWidthAccessor accesses NOT NULL fixed width attributes

FixedWidthNetworkAccessor16

FixedWidthNetworkAccessor16 accesses NOT NULL fixed width 16-bit attributes in network byte order

FixedWidthNetworkAccessor32

FixedWidthNetworkAccessor32 accesses NOT NULL fixed width 32-bit attributes in network byte order

FixedWidthNetworkAccessor64

FixedWidthNetworkAccessor64 accesses NOT NULL fixed width 64-bit attributes in network byte order

FlatFileBuffer

FlatFileBuffer provides data for FlatFileExecStream

FlatFileColumnDescriptor

Describes characteristics of a column to be parsed

FlatFileColumnParseResult

Result of scanning for a column in a flat file format buffer

FlatFileExecStream

FlatFileExecStream parses a text file and produces tuples according to a specified column format

FlatFileExecStreamImpl

FlatFileExecStreamImpl implements the FlatFileExecStream interface

FlatFileExecStreamParams

FlatFileExecStreamParams defines parameters for instantiating a FlatFileExecStream

FlatFileExecStreamTest

FlatFileParser

This class parses fields and rows from a field delimited text buffer

FlatFileRowDescriptor

Describes a vector of columns to be parsed

FlatFileRowParseResult

Result of scanning for a row in a flat file format buffer

foo

FtrsTableIndexWriter

FtrsTableIndexWriterParams

FtrsTableWriter

FtrsTableWriter performs inserts, updates, and deletes on the indexes making up a table

FtrsTableWriterExecStream

FtrsTableWriterExecStream reads tuples from a child stream and uses them to write to all of the indexes making up a table (either INSERT or DEELETE depending on prepared parameters)

FtrsTableWriterExecStreamParams

FtrsTableWriterExecStreamParams defines parameters for instantiating a FtrsTableWriterExecStream

FtrsTableWriterFactory

FtrsTableWriterFactory implements the LogicalTxnParticipantFactory interface by constructing FtrsTableWriters to be used for recovery

FtrsTableWriterParams

FtrsTableWriterParams defines parameters for instantiating a FtrsTableWriter

FunctorExtendedInstructionDef< T >

Definition of an extended instruction based upon a functor

FuzzyCheckpointSet

FuzzyCheckpointSet keeps track of dirty pages at the time of a checkpoint

GroupLock

GroupLock is a synchronization object for enforcing mutual exclusion among an indefinite number of groups with indefinite cardinalities

std::hash< fennel::OpaqueInteger< T, Dummy > >

InputData

Structure for passing input data corresponding to bitmap inputs and expected result

Instruction

InstructionArgs

InstructionDescription

Description of an instruction

InstructionFactory

Dynamically create Instruction objects given an InstructionDescription description of the desired Instruction

InstructionRegister

Provide a method to register Instruction objects into the Instruction Factory

InstructionSignature

IntegralNativeAnd< TMPLT >

IntegralNativeInstruction< TMPLT >

IntegralNativeInstruction_NotAnIntegralType< char >

IntegralNativeInstruction_NotAnIntegralType< int >

IntegralNativeInstruction_NotAnIntegralType< long >

IntegralNativeInstruction_NotAnIntegralType< long long >

IntegralNativeInstruction_NotAnIntegralType< short >

IntegralNativeInstruction_NotAnIntegralType< signed char >

IntegralNativeInstruction_NotAnIntegralType< unsigned char >

IntegralNativeInstruction_NotAnIntegralType< unsigned int >

IntegralNativeInstruction_NotAnIntegralType< unsigned long >

IntegralNativeInstruction_NotAnIntegralType< unsigned long long >

IntegralNativeInstruction_NotAnIntegralType< unsigned short >

IntegralNativeInstructionRegister

IntegralNativeMod< TMPLT >

IntegralNativeOr< TMPLT >

IntegralNativeShiftLeft< TMPLT >

IntegralNativeShiftRight< TMPLT >

IntegralPointerInstruction< PTR_TYPE >

PointerSizeT is the only valid result type defined for IntegralPointerInstruction

IntegralPointerInstructionRegister

IntrusiveDListIter< T >

Iterator over an intrusive doubly-linked list

IntrusiveDListNode

A link in an intrusive doubly-linked list

IntrusiveList< T, DerivedListNode >

IntrusiveList is a singly-linked list which requires its elements to derive from IntrusiveListNode (endowing them with the required forward links)

IntrusiveListIter< T, DerivedListNode >

IntrusiveListIter is the companion iterator for InstrusiveList

IntrusiveListMutator< T, DerivedListNode >

IntrusiveListMutator is the companion mutator for InstrusiveList

IntrusiveListNode

See class IntrusiveList for details

IntrusiveTwoDListIter< ElementT, ReturnT >

Iterator over two intrusive doubly-linked lists

InvalidParamExcn

Exception class for invalid parameter settings

InvalidTypeException

Exception indicating an invalid type

InvalidValueException< T >

Exception indicating a type/value mismatch

IoCompletionPortScheduler

IoCompletionPortScheduler implements DeviceAccessScheduler via the Win32 IoCompletionPort facility

IoCompletionPortThread

JavaErrorTarget

JavaErrorTarget implements ErrorTarget by calling back into the Farrago error handling facility

JavaExcn

Exception class for wrapping Java exceptions

JavaSinkExecStream

JavaSinkExecStream reads its tuples from an upstream execution object and pumps them into Java

JavaSinkExecStreamParams

JavaSinkExecStreamParams defines parameters for instantiating a JavaSinkExecStream

JavaThreadTracker

JavaThreadTracker implements ThreadTracker by attaching and detaching the Java environment

JavaTraceTarget

JavaTraceTarget implements TraceTarget by calling back into the java.util.logging facility

JavaTransformExecStream

JavaTransformExecStream represents a sequence of Java transforms encapsulated within a Fennel ExecStream

JavaTransformExecStreamParams

JniEnvAutoRef

An implementation of JniEnvRef which can be used in contexts where no JNIEnv is available yet

JniEnvRef

Wrapper for a JNIEnv pointer

JniExceptionChecker

Helper for JniEnvRef

JniLocalRefReaper

Guard for deleting a local ref automatically on unwind

JniProxy

JniProxy is the virtual base class for all generated proxies

JniProxyIter< T >

JniProxyIter is used to access a JniProxy by reference

JniProxyVisitor

JniProxyVisitor is the base for all classes which need to visit one or more instances of JniProxy polymorphically

JniProxyVisitTable< Visitor >

JniProxyVisitTable implements a template-driven dispatch table for binding proxy types to visit methods

JniProxyVisitTable< Visitor >::VisitorMethodImpl< ProxyImpl >

Functor implementation binding a JniProxy subclass (instantiating ProxyImpl) to a Visitor::visit method

JniProxyVisitTableBase

JniProxyVisitTableBase::VisitorMethod

Abstract functor for calling the correct visit method

JniPseudoUuidGenerator

JniUtil

Static utility methods for dealing with JNI

JniUtilParams

JniUtilParams defines parameters used to configure JniUtil

Jump

JumpFalse

JumpInstruction

JumpInstructionRegister

JumpNotNull

JumpNull

JumpTrue

LbmBitOpExecStream

LbmBitOpExecStream is a base class for implementing bit operation execution streams that read from N input streams

LbmBitOpExecStreamParams

LbmBitOpExecStreamParams defines parameters for instantiating a LbmBitOpExecStream

LbmByteSegment

This class encapsulates a single byte segment, as opposed to a tuple which contains a set of them

LbmChopperExecStream

LbmChopperExecStream splits up tuples whose decompressed representations are too large to fit into the memory of associated streams

LbmChopperExecStreamParams

LbmChopperExecStreamParams defines parameters for instantiating a LbmChopperExecStream

LbmDeletionIndexReader

LbmBTreeRidReader is a class for reading RIDs from a deletion index

LbmEntry

Class implementing bitmap index entries

LbmEntryDump

Class used to dump the contents of a LbmEntry

LbmEntryInfo

Structure that associates a scratch buffer with each bitmap entry under construction

LbmEntryTest

Testcase for LbmEntry class

LbmExecStreamTestBase

LbmExecStreamTestBase is the base class for tests of bitmap exec streams

LbmGeneratorExecStream

LbmGeneratorExecStream reads the column store clusters corresponding to the columns of an index, and creates bitmap entries for those rows

LbmGeneratorExecStreamParams

LbmIntersectExecStream

LbmIntersectExecStream is the execution stream used to perform intersection on two or more bitmap stream inputs

LbmIntersectExecStreamParams

LbmIntersectExecStreamParams defines parameters for instantiating a LbmIntersectExecStream

LbmIntersectExecStreamTest

Testcase for Intersect exec stream

LbmIterableRidReader

LbmIterableRidReader provides an iterator interface to a rid reader

LbmLoadBitmapTest

Testcase for loading multiple clusters

LbmMinusExecStream

LbmMinusExecStream is the execution stream that subtracts from the first bitmap input stream, the bitmap streams from the remaining inputs

LbmMinusExecStreamParams

LbmMinusExecStreamParams defines parameters for instantiating a LbmMinusExecStream

LbmMinusExecStreamTest

Testcase for Minus exec stream

LbmNormalizerExecStream

The bitmap normalizer stream expands bitmap data to tuples

LbmNormalizerExecStreamParams

This structure defines parameters for instantiating an LbmNormalizerExecStream

LbmNormalizerExecStreamTest

Test case for LbmNormalizerExecStream

LbmNumberStreamInput

Combines a NumberStream with other attributes used to make test data

LbmReaderTest

Test for bitmap tuple and rid reader classes

LbmRepeatingAggComputer

LbmRepeatingAggComputer is an aggregate computer that wraps another aggregate computer

LbmRidReader

LbmRidReader provides an interface for reading RIDs from an input stream

LbmRidReaderBase

LbmRidReaderBase provides an interace for reading RIDs from bit segments

LbmSearchExecStream

LbmSearchExecStream is the execution stream used for scanning bitmap indexes

LbmSearchExecStreamParams

LbmSearchExecStreamParams defines parameters for instantiating a LbmSearchExecStream

LbmSearchTest

Testcase for scanning a single bitmap index using equality search on all index keys

LbmSegment

Class implementing bitmap segments

LbmSegmentReader

LbmSegmentReader provides the interace necessary to read bit segments

LbmSegmentReaderBase

LbmSegmentReaderBase provides the base class for reading from bitmap segments

LbmSegmentWriter

LbmSegmentWriter constructs a bitmap segment by utilizing LbmEntry to write out individual byte segments

LbmSeqSegmentReader

LbmSeqSegmentReader provides the interace necessary to read byte segments sequentially

LbmSingleTupleReader

LbmSingleTupleReader is a class satisyfing the bitmap tuple reader interface for a single input tuple

LbmSortedAggExecStream

LbmSortedAggExecStream aggregates its input, producing tuples with aggregate computations as output

LbmSortedAggExecStreamParams

LbmSortedAggExecStreamParams defines parameters for LbmSortedAggExecStream

LbmSortedAggExecStreamTest

Test case for LbmSortedAggExecStream

LbmSplicerExecStream

LbmSplicerExecStream takes as input a stream of bitmap entries

LbmSplicerExecStreamParams

LbmSplicerExecStreamTest

Testcase for splicer exec stream

LbmStreamTupleReader

LbmStreamTupleReader is a base class for reading bitmap tuples from an input stream

LbmTupleReader

LbmTupleReader is an interface for reading bitmap tuples

LbmTupleRidReader

LbmTupleRidReader is a class for reading rids from bitmap tuples

LbmUnionExecStream

LbmUnionExecStream is the execution stream used to perform a union on a stream of overlapping bitmap tuple

LbmUnionExecStreamParams

LbmUnionExecStreamParams defines parameters for instantiating a LbmUnionExecStream

LbmUnionExecStreamTest

LbmUnionWorkspace

The union workspace merges byte segments

LcsBatchDir

Batch directory representing each batch within a cluster

LcsClusterAccessBase

LcsClusterAccessBase is a base for classes which access cluster pages

LcsClusterAppendExecStream

Given a stream of tuples corresponding to the column values in a cluster, loads the cluster pages

LcsClusterAppendExecStreamParams

LcsClusterAppendExecStreamTest

LcsClusterDump

Class used to dump the contents of a cluster page using fennel trace

LcsClusterNode

Header stored on each page of a cluster

LcsClusterNodeWriter

Constructs a cluster page, managing the amount of space currently in use on the page and determining the offsets where different elements are to be stored

LcsClusterReader

Reads blocks from a single cluster

LcsClusterReplaceExecStream

Given a stream of tuples corresponding to the column values in a cluster, creates a new cluster, replacing the pre-existing cluster with the new input tuples

LcsClusterReplaceExecStreamParams

LcsClusterReplaceExecStreamTest

Test class for exercising LcsClusterReplaceExecStream

LcsClusterScanDef

Represents a single cluster in a table cluster scan

LcsClusterVerifier

LcsClusterVerifier is a class for verifying cluster pages

LcsColumnReader

Reads RIDs from a single cluster

LcsCompare

Theis class is passed to std::sort

LcsCompareColKeyUsingOffsetIndex

This class implements the compare logic to sort the indices to the key offset vector, by comparing the data values stored at thse offsets

LcsHash

LcsHash class is used by LcsclusterAppendExecStream

LcsHashTable

LcsHashTable implements a hash table that fits the hash entries and the overflow nodes into one scratch buffer of size hashBlockSize

LcsHashValOrd

This class implements the hash value ordinal which is the index into the hash value nodes array stored in LcsHashTable class

LcsHashValueNode

LcsHashValNode contains information on every value inserted into the hash table

LcsMultiClusterAppendTest

Testcase for loading multiple clusters

LcsResidualColumnFilters

LcsResidualFilter

Local data structure for a column filter

LcsRidRun

Structure representing a contiguous run of rids that need to be read

LcsRowScanBaseExecStream

Implements basic elements required to scan clusters in an exec stream

LcsRowScanBaseExecStreamParams

Indicates the clustered indexes that need to be read to scan a table and the columns from the clusters that need to be projected in the scan result

LcsRowScanExecStream

Given a stream of RIDs, performs a table scan for those RIDs using the appropriate clustered indexes defined on the table

LcsRowScanExecStreamParams

Parameters specific to the row scan execution stream, including the type of scan (full table scan versus specific rid reads) and whether residual filtering should be performed

LcsRowScanExecStreamTest

Testcase for scanning multiple clusters

LcsUndoType

Context for undoing the most recent insert into LcsHash

LhxAggExecStream

LhxAggExecStream aggregates its input, producing tuples of aggregate function computations as output

LhxAggExecStreamParams

LhxAggExecStreamParams defines parameters for SortedAggExecStream

LhxAggExecStreamTest

LhxHashBlockAccessor

LhxHashDataAccessor

LhxHashGenerator

A hash function generator class that uses different seed values for each level, so that with the same key, different hash values are generated for different levels

LhxHashInfo

Information common to all hash execution components: join, aggregate

LhxHashKeyAccessor

LhxHashNodeAccessor

Class implementing the hash table used in Hybrid Hash Join

LhxHashTable

LhxHashTableDump

Class to use to dump the content of a LhxHashTable

LhxHashTableReader

LhxHashTableTest

Testcase for inserting into hash table

LhxJoinExecStream

LhxJoinExecStreamParams

LhxJoinExecStream matches two input streams by using a hash table built from one of the inputs(usually the smaller input)

LhxJoinExecStreamTest

LhxPartition

Classes to manage hash join partitions in memory and on disk

LhxPartitionInfo

LhxPartitionReader

LhxPartitionWriter

LhxPlan

LibraryDesign

LinearDeviceSegment

LinearDeviceSegment is an implementation of Segment in terms of a contiguous range of pages of a single underlying RandomAccessDevice

LinearDeviceSegmentParams

LinearDeviceSegmentParams defines initialization parameters for LinearDeviceSegment

LinearDeviceSegmentTest

LinearViewSegment

LinearViewSegment is an implementation of Segment in terms of an underlying Segment, which must support the get/setPageSuccessor interface

LinearViewSegmentTest

LocalConditionTest

Locale

LockHolderId

LockHolderId encapsulates the identity of an entity which can hold a lock, currently either a transaction or a thread

LogicalRecoveryLog

LogicalRecoveryLog is the recovery-time counterpart to the online LogicalTxnLog

LogicalRecoveryTxn

LogicalRecoveryTxn implements recovery for transactions previously logged via LogicalTxn

LogicalTxn

LogicalTxn represents a transaction implemented via a logical logging strategy

LogicalTxnActionHeader

Logged header for a single logical action

LogicalTxnEventMemento

Log record describing a transaction event

LogicalTxnLog

LogicalTxnLog defines the log structure used by LogicalTxn to record transaction data

LogicalTxnLogCheckpointMemento

Global information recorded during LogicalTxnLog::checkpoint; this is all the information needed to begin recovery

LogicalTxnParticipant

LogicalTxnParticipant defines an interface which must be implemented by any object which is to participate in a LogicalTxn

LogicalTxnParticipantFactory

LogicalTxnParticipantFactory defines an interface for reconstructing instances of LogicalTxnParticipant during recovery

LogicalTxnSavepoint

LogicalTxnSavepoint defines all state for a savepoint within a LogicalTxn

LogicalTxnTest

LRUPage

LRUVictim

LRUVictim is the attributes class which must be a base for any CachePage type which will be cached using an LRUVictimPolicy

LRUVictimPolicy< PageT >

LRUVictimPolicy implements the least-recently-used policy for cache victimization

MappedPageListener

MappedPageListener defines an interface which allows a derived class to receive notifications of events on mapped pages

MappedPageListenerPredicate

MappedPageListenerPredicate is an implementation of PagePredicate which returns true for pages with a given MappedPageListener

MaxU

MergeExecStream

MergeExecStream produces the UNION ALL of any number of inputs

MergeExecStreamParams

MergeExecStreamParams defines parameters for instantiating a MergeExecStream

MixedDupColumnGenerator

Mixed Duplicate column generator

MockConsumerExecStream

MockConsumerExecStream consumes data from a single input

MockConsumerExecStreamParams

MockConsumerExecStreamParams defines parameters for MockConsumerExecStream

MockProducerExecStream

MockProducerExecStream generates mock data

MockProducerExecStreamGenerator

MockProducerExecStreamGenerator defines an interface for generating a data stream

MockProducerExecStreamParams

MockProducerExecStreamParams defines parameters for MockProducerExecStream

MockResourceExecStream

MockResourceExecStream is an exec stream that simply allocates scratch pages

MockResourceExecStreamParams

MockSegPageEntryIterSource

A mock SegPageEntryIterSource that pre-fetches every other page, returning each page twice

ModifiedAllocationNode

ModifiedAllocationNode is a structure that keeps track of the temporary page corresponding to a modified allocation node

ModifiedPageEntry

ModifiedPageEntry is a structure that keeps track of the number of updates made to the page entry and extent entry corresponding to a page

NativeAdd< TMPLT >

NativeDiv< TMPLT >

NativeInstruction< TMPLT >

NativeInstruction_NotANativeType< char >

NativeInstruction_NotANativeType< double >

NativeInstruction_NotANativeType< float >

NativeInstruction_NotANativeType< int >

NativeInstruction_NotANativeType< long >

NativeInstruction_NotANativeType< long long >

NativeInstruction_NotANativeType< short >

NativeInstruction_NotANativeType< signed char >

NativeInstruction_NotANativeType< unsigned char >

NativeInstruction_NotANativeType< unsigned int >

NativeInstruction_NotANativeType< unsigned long >

NativeInstruction_NotANativeType< unsigned long long >

NativeInstruction_NotANativeType< unsigned short >

NativeMove< TMPLT >

NativeMul< TMPLT >

NativeNativeInstruction< TMPLT >

NativeNativeInstructionRegister

NativeNeg< TMPLT >

NativeRef< TMPLT >

NativeRound< TMPLT >

NativeRoundHelp< TMPLT >

NativeRoundHelp< double >

NativeRoundHelp< float >

NativeSub< TMPLT >

NativeToNull< TMPLT >

NestedLoopJoinExecStream

NestedLoopJoinExecStream performs a nested loop join between two inputs by iterating over the first input once and opening and re-iterating over the second input for each tuple from the first

NestedLoopJoinExecStreamParams

NestedLoopJoinExecStream defines parameters for instantiating a NestedLoopJoinExecStream

NestedLoopJoinKey

Dynamic parameter used to pass a join key value from the left input to the right input

Noisy< TMPL >

Noisy_no_error

NormalizerExecStreamGenerator

NullableAccessor< Accessor >

NullMutex

A NullMutex is a dummy class for use in cases where the need for synchronization is parameterized

NullMutexGuard

Guard class for acquisition of an NullMutex

NumberStream

Interface for defining a stream of numbers

NumberStreamExecStreamGenerator

NumericType< T, typeOrdinal >

OpaqueInteger< T, Dummy >

OpaqueInteger is a wrapper for a primitive integer type

PageBucket< PageT >

PageBucket represents a bucket of Pages which share something in common

PageBucketListNode

Embedded link class for PageBucket lists

PageEntry

Allocation status for a single data page

PagePredicate

Callback class for Cache::checkpointPages

PagingTestBase

PagingTestBase is a common base for multi-threaded tests which exercise cache paging

ParallelExecResult

ParallelExecResult represents the result of a task submitted to ParallelExecStreamScheduler's thread pool

ParallelExecStreamScheduler

ParallelExecStreamScheduler is a parallel implementation of the ExecStreamScheduler interface

ParallelExecStreamScheduler::StreamStateMapEntry

ParallelExecStreamSchedulerTest

ParallelExecStreamSchedulerTest repeats the tests from ExecStreamTestSuite, but using a parallel scheduler

ParallelExecTask

ParallelExecTask represents a task submitted to ParallelExecStreamScheduler's thread pool

PermutationGenerator

PointerAdd< PTR_TYPE >

Decreases length by op2, which may be completely invalid

PointerGetMaxSize< PTR_TYPE >

PointerGetSize< PTR_TYPE >

PointerInstruction

PointerInstruction_NotAPointerType< char * >

PointerInstruction_NotAPointerType< double * >

PointerInstruction_NotAPointerType< float * >

PointerInstruction_NotAPointerType< int * >

PointerInstruction_NotAPointerType< long * >

PointerInstruction_NotAPointerType< long long * >

PointerInstruction_NotAPointerType< short * >

PointerInstruction_NotAPointerType< signed char * >

PointerInstruction_NotAPointerType< unsigned char * >

PointerInstruction_NotAPointerType< unsigned int * >

PointerInstruction_NotAPointerType< unsigned long * >

PointerInstruction_NotAPointerType< unsigned long long * >

PointerInstruction_NotAPointerType< unsigned short * >

PointerIntegralInstruction< PTR_TYPE >

PointerIntegralInstructionRegister

Note: There cannot be a PointerIntegralPutStorage() as cbStorage, the maximum size, is always read-only

PointerMove< PTR_TYPE >

PointerPointerInstruction< PTR_TYPE, OP2T >

PointerPointerInstructionRegister

PointerPutSize< PTR_TYPE >

PointerRef< PTR_TYPE >

PointerSub< PTR_TYPE >

Increases length by op2, which may be completely invalid

PointerToNull< PTR_TYPE >

PoissonColumnGenerator< T >

Column generator which generates values with a Poisson distribution

PooledThread

PooledThread is a Thread working for a ThreadPool

ProxyAggInvocation

ProxyAggStreamDef

ProxyBarrierStreamDef

ProxyBeginTxnCmd

ProxyBernoulliSamplingStreamDef

ProxyBufferingTupleStreamDef

ProxyBufferReaderStreamDef

ProxyBufferWriterStreamDef

ProxyCalcTupleStreamDef

ProxyCartesianProductStreamDef

ProxyCmd

ProxyCmdAbandonBackup

ProxyCmdAlterSystemDeallocate

ProxyCmdBeginTxn

ProxyCmdBeginTxnWithCsn

ProxyCmdCheckpoint

ProxyCmdCloseDatabase

ProxyCmdCommit

ProxyCmdCompleteBackup

ProxyCmdCreateExecutionStreamGraph

ProxyCmdCreateIndex

ProxyCmdCreateStreamHandle

ProxyCmdDropIndex

ProxyCmdGetLastCommittedTxnId

ProxyCmdGetTxnCsn

ProxyCmdInitiateBackup

ProxyCmdOpenDatabase

ProxyCmdPrepareExecutionStreamGraph

ProxyCmdRestoreFromBackup

ProxyCmdRollback

ProxyCmdSavepoint

ProxyCmdSetParam

ProxyCmdTruncateIndex

ProxyCmdVerifyIndex

ProxyCmdVersionIndexRoot

ProxyCollectTupleStreamDef

ProxyColumnName

ProxyCorrelation

ProxyCorrelationJoinStreamDef

ProxyCsnHandle

ProxyCsnHandleReturningCmd

ProxyDatabaseCmd

ProxyDatabaseParam

ProxyDbHandle

ProxyDynamicParameter

ProxyDynamicParamUse

ProxyEndTxnCmd

ProxyExecStreamDataFlow

ProxyExecutionStreamDef

ProxyFlatFileTupleStreamDef

ProxyGenericStreamDef

ProxyHandle

ProxyIndexAccessCmd

ProxyIndexAccessorDef

ProxyIndexCmd

ProxyIndexLoaderDef

ProxyIndexScanDef

ProxyIndexSearchDef

ProxyIndexStreamDef

ProxyIndexWriterDef

ProxyJavaSinkStreamDef

ProxyJavaTransformStreamDef

ProxyKeyAccessorDef

ProxyLbmBitOpStreamDef

ProxyLbmChopperStreamDef

ProxyLbmGeneratorStreamDef

ProxyLbmIntersectStreamDef

ProxyLbmMinusStreamDef

ProxyLbmNormalizerStreamDef

ProxyLbmSearchStreamDef

ProxyLbmSortedAggStreamDef

ProxyLbmSplicerStreamDef

ProxyLbmUnionStreamDef

ProxyLcsClusterAppendStreamDef

ProxyLcsClusterReplaceStreamDef

ProxyLcsClusterScanDef

ProxyLcsRowScanStreamDef

ProxyLhxAggStreamDef

ProxyLhxJoinStreamDef

ProxyMergeStreamDef

ProxyMockTupleStreamDef

ProxyMultiUseBufferingStreamDef

ProxyNestedLoopJoinStreamDef

ProxyReshapeParameter

ProxyReshapeStreamDef

ProxySortedAggStreamDef

ProxySortingStreamDef

ProxySplicerIndexAccessorDef

ProxySplitterStreamDef

ProxyStreamGraphHandle

ProxyStreamHandle

ProxySvptHandle

ProxyTableDeleterDef

ProxyTableInserterDef

ProxyTableUpdaterDef

ProxyTableWriterDef

ProxyTupleAccessor

ProxyTupleAttrAccessor

ProxyTupleAttrDescriptor

ProxyTupleAttrProjection

ProxyTupleDescriptor

ProxyTupleProjection

ProxyTupleStreamDef

ProxyTupleStreamGraphCmd

ProxyTxnCmd

ProxyTxnHandle

ProxyUncollectTupleStreamDef

ProxyValuesStreamDef

ProxyWindowDef

ProxyWindowPartitionDef

ProxyWindowStreamDef

PseudoUuid

Wrapper for a UUID

PseudoUuidGenerator

Generator for values of PseudoUuid

PseudoUuidTest

Tests the common PseudoUuid class

QuotaCacheAccessor

QuotaCacheAccessor is an implementation of CacheAccessor which keeps track of the number of locked pages and asserts that this never exceeds a given quota

RaiseInstruction

Add a warning/exception to the message queue

RampDuplicateExecStreamGenerator

Duplicate stream generator

RampExecStreamGenerator

Test data generators, usually for a 45-degree ramp (output value equals input row number)

RandomAccessDevice

RandomAccessDevice is an interface representing any Device whose stored bytes can be accessed at random in constant time

RandomAccessFileDevice

RandomAccessFileDevice is an implementation of RandomAccessDevice in terms of a FileDevice

RandomAccessFileDeviceTest

RandomAccessFileDeviceTest::Binding

RandomAccessFileDeviceTest::Listener

RandomAccessNullDevice

RandomAccessNullDevice is an implementation of RandomAccessDevice which acts something like /dev/null, except that it does not allow any transfers at all

RandomAccessRequest

RandomAccessRequest represents one logical unit of I/O against a RandomAccessDevice

RandomAccessRequestBinding

RandomAccessRequestBinding binds a RandomAccessRequest to a particular memory location being read from or written to

RandomAllocationSegment

RandomAllocationSegment refines RandomAllocationSegmentBase, defining an ExtentAllocationNode where each page entry within the segment is unversioned

RandomAllocationSegmentBase

RandomAllocationSegmentBase is an abstract base class that implements RANDOM_ALLOCATION in terms of an underlying segment supporting LINEAR_ALLOCATION

RandomAllocationSegmentTest

RandomColumnGenerator

Column generator which produces values which are uniformly distributed between 0 and N - 1

RandomVictimPolicy< PageT >

RandomVictimPolicy implements the random policy for cache victimization

RandomVictimPolicy< PageT >::PageIterator

RawIntrusiveList

RawIntrusiveList is the type-unsafe implementation for the type-safe IntrusiveList template

RawIntrusiveListIter

RawIntrusiveListIter is the type-unsafe implementation for the type-safe IntrusiveListIter template

RawIntrusiveListMutator

RawIntrusiveListMutator is the type-unsafe implementation for the type-safe IntrusiveListMutator template

RegDesc

A StandardTypeDescriptorOrdinal that allows a level of wildcarding

RegisterRef< TMPLT >

A typed group of accessor functions to a register

RegisterReference

A reference to a register

RegisterSetBinding

How a register set is bound to data

RegisterTestInfo< T >

RepeatingSeqColumnGenerator

A repeating column sequence generator

ReshapeExecStream

ReshapeExecStream takes its input stream, applies optional filtering on the input, projects specified columns from the input stream, and performs some very simple casting

ReshapeExecStreamParams

ReshapeExecStreamParams defines parameters for ReshapeExecStream

ReshapeParameter

Structure used to store information about dynamic parameters used by the ReshapeExecStream

ResourceBundle

ResourceDefinition

ResourceGovernorDesign

ResourceTest

ResourceThread

RestartingMinusExecStreamGenerator

Generates repeating tuples resulting from minus such as

ReturnInstruction

ReturnInstructionRegister

SchedulerDesign

ScratchBufferExecStream

ScratchBufferExecStream is an adapter for converting the output of an upstream BUFPROV_CONSUMER producer for use by a downstream BUFPROV_PRODUCER consumer

ScratchBufferExecStreamParams

ScratchBufferExecStreamParams defines parameters for ScratchBufferExecStream

ScratchMemExcn

Exception class for scratch memory allocation errors

ScratchSegment

ScratchSegment is an implementation of Segment which allocates scratch pages from the cache

SegBufferExecStream

SegBufferExecStream fully buffers its input (using segment storage as specified in its parameters)

SegBufferExecStreamParams

SegBufferExecStreamParams defines parameters for instantiating a SegBufferExecStream

SegBufferReader

SegBufferReader is a helper class that reads data that has previously been buffered, and writes the data to its output stream

SegBufferReaderExecStream

SegBufferReaderExecStream reads the buffered input written by a SegBufferWriterExecStream

SegBufferReaderExecStreamParams

SegBufferReaderExecStreamParams defines parameters for instantiating a SegBufferReaderExecStream

SegBufferWriter

SegBufferWriter is a helper class that reads an input stream and writes the data into a buffer

SegBufferWriterExecStream

SegBufferWriterExecStream reads its input stream and writes the data to a buffer so it can be read by one or more SegBufferReaderExecStreams

SegBufferWriterExecStreamParams

SegBufferWriterExecStreamParams defines parameters for instantiating a SegBufferWriterExecStream

SegInputStream

SegInputStream implements the ByteInputStream interface by reading data previously written via a SegOutputStream

Segment

Segment is a virtualization layer for allocating and accessing pages of device storage via the cache

SegmentAccessor

A SegmentAccessor combines a Segment with a CacheAccessor

SegmentAllocationNode

SegmentAllocationNode is the allocation map for a run of extents in a RandomAllocationSegmentBase

SegmentAllocationNode::ExtentEntry

Allocation status for a single extent mapped by this node

SegmentDesign

SegmentFactory

SegmentFactory is a factory class for creating instances of the Segment interface

SegmentMap

SegmentMap defines an interface for mapping a SegmentId to a loaded Segment instance

SegmentTestBase

SegmentTestBase is a common base for any test of an implementation of the Segment interface

SegNodeLock< Node >

SegNodeLock refines SegPageLock to allow typecasting to be hidden

SegOutputStream

SegOutputStream implements the ByteOutputStream interface by writing data to pages allocated from a Segment

SegPageBackupRestoreDevice

Device used to backup and restore pages from a data segment

SegPageEntryIter< EntryT >

SegPageEntryIter extends SegPageIter

SegPageEntryIterSource< EntryT >

SegPageEntryIterSource provides the callback method that supplies pre-fetch pageIds for SegPageEntryIter

SegPageEntryIterTest

SegPageIter

When visiting a chain of pages via Segment.getPageSuccessor, SegPageIter can be used to automatically initiate prefetches

SegPageIterTest

SegPageLock

A SegPageLock is associated with a single segment, and starts out in the unlocked state

SegStorageTestBase

SegStorageTestBase is a common base for any test which depends on the Segment interface

SegStream

SegStream is a common base for SegInputStream and SegOutputStream

SegStreamAllocation

SegStreamAllocation is a helper for managing the allocation state of storage created by SegOutputStream when it is used as temp workspace

SegStreamCrc

Additional header information stored on each page of SegStreams for which CRC's are requested

SegStreamMarker

SegStreamMarker refines ByteStreamMarker with a physical stream position, allowing for random-access mark/reset

SegStreamNode

Header stored on each page of a SegStream

SegStreamPosition

Memento for a position within a SegStream

SegStreamTest

SeqColumnGenerator

Column generator which produces values in sequence, starting at start, optionally with a fixed offset between each value

SequentialByteStreamMarker

SequentialByteStreamMarker is a default implementation of ByteStreamMarker based on sequential byte position

SimpleExecStreamGovernor

SimpleExecStreamGovernor is a reference implementation of ExecStreamGovernor

SingleInputExecStream

SingleInputExecStream is an abstract base for all implementations of ExecStream which have exactly one input

SingleInputExecStreamParams

SingleInputExecStreamParams defines parameters for SingleInputExecStream

SingleOutputExecStream

SingleOutputExecStream is an abstract base for all implementations of ExecStream which have exactly one output

SingleOutputExecStreamParams

SingleOutputExecStreamParams defines parameters for SingleOutputExecStream

SizeBuffer

Contains a buffer, its maximum length and current length

SkipNumberStream

From (first

SnapshotRandomAllocationSegment

SnapshotRandomAllocationSegment implements a random allocation segment that provides a consistent view of the data in the segment based on a specified point in time

SnapshotSegmentTest

SnapshotSegmentTestBase

SnapshotSegmentTestBase is a common base for any test that uses a SnapshotRandomAllocationSegment for storage

SortedAggExecStream

SortedAggExecStream aggregates its input, producing tuples of aggregate function computations as output

SortedAggExecStreamGenerator

Generates sorted (key, value count) tuples like:

SortedAggExecStreamParams

SortedAggExecStreamParams defines parameters for SortedAggExecStream

SparseBitmap

SparseBitmap is an example of how to create a page-based persistent data structure using Fennel

SparseBitmapDirectory

Page header data structure for a sparse bitmap directory node

SparseBitmapDirEntry

Entry in a sparse bitmap directory

SparseBitmapLeaf

Page header data structure for a sparse bitmap leaf node

SparseBitmapTest

Unit tests for SparseBitmap

SpillOutputStream

SpillOutputStream implements the ByteOutputStream interface by starting with writes to a cache scratch page

SplitterExecStream

SplitterExecStream is an adapter for aliasing the output of an upstream producer for use by several downstream consumers

SplitterExecStreamParams

SplitterExecStreamParams defines parameters for SplitterExecStream

SQL2003

The official SQL:2003 standard (ISO/IEC 9075:2003), which is broken up into numerous parts

SQL92

The official SQL-92 standard (ISO/IEC 9075:1992)

SQL99

The official SQL:1999 standard (ISO/IEC 9075:1999), which is broken up into five parts

SqlDateTest

SqlRegExpTest

SqlStringAsciiTest

SqlStringBuffer

SqlStringBufferUCS2

SqlStringTest

SqlStringTestGen

StairCaseColumnGenerator

Same as StairCaseExecStreamGenerator except for columns

StairCaseExecStreamGenerator

A Staircase Generator

StandardTypeDescriptor

StandardTypeDescriptor provides convenience functions to StandardTypeDescriptorOrdinal enum

StandardTypeDescriptorFactory

StandardTypeDescriptorFactory is an implementation of the StoredTypeDescriptorFactory interface capable of constructing all of the types enumerated in StandardTypeDescriptorOrdinal

StandardTypeTest

StatsSource

StatsSource defines an interface implemented by classes which produce performance/activity statistics

StatsTarget

StatsTarget defines an interface implemented by classes which consume performance/activity statistics

StatsTimer

StatsTimer publishes stats snapshots from StatsSources to a StatsTarget

StoredNode

StoredNode is the base class for all structures used as headers for pages of stored objects

StoredTypeDescriptor

StoredTypeDescriptor is an abstract class defining the datatypes which characterize values stored in tuples, as described in the design docs

StoredTypeDescriptorFactory

StoredTypeDescriptorFactory is an abstract factory defining how StoredTypeDescriptors are instantiated, as described in the design docs

StringDesc

Support structure for calculating various windowed aggregation functions (COUNT, SUM, AVG, MIN, MAX, FIRST_VALUE, LAST_VALUE) against character data

StringExecStreamGenerator

StringExecStreamGenerator defines an interface for generating a data stream of strings

StringExecStreamGeneratorImpl

SumAggComputer< T >

SumAggComputer computes SUM(x), ignoring null values but returning null if the input is empty

SXMutex

An SXMutex implements a standard readers/writers exclusion scheme: any number of shared-lock threads may hold the lock at one time, during which time exclusive-lock threads are blocked; only one exclusive-lock thread may hold the lock at a time, during which all other lock-requesting threads are blocked

SXMutexGuard< lockMode >

Guard class for acquisition of an SXMutex

SynchMonitoredObject

SynchMonitoredObject is the base for any object needing to use the monitor synchronization pattern

SysCallExcn

Exception class for failed system calls

SystemSamplingExecStreamGenerator

TempSegDestructor

TestBase

TestBase is the common base for all Fennel tests

TestBase::TestCaseGroup

Collects a group of named test-case definitions

TestBase::TestCaseGroup::Item

TestCalculator

Subclass of Calculator specialized for testing extended instructions

TestOptionsTest

Tests the command-line options features of TestBase

TestThread

TestWrapperTemplate< UserTestClass >

TestWrapperTemplate wraps a test class with setUp/tearDown hooks around each test case method invocation

TExceptionCBData

Thread

Thread is a wrapper around boost::thread which allows for the thread object to be created before it is actually started

ThreadedTestBase

ThreadedTestBase is a common base for tests which execute multiple threads with various operations over a configurable duration

ThreadedTestBaseTask

ThreadPool< Task >

ThreadPool is a very simple thread-pooling implementation

ThreadPoolBase

ThreadPoolBase defines the non-templated portion of ThreadPool

ThreadPoolScheduler

ThreadPoolScheduler implements DeviceAccessScheduler by combining a thread pool with synchronous I/O calls

ThreadTracker

ThreadTracker defines an interface for receiving callbacks before and after a thread runs

TimerThread

TimerThread implements a timer callback via a dedicated thread

TimerThreadClient

TimerThreadClient receives callbacks from a TimerThread

TOp

TraceSource

TraceSource is a common base for all classes which write messages to a TraceTarget

TraceTarget

TraceTarget defines a tracing interface to be implemented by callers to Fennel

TracingSegment

TracingSegment implements tracing for the Segment interface

TransactionalCacheAccessor

TransactionalCacheAccessor implements the CacheAccessor::setTxnId method, allowing it to be used to lock pages on behalf of a particular transaction without the caller being aware of the association

TSuper

TType

TupleAccessor

TupleAccessor defines how to efficiently marshal and unmarshal values in a stored tuple

TupleAttributeDescriptor

A TupleAttributeDescriptor is a component of a TupleDescriptor, as explained in the design docs

TupleData

TupleData is an in-memory collection of independent data values, as explained in the design docs

TupleDataWithBuffer

TupleDataWithBuffer is a convenience that creates a TupleData, and a supporting buffer from a TupleDescriptor

TupleDatum

A TupleDatum is a component of TupleData; see the design docs for more details

TupleDescriptor

A TupleDescriptor specifies a vector of stored attributes, as explained in the design docs

TupleDesign

TupleOverflowExcn

Exception class to be thrown when an oversized tuple is encountered

TuplePrinter

TupleProjection

A TupleProjection specifies a projection of a tuple, as explained in the design docs

TupleProjectionAccessor

A TupleProjectionAccessor provides a way to efficiently unmarshal selected attributes of a tuple, as explained in the design docs

TupleTest

TwoQDirtyPage

TwoQDirtyPage is the attribute class that contains information about dirty pages

TwoQDirtyPageListIter< PageT >

TwoQDirtyPageListIter iterates over queues containing dirty nodes, returning the parent pages corresponding to the dirty nodes

TwoQPage

TwoQPageListIter< PageT >

TwoQPageListIter iterates over queues containing pages

TwoQPageQueue

TwoQPageQueue is used to implement the page queues used by the TwoQVictimPolicy

TwoQVictim

TwoQVictim is the attributes class which must be a base for any CachePage type which will be cached using a TwoQVictimPolicy

TwoQVictimPolicy< PageT >

TwoQVictimPolicy implements the 2Q page victimization policy as described in the VLDB '94 paper "2Q: A Low Overhead High Performance Buffer Management Replacement Algorithm" by Johnson and Shasha

UnalignedAttributeAccessor

UnalignedAttributeAccessor is similar to AttributeAccessor, except that it provides a by-value access model intended for storing individual data values with maximum compression (hence unaligned), as opposed to the tuple-valued by-reference model of AttributeAccessor

UncollectExecStream

Ouputs all tuples that previously has been collected by CollectExecStream

UncollectExecStreamParams

UncollectExecStreamParams defines parameters for instantiating a UncollectExecStream

UnicodeCharType

UnicodeVarCharType

UnionNumberStream

Unions multiple number streams from 1

UnreferencedCacheStructs

UnreferencedCommonStructs

UnreferencedHashexeStructs

UnreferencedSegmentStructs

UnreferencedSynchStructs

ValuesExecStream

ValuesExecStream passes a buffer of tuples passed in as a parameter into the stream on to its consumer to process

ValuesExecStreamParams

ValuesExecStreamParams defines parameters for ValuesExecStream

VarBinaryType

VarCharType

VariableBuildLevel

VarOffsetAccessor< network >

VarOffsetAccessor accesses subsequent variable-width attributes that are NOT NULL

VectorOfUint

VersionedExtentAllocationNode

VersionedExtentAllocationNode is the allocation map for one extent in a VersionedRandomAllocationSegment

VersionedPageEntry

Allocation status for a single data page in this extent

VersionedPageFooter

Information stored in the footer of each page of a VersionedSegment

VersionedRandomAllocationSegment

VersionedRandomAllocationSegment refines RandomAllocationSegmentBase, defining a VersionedExtentAllocationNode where each page entry within the segment is versioned

VersionedSegment

VersionedSegment provides versioned updates to an underlying data segment by keeping before-images of modified pages in a separate write-ahead log segment

VersionedSegmentTest

VMAllocator

VMAllocator is an implementation of the CacheAllocator interface in terms of OS page allocation calls

VoidPtrHash

VoidPtrHash can be used to create a hash_map or hash_set with pointers as keys

WALSegment

WALSegment is an implementation of Segment which keeps track of pages as they are dirtied and flushed

WinAggHistogram< STDTYPE >

Support structure for calculating various windowed aggregation functions (COUNT, SUM, AVG, MIN, MAX, FIRST_VALUE, LAST_VALUE)

WinAggHistogramStrA

WinAggHistogramStrA::_StringDescCompare

yy_buffer_state

yy_trans_info

yyalloc

YYLTYPE