![]() |
JODA
0.13.1 (59b41972)
JSON On-Demand Analysis
|
#include <QueryThread.h>
Public Types | |
| typedef IPayload | ContRef |
| typedef OPayload | OwnedCont |
Public Types inherited from IWorkerThread< JsonContainerRefQueue, JsonContainerQueue, QueryThreadConfig > | |
| typedef IQueueStruct::queue_t | IQueue |
| typedef OQueueStruct::queue_t | OQueue |
| typedef IQueueStruct::payload_t | IPayload |
| typedef OQueueStruct::payload_t | OPayload |
| typedef QueryThreadConfig | WConf |
Public Member Functions | |
| QueryThread (IQueue *iqueue, OQueue *oqueue, WConf &conf) | |
| ~QueryThread () override | |
| const std::string | getThreadID () const |
| bool | hasAggregators () const |
Public Member Functions inherited from IWorkerThread< JsonContainerRefQueue, JsonContainerQueue, QueryThreadConfig > | |
| IWorkerThread (IQueue *iqueue, OQueue *oqueue, const WConf &conf) | |
| IWorkerThread (IQueue *iqueue, OQueue *oqueue, WConf &&conf) | |
| IWorkerThread (IWorkerThread &&)=default | |
| IWorkerThread (const IWorkerThread &)=delete | |
| IWorkerThread & | operator= (IWorkerThread &&)=default |
| IWorkerThread & | operator= (const IWorkerThread &)=delete |
| virtual | ~IWorkerThread () |
| void | start () |
| void | waitFor () |
| void | stop () |
| bool | requestedToStop () const |
| bool | isRunning () const |
Protected Member Functions | |
| bool | hasToProject () const |
| bool | canCreateView () const |
| std::shared_ptr< const DocIndex > | select (JSONContainer &cont) const |
| std::vector< std::unique_ptr< RJDocument > > | defaultProject (JSONContainer &cont, const DocIndex &ids, RJMemoryPoolAlloc &alloc) const |
| void | aggregate (const std::vector< RapidJsonDocument > &docs) const |
| void | aggregate (ContRef pipelineCont, const std::shared_ptr< const DocIndex > &selectResult, bool isSelected) const |
| void | work () override |
| void | logTimers () const |
Protected Attributes | |
| RecurringTimer | bloom_timer |
| RecurringTimer | select_timer |
| RecurringTimer | project_timer |
| RecurringTimer | aggregate_timer |
| RecurringTimer | copy_timer |
| RecurringTimer | serialize_timer |
| RecurringTimer | sample_view_cost_timer |
Protected Attributes inherited from IWorkerThread< JsonContainerRefQueue, JsonContainerQueue, QueryThreadConfig > | |
| IQueue * | iqueue |
| OQueue * | oqueue |
| WConf | conf |
| bool | shouldRun |
Additional Inherited Members | |
Static Public Member Functions inherited from IWorkerThread< JsonContainerRefQueue, JsonContainerQueue, QueryThreadConfig > | |
| static constexpr auto | getIQueueFlags () |
| static constexpr auto | getOQueueFlags () |
| static const size_t | recommendedThreads () |
The QueryThread class is responsible for actually executing a Query on one or multiple containers. It reads containers from an input queue, executes the query on each container read and then writes the output container to an output queue.
| typedef IPayload QueryThread::ContRef |
| typedef OPayload QueryThread::OwnedCont |
|
override |
|
protected |
Aggregates the given list of documents. The results are stored in the aggregator classed within the config objects
| docs | The documents to aggregate |
|
protected |
Aggregates all documents within the container. The results are stored in the aggregator classed within the config objects
| pipelineCont | The container having the documents |
| selectResult | The index showing which documents have to be aggregated |
| isSelected | flag dictating if selectResult should be used or not. |
|
protected |
|
protected |
Transforms the the selected documents in the given container
| cont | The container to perform the projection on |
| ids | A DocIndex containing information on which documents are to be projected |
| alloc | An allocator to use for projection. This reduces memory consumption and runtime required by many allocation operations |
| const std::string QueryThread::getThreadID | ( | ) | const |
Returns a unique ID identifying this querythread
| bool QueryThread::hasAggregators | ( | ) | const |
Checks whether aggregations have to be performed
|
protected |
|
protected |
|
protected |
Selects the documents adhering to he filter (CHOOSE) step in the query.
| cont | The container to perform the selection on |
|
overrideprotectedvirtual |
Implements IWorkerThread< JsonContainerRefQueue, JsonContainerQueue, QueryThreadConfig >.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |