|
| DynamicQueryManager (std::shared_ptr< AbstractQueryStatusListener > queryStatusListener, std::vector< BufferManagerPtr > bufferManager, WorkerId nodeEngineId, uint16_t numThreads, HardwareManagerPtr hardwareManager, uint64_t numberOfBuffersPerEpoch, std::vector< uint64_t > workerToCoreMapping={}) |
|
void | destroy () override |
| reset query manager. After this call, it wont be possible to use the query manager. More...
|
|
ExecutionResult | processNextTask (bool running, WorkerContext &workerContext) override |
| process task from task queue More...
|
|
void | addWorkForNextPipeline (TupleBuffer &buffer, Execution::SuccessorExecutablePipeline executable, uint32_t queueId=0) override |
| add work to the query manager, this methods is source-driven and is called for each buffer generated by the window trigger More...
|
|
| AbstractQueryManager ()=delete |
|
| AbstractQueryManager (const AbstractQueryManager &)=delete |
|
AbstractQueryManager & | operator= (const AbstractQueryManager &)=delete |
|
| AbstractQueryManager (std::shared_ptr< AbstractQueryStatusListener > queryStatusListener, std::vector< BufferManagerPtr > bufferManagers, WorkerId nodeEngineId, uint16_t numThreads, HardwareManagerPtr hardwareManager, uint64_t numberOfBuffersPerEpoch, std::vector< uint64_t > workerToCoreMapping={}) |
|
virtual | ~AbstractQueryManager () NES_NOEXCEPT(false) override |
|
virtual bool | registerExecutableQueryPlan (const Execution::ExecutableQueryPlanPtr &executableQueryPlan) |
| register a query by extracting sources, windows and sink and add them to respective map More...
|
|
bool | unregisterExecutableQueryPlan (const Execution::ExecutableQueryPlanPtr &executableQueryPlan) |
| deregister a query by extracting sources, windows and sink and remove them from respective map More...
|
|
bool | startExecutableQueryPlan (const Execution::ExecutableQueryPlanPtr &qep) |
| method to start a query More...
|
|
bool | stopExecutableQueryPlan (const Execution::ExecutableQueryPlanPtr &qep, Runtime::QueryTerminationType type=Runtime::QueryTerminationType::HardStop) |
| method to start a query More...
|
|
bool | failExecutableQueryPlan (const Execution::ExecutableQueryPlanPtr &qep) |
| method to fail a query More...
|
|
void | postReconfigurationCallback (ReconfigurationMessage &task) override |
|
void | reconfigure (ReconfigurationMessage &, WorkerContext &context) override |
|
Execution::ExecutableQueryPlanStatus | getQepStatus (DecomposedQueryIdWithVersion decomposedQueryIdWithVersion) |
| retrieve the execution status of a given local query sub plan id. More...
|
|
Execution::ExecutableQueryPlanPtr | getQueryExecutionPlan (DecomposedQueryIdWithVersion decomposedQueryIdWithVersion) const |
| Provides the QEP object for an id. More...
|
|
bool | canTriggerEndOfStream (DataSourcePtr source, Runtime::QueryTerminationType) |
|
QueryStatisticsPtr | getQueryStatistics (DecomposedQueryId decomposedQueryId) |
| method to return the query statistics More...
|
|
void | resetQueryStatistics (DecomposedQueryId decomposedQueryId) |
| Reset statistics for the decomposed query plan. More...
|
|
WorkerId | getNodeId () const |
|
BufferManagerPtr | getBufferManager () |
|
void | notifyTaskFailure (Execution::SuccessorExecutablePipeline pipeline, const std::string &message) |
| This method informs the QueryManager that a task has failed. More...
|
|
uint64_t | getNumberOfBuffersPerEpoch () const |
| Returns the numberOfBuffersPerEpoch. More...
|
|
void | notifySourceFailure (DataSourcePtr source, const std::string errorMessage) |
| This method informs the QueryManager that a source has failed. More...
|
|
void | notifyQueryStatusChange (const Execution::ExecutableQueryPlanPtr &qep, Execution::ExecutableQueryPlanStatus newStatus) |
| Informs the query manager about a status change in a sub query plan. More...
|
|
SharedQueryId | getSharedQueryId (DecomposedQueryIdWithVersion decomposedQueryIdWithVersion) const |
| get the shared query id mapped to the decomposed query plan id More...
|
|
bool | addEndOfStream (DataSourcePtr source, Runtime::QueryTerminationType graceful=Runtime::QueryTerminationType::Graceful) |
| introduces end of stream to all QEPs connected to this source More...
|
|
bool | propagateReconfigurationMarker (const ReconfigurationMarkerPtr &marker, DataSourcePtr source) |
| propagates a reconfiguration marker to all downstream operators of a source operator More...
|
|
bool | startNewExecutableQueryPlanAndPropagateMarker (const ReconfigurationMarkerPtr marker, DecomposedQueryIdWithVersion decomposedQueryIdWithVersion) |
| starts new executable plan and propagates reconfiguration marker to it's source More...
|
|
bool | isThreadPoolRunning () const |
|
uint64_t | getCurrentTaskSum () |
|
uint64_t | getNumberOfWorkerThreads () |
|
void | notifySourceCompletion (DataSourcePtr source, QueryTerminationType terminationType) |
| Notifies that a source operator is done with its execution. More...
|
|
void | notifyPipelineCompletion (DecomposedQueryId decomposedQueryId, Execution::ExecutablePipelinePtr pipeline, QueryTerminationType terminationType) |
| Notifies that a pipeline is done with its execution. More...
|
|
void | notifySinkCompletion (DecomposedQueryId decomposedQueryId, DecomposedQueryPlanVersion decomposedQueryVersion, DataSinkPtr sink, QueryTerminationType terminationType) |
| Notifies that a sink operator is done with its execution. More...
|
|
std::optional< ReconfigurationMarkerEventPtr > | getReconfigurationEvent (Network::NetworkSourcePtr networkSource, SharedQueryId sharedQueryId, const ReconfigurationMarker &marker) const |
|
std::unordered_set< DecomposedQueryIdWithVersion > | getExecutablePlanIdsForSource (DataSourcePtr source) const |
|
| ~virtual_enable_shared_from_this () NES_NOEXCEPT(isNoexceptDestructible) override=default |
|
std::shared_ptr< T1 > | shared_from_this () |
|
std::weak_ptr< T1 > | weak_from_this () |
|
virtual | ~virtual_enable_shared_from_this_base () NES_NOEXCEPT(isNoexceptDestructible)=default |
|
| ~Reconfigurable () NES_NOEXCEPT(false) override=default |
|
| ~virtual_enable_shared_from_this () NES_NOEXCEPT(isNoexceptDestructible) override=default |
|
std::shared_ptr< T1 > | shared_from_this () |
|
std::weak_ptr< T1 > | weak_from_this () |
|
|
enum class | QueryManagerStatus : uint8_t {
Created
, Running
, Stopped
, Destroyed
,
Failed
} |
|
using | inherited0 = NES::detail::virtual_enable_shared_from_this< AbstractQueryManager, false > |
|
using | inherited1 = Reconfigurable |
|
folly::Synchronized< std::unordered_map< std::string, std::shared_ptr< BasePersistentSourceProperties > > > | persistentSourceProperties |
|
WorkerId | nodeEngineId |
|
std::atomic_uint64_t | taskIdCounter = 0 |
|
std::vector< BufferManagerPtr > | bufferManagers |
|
uint16_t | numThreads |
|
HardwareManagerPtr | hardwareManager |
|
ThreadPoolPtr | threadPool {nullptr} |
| worker threads running compute tasks More...
|
|
AsyncTaskExecutorPtr | asyncTaskExecutor |
| worker thread for async maintenance task, e.g., fail queryIdAndCatalogEntryMapping More...
|
|
std::unordered_map< DecomposedQueryIdWithVersion, Execution::ExecutableQueryPlanPtr > | runningQEPs |
|
std::mutex | statisticsMutex |
|
cuckoohash_map< DecomposedQueryId, QueryStatisticsPtr > | queryToStatisticsMap |
|
std::mutex | reconfigurationMutex |
|
std::vector< uint64_t > | workerToCoreMapping |
|
std::recursive_mutex | queryMutex |
|
std::atomic< QueryManagerStatus > | queryManagerStatus {QueryManagerStatus::Created} |
|
std::vector< AtomicCounter< uint64_t > > | tempCounterTasksCompleted |
|
std::shared_ptr< AbstractQueryStatusListener > | queryStatusListener |
|
std::unordered_map< DecomposedQueryIdWithVersion, std::vector< OperatorId > > | decomposeQueryToSourceIdMapping |
|
std::unordered_map< OperatorId, std::vector< Execution::ExecutableQueryPlanPtr > > | sourceToQEPMapping |
|
uint64_t | numberOfBuffersPerEpoch |
|