|
NebulaStream
0.6.213
NebulaStream is a data and application management framework for the internet of things
|
#include <QueryManager.hpp>
Public Types | |
| enum class | QueryManagerStatus : uint8_t { Created , Running , Stopped , Destroyed , Failed } |
| using | inherited0 = NES::detail::virtual_enable_shared_from_this< AbstractQueryManager, false > |
| using | inherited1 = Reconfigurable |
Public Member Functions | |
| 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... | |
| virtual ExecutionResult | processNextTask (bool running, WorkerContext &workerContext)=0 |
| process task from task queue More... | |
| virtual void | addWorkForNextPipeline (TupleBuffer &buffer, Execution::SuccessorExecutablePipeline executable, uint32_t queueId=0)=0 |
| add work to the query manager, this methods is source-driven and is called for each buffer generated by the window trigger 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) |
| virtual void | poisonWorkers ()=0 |
| notify all waiting threads in getWork() to wake up and finish up More... | |
| virtual void | destroy () |
| reset query manager. After this call, it wont be possible to use the query manager. More... | |
| 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 |
| virtual bool | addReconfigurationMessage (SharedQueryId sharedQueryId, DecomposedQueryId queryExecutionPlanId, DecomposedQueryPlanVersion queryExecutionPlanVersion, const ReconfigurationMessage &reconfigurationMessage, bool blocking=false)=0 |
| this methods adds a reconfiguration task on the worker queue More... | |
| 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 |
| virtual uint64_t | getNumberOfTasksInWorkerQueues () const =0 |
| get number of tasks in the queue More... | |
| 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 |
Public Member Functions inherited from NES::detail::virtual_enable_shared_from_this< AbstractQueryManager, false > | |
| ~virtual_enable_shared_from_this () NES_NOEXCEPT(isNoexceptDestructible) override=default | |
| std::shared_ptr< T1 > | shared_from_this () |
| std::weak_ptr< T1 > | weak_from_this () |
Public Member Functions inherited from NES::detail::virtual_enable_shared_from_this_base< isNoexceptDestructible > | |
| virtual | ~virtual_enable_shared_from_this_base () NES_NOEXCEPT(isNoexceptDestructible)=default |
Public Member Functions inherited from NES::Runtime::Reconfigurable | |
| ~Reconfigurable () NES_NOEXCEPT(false) override=default | |
Public Member Functions inherited from NES::detail::virtual_enable_shared_from_this< Reconfigurable, false > | |
| ~virtual_enable_shared_from_this () NES_NOEXCEPT(isNoexceptDestructible) override=default | |
| std::shared_ptr< T1 > | shared_from_this () |
| std::weak_ptr< T1 > | weak_from_this () |
Public Attributes | |
| folly::Synchronized< std::unordered_map< std::string, std::shared_ptr< BasePersistentSourceProperties > > > | persistentSourceProperties |
Protected Member Functions | |
| void | completedWork (Task &task, WorkerContext &workerContext) |
| finalize task execution by: 1.) update statistics (number of processed tuples and tasks) 2.) release input buffer (give back to the buffer manager) More... | |
| virtual void | updateStatistics (const Task &task, SharedQueryId sharedQueryId, DecomposedQueryId decomposedQueryId, PipelineId pipelineId, WorkerContext &workerContext) |
| Method to update the statistics. More... | |
| virtual ExecutionResult | terminateLoop (WorkerContext &)=0 |
| Executes cleaning up logic on the task queue. More... | |
| bool | addSoftEndOfStream (DataSourcePtr source) |
| Triggers a soft end of stream for a source. More... | |
| bool | addHardEndOfStream (DataSourcePtr source) |
| Triggers a hard end of stream for a source. More... | |
| bool | addFailureEndOfStream (DataSourcePtr source) |
| Triggers a failure end of stream for a source. More... | |
| uint64_t | getNextTaskId () |
| Returns the next free task id. More... | |
Friends | |
| class | ThreadPool |
| class | NodeEngine |
| using NES::Runtime::AbstractQueryManager::inherited0 = NES::detail::virtual_enable_shared_from_this<AbstractQueryManager, false> |
|
strong |
|
delete |
|
delete |
|
explicit |
| bufferManager |
References asyncTaskExecutor, numThreads, and tempCounterTasksCompleted.
|
overridevirtual |
| bool NES::Runtime::AbstractQueryManager::addEndOfStream | ( | DataSourcePtr | source, |
| Runtime::QueryTerminationType | graceful = Runtime::QueryTerminationType::Graceful |
||
| ) |
introduces end of stream to all QEPs connected to this source
| source | the source |
| graceful | hard or soft termination |
References addFailureEndOfStream(), addHardEndOfStream(), addSoftEndOfStream(), NES::Runtime::Failure, NES::Runtime::Graceful, NES::Runtime::HardStop, NES_ASSERT2_FMT, NES_WARNING, queryMutex, sourceToQEPMapping, and threadPool.
|
protected |
Triggers a failure end of stream for a source.
| source | the source for which to trigger the failure end of stream |
References addReconfigurationMessage(), magic_enum::enum_name(), NES::Runtime::FailEndOfStream, NES_DEBUG, and threadPool.
Referenced by addEndOfStream().
|
protected |
Triggers a hard end of stream for a source.
| source | the source for which to trigger the hard end of stream |
References addReconfigurationMessage(), magic_enum::enum_name(), NES::Runtime::HardEndOfStream, NES_DEBUG, and threadPool.
Referenced by addEndOfStream().
|
pure virtual |
this methods adds a reconfiguration task on the worker queue
| sharedQueryId | the local QEP to reconfigure |
| queryExecutionPlanId | the local sub QEP id to reconfigure |
| queryExecutionPlanVersion | the local sub QEP version to reconfigure |
| reconfigurationDescriptor | what to do |
| blocking | whether to block until the reconfiguration is done. Mind this parameter because it blocks! |
Referenced by addFailureEndOfStream(), addHardEndOfStream(), addSoftEndOfStream(), failExecutableQueryPlan(), notifyQueryStatusChange(), propagateReconfigurationMarker(), and stopExecutableQueryPlan().
|
protected |
Triggers a soft end of stream for a source.
| source | the source for which to trigger the soft end of stream |
References addReconfigurationMessage(), magic_enum::enum_name(), NES_DEBUG, NES::Runtime::SoftEndOfStream, and threadPool.
Referenced by addEndOfStream().
|
pure virtual |
add work to the query manager, this methods is source-driven and is called for each buffer generated by the window trigger
| Pointer | to the tuple buffer containing the data |
| Pointer | to the pipeline stage that will be executed next |
| id | of the queue where to put the task (only necessary if multiple queues are used) |
Implemented in NES::Runtime::MultiQueueQueryManager, and NES::Runtime::DynamicQueryManager.
| bool NES::Runtime::AbstractQueryManager::canTriggerEndOfStream | ( | DataSourcePtr | source, |
| Runtime::QueryTerminationType | terminationType | ||
| ) |
References NES_ASSERT2_FMT, NES_ERROR, NES_THROW_RUNTIME_ERROR, queryMutex, queryStatusListener, and sourceToQEPMapping.
|
protected |
finalize task execution by: 1.) update statistics (number of processed tuples and tasks) 2.) release input buffer (give back to the buffer manager)
| reference | to processed task @oaram reference to worker context |
References NES::Runtime::Task::getExecutable(), NES::Runtime::WorkerContext::getId(), NES::Runtime::Task::isReconfiguration(), NES_TRACE, NES::Runtime::Task::toString(), and updateStatistics().
Referenced by NES::Runtime::DynamicQueryManager::processNextTask(), and NES::Runtime::MultiQueueQueryManager::processNextTask().
|
virtual |
reset query manager. After this call, it wont be possible to use the query manager.
Reimplemented in NES::Runtime::MultiQueueQueryManager, and NES::Runtime::DynamicQueryManager.
References Destroyed, NES::Runtime::HardStop, NES_ASSERT2_FMT, NES_DEBUG, queryManagerStatus, queryMutex, queryToStatisticsMap, Running, runningQEPs, statisticsMutex, stopExecutableQueryPlan(), Stopped, and threadPool.
Referenced by NES::Runtime::DynamicQueryManager::destroy(), NES::Runtime::MultiQueueQueryManager::destroy(), and ~AbstractQueryManager().
| bool NES::Runtime::AbstractQueryManager::failExecutableQueryPlan | ( | const Execution::ExecutableQueryPlanPtr & | qep | ) |
method to fail a query
| qep | of the query to fail |
References addReconfigurationMessage(), NES::Runtime::Destroy, NES::Runtime::Execution::ErrorState, NES::Runtime::Execution::Fail, NES::Runtime::Execution::Finished, NES::Runtime::Execution::Invalid, NES_ASSERT2_FMT, NES_DEBUG, NES_FATAL_ERROR, NES::detail::virtual_enable_shared_from_this< Reconfigurable, false >::shared_from_this(), NES::Runtime::Execution::Stopped, and timeout.
Referenced by notifySourceFailure(), and notifyTaskFailure().
|
inline |
| uint64_t NES::Runtime::AbstractQueryManager::getCurrentTaskSum | ( | ) |
Return the current occupation of the task queue
References tempCounterTasksCompleted.
| std::unordered_set< DecomposedQueryIdWithVersion > NES::Runtime::AbstractQueryManager::getExecutablePlanIdsForSource | ( | DataSourcePtr | source | ) | const |
References sourceToQEPMapping.
|
protected |
Returns the next free task id.
References taskIdCounter.
Referenced by NES::Runtime::DynamicQueryManager::addWorkForNextPipeline(), and NES::Runtime::MultiQueueQueryManager::addWorkForNextPipeline().
| WorkerId NES::Runtime::AbstractQueryManager::getNodeId | ( | ) | const |
| uint64_t NES::Runtime::AbstractQueryManager::getNumberOfBuffersPerEpoch | ( | ) | const |
Returns the numberOfBuffersPerEpoch.
References numberOfBuffersPerEpoch.
|
pure virtual |
get number of tasks in the queue
Implemented in NES::Runtime::MultiQueueQueryManager, and NES::Runtime::DynamicQueryManager.
| uint64_t NES::Runtime::AbstractQueryManager::getNumberOfWorkerThreads | ( | ) |
| Execution::ExecutableQueryPlanStatus NES::Runtime::AbstractQueryManager::getQepStatus | ( | DecomposedQueryIdWithVersion | decomposedQueryIdWithVersion | ) |
retrieve the execution status of a given local query sub plan id.
| decomposedQueryId | : the query sub plan id with version |
References NES::Runtime::Execution::Invalid, queryMutex, and runningQEPs.
Referenced by postReconfigurationCallback().
| Execution::ExecutableQueryPlanPtr NES::Runtime::AbstractQueryManager::getQueryExecutionPlan | ( | DecomposedQueryIdWithVersion | decomposedQueryIdWithVersion | ) | const |
Provides the QEP object for an id.
| id | the plan to lookup |
References queryMutex, and runningQEPs.
Referenced by startNewExecutableQueryPlanAndPropagateMarker().
| QueryStatisticsPtr NES::Runtime::AbstractQueryManager::getQueryStatistics | ( | DecomposedQueryId | decomposedQueryId | ) |
method to return the query statistics
| decomposedQueryId | id of the particular decomposed query |
References queryToStatisticsMap.
| std::optional<ReconfigurationMarkerEventPtr> NES::Runtime::AbstractQueryManager::getReconfigurationEvent | ( | Network::NetworkSourcePtr | networkSource, |
| SharedQueryId | sharedQueryId, | ||
| const ReconfigurationMarker & | marker | ||
| ) | const |
| SharedQueryId NES::Runtime::AbstractQueryManager::getSharedQueryId | ( | DecomposedQueryIdWithVersion | decomposedQueryIdWithVersion | ) | const |
get the shared query id mapped to the decomposed query plan id
| decomposedQueryId | the decomposed query plan id with version |
References runningQEPs, and statisticsMutex.
| bool NES::Runtime::AbstractQueryManager::isThreadPoolRunning | ( | ) | const |
References threadPool.
| void NES::Runtime::AbstractQueryManager::notifyPipelineCompletion | ( | DecomposedQueryId | decomposedQueryId, |
| Execution::ExecutablePipelinePtr | pipeline, | ||
| QueryTerminationType | terminationType | ||
| ) |
Notifies that a pipeline is done with its execution.
| decomposedQueryId | the plan the pipeline belongs to |
| pipeline | the terminated pipeline |
| terminationType | the type of termination (e.g., failure, soft) |
References NES_ASSERT2_FMT, queryMutex, and runningQEPs.
| void NES::Runtime::AbstractQueryManager::notifyQueryStatusChange | ( | const Execution::ExecutableQueryPlanPtr & | qep, |
| Execution::ExecutableQueryPlanStatus | newStatus | ||
| ) |
Informs the query manager about a status change in a sub query plan.
| qep | the sub query plan |
| newStatus | the new status of the query plan |
References addReconfigurationMessage(), NES::Runtime::Destroy, NES::Runtime::Execution::ErrorState, NES::Runtime::Execution::Finished, NES::Runtime::Graceful, NES_ASSERT, NES_ASSERT2_FMT, queryStatusListener, and NES::detail::virtual_enable_shared_from_this< Reconfigurable, false >::shared_from_this().
| void NES::Runtime::AbstractQueryManager::notifySinkCompletion | ( | DecomposedQueryId | decomposedQueryId, |
| DecomposedQueryPlanVersion | decomposedQueryVersion, | ||
| DataSinkPtr | sink, | ||
| QueryTerminationType | terminationType | ||
| ) |
Notifies that a sink operator is done with its execution.
| decomposedQueryId | the id of the plan the sink belongs to |
| decomposedQueryVersion | the version of the plan the sink belongs to |
| sink | the terminated sink |
| terminationType | the type of termination (e.g., failure, soft) |
References NES_ASSERT2_FMT, queryMutex, runningQEPs, and NES::NESStrongType< T, Tag, invalid, initial >::toString().
| void NES::Runtime::AbstractQueryManager::notifySourceCompletion | ( | DataSourcePtr | source, |
| QueryTerminationType | terminationType | ||
| ) |
Notifies that a source operator is done with its execution.
| source | the completed source |
| terminationType | the type of termination (e.g., failure, soft) |
References NES::Runtime::Execution::Finished, NES::Runtime::Graceful, NES_TRACE, queryMutex, queryStatusListener, NES::Runtime::Reconfiguration, and sourceToQEPMapping.
| void NES::Runtime::AbstractQueryManager::notifySourceFailure | ( | DataSourcePtr | source, |
| const std::string | errorMessage | ||
| ) |
This method informs the QueryManager that a source has failed.
| source | the failed source |
| errorMessage | the reason of the feature |
References asyncTaskExecutor, failExecutableQueryPlan(), backward::details::move(), NES_DEBUG, queryMutex, queryStatusListener, and sourceToQEPMapping.
| void NES::Runtime::AbstractQueryManager::notifyTaskFailure | ( | Execution::SuccessorExecutablePipeline | pipeline, |
| const std::string & | message | ||
| ) |
This method informs the QueryManager that a task has failed.
| pipeline | the enclosed pipeline or sink |
| message | the reason of the feature |
References asyncTaskExecutor, failExecutableQueryPlan(), backward::details::move(), NES_DEBUG, NES_WARNING, queryMutex, queryStatusListener, and runningQEPs.
Referenced by NES::Runtime::DynamicQueryManager::processNextTask().
|
delete |
|
pure virtual |
notify all waiting threads in getWork() to wake up and finish up
|
overridevirtual |
This method posts a reconfig callback task
| task | task to call |
Reimplemented from NES::Runtime::Reconfigurable.
References NES::Runtime::Destroy, NES::Runtime::Execution::ErrorState, NES::Runtime::Execution::Finished, NES::Runtime::ReconfigurationMessage::getParentPlanId(), NES::Runtime::ReconfigurationMessage::getParentPlanVersion(), getQepStatus(), NES::Runtime::ReconfigurationMessage::getType(), NES::Runtime::Execution::Invalid, NES_ASSERT, NES_DEBUG, NES_THROW_RUNTIME_ERROR, NES_WARNING, NES::Runtime::Reconfigurable::postReconfigurationCallback(), queryMutex, runningQEPs, and NES::Runtime::Execution::Stopped.
|
pure virtual |
process task from task queue
| bool | indicating if the thread pool is still running |
| worker | context |
Implemented in NES::Runtime::MultiQueueQueryManager, and NES::Runtime::DynamicQueryManager.
| bool NES::Runtime::AbstractQueryManager::propagateReconfigurationMarker | ( | const ReconfigurationMarkerPtr & | marker, |
| DataSourcePtr | source | ||
| ) |
propagates a reconfiguration marker to all downstream operators of a source operator
| source | the source operator |
References addReconfigurationMessage(), magic_enum::enum_name(), NES_DEBUG, NES::Runtime::ReconfigurationMarker, NES::Runtime::SoftEndOfStream, and threadPool.
|
overridevirtual |
This methods triggers the reconfiguration
| context | workercontext |
Reimplemented from NES::Runtime::Reconfigurable.
References NES::Runtime::Destroy, NES::Runtime::ReconfigurationMessage::getType(), NES_THROW_RUNTIME_ERROR, and NES::Runtime::Reconfigurable::reconfigure().
|
virtual |
register a query by extracting sources, windows and sink and add them to respective map
| executableQueryPlan | to be deployed |
Reimplemented in NES::Runtime::MultiQueueQueryManager.
References asyncTaskExecutor, NES::Runtime::Execution::Created, decomposeQueryToSourceIdMapping, NES_ASSERT, NES_ASSERT2_FMT, NES_DEBUG, NES_FATAL_ERROR, NES_WARNING, queryManagerStatus, queryMutex, queryToStatisticsMap, Running, runningQEPs, and sourceToQEPMapping.
Referenced by NES::Runtime::MultiQueueQueryManager::registerExecutableQueryPlan().
| void NES::Runtime::AbstractQueryManager::resetQueryStatistics | ( | NES::DecomposedQueryId | decomposedQueryId | ) |
Reset statistics for the decomposed query plan.
| decomposedQueryId | : the decomposed query plan id |
References queryToStatisticsMap.
| bool NES::Runtime::AbstractQueryManager::startExecutableQueryPlan | ( | const Execution::ExecutableQueryPlanPtr & | qep | ) |
method to start a query
| qep | of the query to start |
References NES_ASSERT2_FMT, NES_DEBUG, NES_FATAL_ERROR, NES_THROW_RUNTIME_ERROR, NES_WARNING, queryManagerStatus, queryToStatisticsMap, and Running.
Referenced by startNewExecutableQueryPlanAndPropagateMarker().
| bool NES::Runtime::AbstractQueryManager::startNewExecutableQueryPlanAndPropagateMarker | ( | const ReconfigurationMarkerPtr | marker, |
| DecomposedQueryIdWithVersion | decomposedQueryIdWithVersion | ||
| ) |
starts new executable plan and propagates reconfiguration marker to it's source
| marker | reconfiguration marker |
| decomposedQueryId | id and version of current plan |
References NES::Runtime::Execution::Finished, getQueryExecutionPlan(), and startExecutableQueryPlan().
| bool NES::Runtime::AbstractQueryManager::stopExecutableQueryPlan | ( | const Execution::ExecutableQueryPlanPtr & | qep, |
| Runtime::QueryTerminationType | type = Runtime::QueryTerminationType::HardStop |
||
| ) |
method to start a query
| qep | of the query to start |
| graceful | stop the query gracefully or not |
References addReconfigurationMessage(), NES::Runtime::Destroy, magic_enum::enum_name(), NES::Runtime::Execution::ErrorState, NES::Runtime::Failure, NES::Runtime::Execution::Finished, NES::Runtime::Graceful, NES::Runtime::HardStop, NES::Runtime::Execution::Invalid, NES_ASSERT2_FMT, NES_DEBUG, NES_FATAL_ERROR, NES_WARNING, NES::Runtime::Execution::Ok, NES::detail::virtual_enable_shared_from_this< Reconfigurable, false >::shared_from_this(), NES::Runtime::Execution::Stopped, timeout, and type.
Referenced by destroy().
|
protectedpure virtual |
Executes cleaning up logic on the task queue.
Implemented in NES::Runtime::MultiQueueQueryManager, and NES::Runtime::DynamicQueryManager.
| bool NES::Runtime::AbstractQueryManager::unregisterExecutableQueryPlan | ( | const Execution::ExecutableQueryPlanPtr & | executableQueryPlan | ) |
deregister a query by extracting sources, windows and sink and remove them from respective map
| executableQueryPlan | to be unregistered |
References decomposeQueryToSourceIdMapping, NES::Runtime::Execution::ErrorState, NES::Runtime::Execution::Finished, NES_ASSERT2_FMT, NES_DEBUG, queryMutex, runningQEPs, sourceToQEPMapping, and NES::Runtime::Execution::Stopped.
|
protectedvirtual |
Method to update the statistics.
| task | |
| sharedQueryId | |
| decomposedQueryId | |
| pipelineId | |
| workerContext |
Reimplemented in NES::Runtime::MultiQueueQueryManager, and NES::Runtime::DynamicQueryManager.
References bufferManagers, NES::Runtime::Task::getBufferRef(), NES::Runtime::TupleBuffer::getChunkNumber(), NES::Runtime::TupleBuffer::getCreationTimestampInMS(), NES::Runtime::WorkerContext::getId(), NES::Runtime::Task::getNumberOfInputTuples(), NES::Runtime::TupleBuffer::getOriginId(), NES_ERROR, NES_WARNING, queryToStatisticsMap, and tempCounterTasksCompleted.
Referenced by completedWork(), NES::Runtime::DynamicQueryManager::updateStatistics(), and NES::Runtime::MultiQueueQueryManager::updateStatistics().
|
friend |
|
friend |
|
protected |
worker thread for async maintenance task, e.g., fail queryIdAndCatalogEntryMapping
Referenced by AbstractQueryManager(), notifySourceFailure(), notifyTaskFailure(), and registerExecutableQueryPlan().
|
protected |
Referenced by getBufferManager(), and updateStatistics().
|
protected |
Referenced by registerExecutableQueryPlan(), and unregisterExecutableQueryPlan().
|
protected |
|
protected |
Referenced by getNodeId().
|
protected |
|
protected |
| folly::Synchronized<std::unordered_map<std::string, std::shared_ptr<BasePersistentSourceProperties> > > NES::Runtime::AbstractQueryManager::persistentSourceProperties |
|
protected |
|
mutableprotected |
Referenced by addEndOfStream(), canTriggerEndOfStream(), destroy(), getQepStatus(), getQueryExecutionPlan(), notifyPipelineCompletion(), notifySinkCompletion(), notifySourceCompletion(), notifySourceFailure(), notifyTaskFailure(), postReconfigurationCallback(), registerExecutableQueryPlan(), NES::Runtime::MultiQueueQueryManager::registerExecutableQueryPlan(), and unregisterExecutableQueryPlan().
|
protected |
|
protected |
Referenced by destroy(), getQueryStatistics(), registerExecutableQueryPlan(), NES::Runtime::MultiQueueQueryManager::registerExecutableQueryPlan(), resetQueryStatistics(), startExecutableQueryPlan(), NES::Runtime::DynamicQueryManager::updateStatistics(), NES::Runtime::MultiQueueQueryManager::updateStatistics(), and updateStatistics().
|
mutableprotected |
|
protected |
|
protected |
|
mutableprotected |
Referenced by destroy(), and getSharedQueryId().
|
protected |
Referenced by getNextTaskId().
|
protected |
Referenced by AbstractQueryManager(), getCurrentTaskSum(), and updateStatistics().
|
protected |
worker threads running compute tasks
Referenced by addEndOfStream(), addFailureEndOfStream(), addHardEndOfStream(), addSoftEndOfStream(), destroy(), isThreadPoolRunning(), and propagateReconfigurationMarker().
|
protected |