Oracle Coherence for C++ API
Release 3.7.1.0

E22845-01

QueryRecorder Class Reference

#include <coherence/util/aggregator/QueryRecorder.hpp>

Inherits Object, PortableObject, and InvocableMap::ParallelAwareAggregator.

List of all members.


Detailed Description

This parallel aggregator used to produce a QueryRecord object that contains an estimated or actual cost of the query execution for a given filter.

For example, the following code will return a QueryPlan, containing the estimated query cost and corresponding execution steps.

   QueryRecorder::Handle hAgent  = QueryRecorder::create(QueryRecorder::explain);
   QueryRecord::View     vRecord = cast<QueryRecord::View>(hCache->aggregate(filter, agent));
 
Since:
Coherence 3.7.1
Author:
tb 2011.05.26
 

Public Types

enum   RecordType { explain, trace }
  RecordType enum specifies whether the QueryRecorder should be used to produce a QueryRecord object that contains an estimated or an actual cost of the query execution. More...
typedef spec::Handle  Handle
  QueryRecorder Handle definition.
typedef spec::View  View
  QueryRecorder View definition.
typedef spec::Holder  Holder
  QueryRecorder Holder definition.

Public Member Functions

  QueryRecorder (QueryRecorder::RecordType type)
  Construct a QueryRecorder.
virtual
QueryRecorder::RecordType 
getType () const
  Get the record type for this query recorder.
virtual Object::Holder  aggregate (Set::View vSetEntries)
  Process a set of InvocableMap::Entry objects in order to produce an aggregated result.
Parameters:
  vSetEntries  a Set of read-only InvocableMap::Entry objects to aggregate
Returns:
the aggregated result from processing the entries
virtual
InvocableMap::EntryAggregator::Handle 
getParallelAggregator ()
  Get an aggregator that can take the place of this aggregator in situations in which the InvocableMap can aggregate in parallel.
Returns:
the aggregator that will be run in parallel
virtual Object::Holder  aggregateResults (Collection::View vCollResults)
  Aggregate the results of the parallel aggregations.
Parameters:
  vCollResults  the parallel aggregation results
Returns:
the aggregation of the parallel aggregation results
virtual void  readExternal (PofReader::Handle hIn)
   
virtual void  writeExternal (PofWriter::Handle hOut) const
   

Protected Member Functions

  QueryRecorder ()
  Default constructor (necessary for the PortableObject interface).

Protected Attributes

enum RecordType  m_type
  This aggregator record type.

Member Enumeration Documentation

enum RecordType

RecordType enum specifies whether the QueryRecorder should be used to produce a QueryRecord object that contains an estimated or an actual cost of the query execution.

Enumerator:
explain  Produce a QueryRecord object that contains an estimated cost of the query execution.
trace  Produce a QueryRecord object that contains the actual cost of the query execution.

Constructor & Destructor Documentation

QueryRecorder ( QueryRecorder::RecordType  type  )   

Construct a QueryRecorder.

Parameters:
  type  the type for this aggregator

Member Function Documentation

virtual QueryRecorder::RecordType getType (    )  const [virtual]

Get the record type for this query recorder.

Returns:
the record type enum

The documentation for this class was generated from the following file:

Copyright © 2000, 2011, Oracle and/or its affiliates. All rights reserved.