NebulaStream  0.6.213
NebulaStream is a data and application management framework for the internet of things
NES::RequestProcessor Namespace Reference

Namespaces

 Experimental
 

Classes

class  AsyncRequestProcessor
 This class asynchronously processes request to be executed by the coordinator. Requests can spawn new requests if the logic requires follow up actions. More...
 
class  AbstractMultiRequest
 
struct  AbstractRequestResponse
 
class  AbstractRequest
 
class  AbstractSubRequest
 
class  AbstractUniRequest
 This class serves as the base class for all coordinator side request logic that is to executed serially inside a single (uni) thread of execution. Requests are queued into the async request processor and then picked up and executed by a thread. More...
 
struct  AddQueryResponse
 
class  AddQueryRequest
 
struct  ExplainResponse
 
class  ExplainRequest
 
struct  FailQueryResponse
 
class  FailQueryRequest
 
struct  ISQPAddLinkResponse
 the response indicating if the add link event was successfully applied More...
 
class  ISQPAddLinkEvent
 Representing the ISQP add link event indicating a new link is established between two worker node ids. More...
 
struct  ISQPAddLinkPropertyResponse
 the response indicating if the add link event was successfully applied More...
 
class  ISQPAddLinkPropertyEvent
 Representing the ISQP add link event indicating a new link is established between two worker node ids. More...
 
struct  ISQPAddNodeResponse
 ISQP add node response indicating if the event was applied successfully or not. More...
 
class  ISQPAddNodeEvent
 ISQP add node represent the event for registering a worker node. More...
 
struct  ISQPAddQueryResponse
 the response indicating the id if the query after successful registration of the add query event More...
 
class  ISQPAddQueryEvent
 Representing the ISQP Add query event. More...
 
struct  ISQPResponse
 base class of ISQP response type More...
 
class  ISQPEvent
 base class for the ISQP event types More...
 
struct  ISQPRemoveLinkResponse
 the response indicating if the remove link event was successfully applied More...
 
class  ISQPRemoveLinkEvent
 the ISQP remove link event More...
 
struct  ISQPRemoveNodeResponse
 the response indicating if the remove node event was successfully applied More...
 
class  ISQPRemoveNodeEvent
 ISQP event indicating the node removal. More...
 
struct  ISQPRemoveQueryResponse
 the response indicating if the remove query was successfully applied More...
 
class  ISQPRemoveQueryEvent
 Representing the ISQP remove query event. More...
 
struct  ISQPRequestResponse
 Response to the execution of the ISQP request with the success, start time, and end time. More...
 
class  ISQPRequest
 This is a meta request that is capable of handling a batch of external events. For example, the system can either execute 10 individual add query requests or one ISQPRequest with a batch of 10 ISQPAddQueryEvents. Both will result in deployment of 10 queries. However, batch based deployment will result in a lower deployment latency. Similarly, we can submit an arbitrary batch consisting of AddQuery, RemoveQuery, AddNode, RemoveNode, AddLink, or RemoveLink events. More...
 
class  GetSourceCatalogRequest
 A request to get information about logical or physical sources in json format or a Schema according to the event type. More...
 
struct  AddKeyDistributionEntryResponse
 the response to the AddKeyDistributionEntry operation More...
 
class  AddKeyDistributionEntryEvent
 An event to add key distribution entry. More...
 
class  AddLogicalSourceEvent
 An event to add a logical source to the source catalog. More...
 
struct  PhysicalSourceDefinition
 
struct  AddPhysicalSourcesResponse
 the response to the add physical sources operation More...
 
class  AddPhysicalSourcesEvent
 Event to add physical sources to a logical source. More...
 
struct  BaseGetSourceCatalogResponse
 
struct  BaseGetSourceJsonResponse
 a response containing source information as json More...
 
class  BaseGetSourceCatalogEvent
 This class represents a event that can be passed to a request to get information about logical or physical sources. More...
 
struct  BaseUpdateSourceCatalogResponse
 
class  BaseUpdateSourceCatalogEvent
 This class represent a event that can be passed to a request to modify the source catalog. More...
 
class  GetAllLogicalSourcesEvent
 An event to get all logical sources from the source catalog. More...
 
class  GetPhysicalSourcesEvent
 An event to get the physical sources of a logical source. More...
 
struct  GetSchemaResponse
 a response containing the schema for a logical source More...
 
class  GetSchemaEvent
 get the schema for a logical source in the source catalog More...
 
class  RemoveAllPhysicalSourcesByWorkerEvent
 An event to remove all physical sources of one Worker from the source catalog. More...
 
class  RemoveLogicalSourceEvent
 An event to remove a logical source from the source catalog. More...
 
class  RemovePhysicalSourceEvent
 An event to remove a physical source from the source catalog. More...
 
class  UpdateLogicalSourceEvent
 An event to update logical source. More...
 
class  UpdateSourceCatalogRequest
 This request allows modifying the source catalog by adding, updating or removing logical and physical sources. More...
 
struct  StopQueryResponse
 
class  StopQueryRequest
 This request is used for stopping a running query in NES cluster. More...
 
class  StorageResourceLocker
 
class  SubRequestFuture
 This class contains a future and a pointer to a sub request object. It's interface ensures that the execution of the sub request has started or finished before any thread will wait on the future. This prevents deadlocks in single threaded execution. More...
 
class  SerialStorageHandler
 This class is intended for serial access and does not perform any locking before creating a resource handle. Not thread safe! More...
 
struct  StorageDataStructures
 This struct contains smart pointers to the data structures which coordinator requests operate on. More...
 
class  StorageHandler
 
class  TwoPhaseLockingStorageHandler
 Resource handles created by this class ensure that the resource has been locked in the growing phase and stay locked until the handle goes out of scope. More...
 
class  UnlockDeleter
 This class holds a lock on the supplied mutex on only releases it when it is destructed. It can be supplied as a custom deleter to a unique pointer to guarantee thread safe access to the resource held by the pointer without freeing the resource when the pointer is destructed. idea taken from: https://stackoverflow.com/questions/23610561/return-locked-resource-from-class-with-automatic-unlocking#comment36245473_23610561. More...
 
class  DummyResponse
 
class  DummySubRequest
 
class  DummyRequest
 
class  DummyStorageHandler
 
class  AbstractMultiRequestTest
 
class  AbstractRequestTest
 
class  AddQueryRequestTest
 
class  ISQPRequestTest
 
class  GetSourceCatalogRequestTest
 
class  UpdateSourceCatalogRequestTest
 
class  StopQueryRequestTest
 
class  TopologyNodeRelocationRequestTest
 
class  TwoPhaseLockingStorageHandlerTest
 
class  MockedDeploymentPhase
 
class  PlacementAmendmentHandlerTest
 

Typedefs

using AbstractRequestPtr = std::shared_ptr< AbstractRequest >
 
using AsyncRequestProcessorPtr = std::shared_ptr< AsyncRequestProcessor >
 
using AbstractSubRequestPtr = std::shared_ptr< AbstractSubRequest >
 
using AbstractRequestResponsePtr = std::shared_ptr< AbstractRequestResponse >
 
using AbstractMultiRequestPtr = std::shared_ptr< AbstractMultiRequest >
 
using StorageHandlerPtr = std::shared_ptr< StorageHandler >
 
using AddQueryRequestPtr = std::shared_ptr< AddQueryRequest >
 
using ExplainRequestPtr = std::shared_ptr< ExplainRequest >
 
using FailQueryRequestPtr = std::shared_ptr< FailQueryRequest >
 
using ISQPAddLinkResponsePtr = std::shared_ptr< ISQPAddLinkResponse >
 
using ISQPAddLinkEventPtr = std::shared_ptr< ISQPAddLinkEvent >
 
using ISQPAddLinkPropertyResponsePtr = std::shared_ptr< ISQPAddLinkPropertyResponse >
 
using ISQPAddLinkPropertyEventPtr = std::shared_ptr< ISQPAddLinkPropertyEvent >
 
using ISQPAddNodeResponsePtr = std::shared_ptr< ISQPAddNodeResponse >
 
using ISQPAddNodeEventPtr = std::shared_ptr< ISQPAddNodeEvent >
 
using ISQPAddQueryResponsePtr = std::shared_ptr< ISQPAddQueryResponse >
 
using ISQPAddQueryEventPtr = std::shared_ptr< ISQPAddQueryEvent >
 
using ISQPEventPtr = std::shared_ptr< ISQPEvent >
 
using ISQPResponsePtr = std::shared_ptr< ISQPResponse >
 
using ISQPRemoveLinkResponsePtr = std::shared_ptr< ISQPRemoveLinkResponse >
 
using ISQPRemoveLinkEventPtr = std::shared_ptr< ISQPRemoveLinkEvent >
 
using ISQPRemoveNodeResponsePtr = std::shared_ptr< ISQPRemoveNodeResponse >
 
using ISQPRemoveNodeEventPtr = std::shared_ptr< ISQPRemoveNodeEvent >
 
using ISQPRemoveQueryResponsePtr = std::shared_ptr< ISQPRemoveQueryResponse >
 
using ISQPRemoveQueryEventPtr = std::shared_ptr< ISQPRemoveQueryEvent >
 
using ISQPRequestPtr = std::shared_ptr< ISQPRequest >
 
using ISQPRequestResponsePtr = std::shared_ptr< ISQPRequestResponse >
 
using PlacementAmendmentInstancePtr = std::shared_ptr< PlacementAmendmentInstance >
 
using GetSourceCatalogRequestPtr = std::shared_ptr< GetSourceCatalogRequest >
 
using GetSourceCatalogEventPtr = std::shared_ptr< BaseGetSourceCatalogEvent >
 
using AddKeyDistributionEntryEventPtr = std::shared_ptr< AddKeyDistributionEntryEvent >
 
using AddLogicalSourceEventPtr = std::shared_ptr< AddLogicalSourceEvent >
 
using AddPhysicalSourcesEventPtr = std::shared_ptr< AddPhysicalSourcesEvent >
 
using UpdateSourceCatalogEventPtr = std::shared_ptr< BaseUpdateSourceCatalogEvent >
 
using GetAllLogicalSourcesEventPtr = std::shared_ptr< GetAllLogicalSourcesEvent >
 
using GetPhysicalSourcesEventPtr = std::shared_ptr< GetPhysicalSourcesEvent >
 
using GetSchemaEventPtr = std::shared_ptr< GetSchemaEvent >
 
using RemoveAllPhysicalSourcesByWorkerEventPtr = std::shared_ptr< RemoveAllPhysicalSourcesByWorkerEvent >
 
using RemoveLogicalSourceEventPtr = std::shared_ptr< RemoveLogicalSourceEvent >
 
using RemovePhysicalSourceEventPtr = std::shared_ptr< RemovePhysicalSourceEvent >
 
using UpdateLogicalSourceEventPtr = std::shared_ptr< UpdateLogicalSourceEvent >
 
using UpdateSourceCatalogRequestPtr = std::shared_ptr< UpdateSourceCatalogRequest >
 
using StopQueryRequestPtr = std::shared_ptr< StopQueryRequest >
 
using TicketId = uint16_t
 
using TwoPhaseLockingStorageHandlerPtr = std::shared_ptr< TwoPhaseLockingStorageHandler >
 

Enumerations

enum class  WorkerType : uint8_t { CLOUD = 0 , FOG = 1 , SENSOR = 2 }
 
enum class  ResourceType : uint8_t {
  Topology , QueryCatalogService , SourceCatalog , GlobalExecutionPlan ,
  GlobalQueryPlan , UdfCatalog , CoordinatorConfiguration , StatisticProbeHandler
}
 This class is used by coordinator side requests to indicate which data structures they need to access to perform an operation so they can acquire locks before starting to execute the request logic. More...
 

Functions

 TEST_F (AbstractMultiRequestTest, testOneMainThreadOneExecutor)
 
 TEST_F (AbstractMultiRequestTest, testOneMainThreadTwoExecutors)
 
 TEST_F (AbstractRequestTest, testPromise)
 
 TEST_F (AddQueryRequestTest, testAddQueryRequestWithOneQuery)
 
void updateCapturedValue (const NES::Optimizer::PlacementAmendmentInstancePtr &placementAmendmentInstance)
 
 TEST_F (ISQPRequestTest, testISQPAddNodeAndLinkEvents)
 
 TEST_F (ISQPRequestTest, testFirstISQPAddNodeThenRemoveNodes)
 
 TEST_F (ISQPRequestTest, testAddQueryEvents)
 
 TEST_F (ISQPRequestTest, testMultipleAddQueryEventsInaSingleBatch)
 
 TEST_F (ISQPRequestTest, testMultipleAddQueryEventsInDifferentBatchWithMerging)
 
 TEST_F (ISQPRequestTest, testMultipleAddQueryEventsInDifferentBatchWithoutMerging)
 
 TEST_F (ISQPRequestTest, testTopologyChangeEventsInaSingleBatchWithMergingWithoutIncrementalPlacement)
 
 TEST_F (GetSourceCatalogRequestTest, GetAllLogicalSources)
 
 TEST_F (GetSourceCatalogRequestTest, GetLogicalSource)
 
 TEST_F (GetSourceCatalogRequestTest, GetPhysicalSources)
 
 TEST_F (UpdateSourceCatalogRequestTest, AddLogicalSource)
 
 TEST_F (UpdateSourceCatalogRequestTest, RemoveLogicalSource)
 
 TEST_F (UpdateSourceCatalogRequestTest, UpdateLogicalSource)
 
 TEST_F (UpdateSourceCatalogRequestTest, AddPhysicalSources)
 
 TEST_F (UpdateSourceCatalogRequestTest, RemovePhysicalSource)
 
 TEST_F (StopQueryRequestTest, createSimpleStopRequest)
 Test that the constructor of StopQueryRequest works as expected. More...
 
 TEST_F (TopologyNodeRelocationRequestTest, testFindingIncrementalUpstreamAndDownstream)
 Test the algorithm to identify the upstream and downstream operators used as an input for an incremental placement to be performed due to a topology link removal. Construct a topology, place query subplans and calculate the sets of upstream and downstream operators of an incremental placement. More...
 
 TEST_F (TwoPhaseLockingStorageHandlerTest, TestResourceAccess)
 
 TEST_F (TwoPhaseLockingStorageHandlerTest, TestNoResourcesLocked)
 
 TEST_F (TwoPhaseLockingStorageHandlerTest, TestDoubleLocking)
 
 TEST_F (TwoPhaseLockingStorageHandlerTest, TestLocking)
 
 TEST_F (TwoPhaseLockingStorageHandlerTest, TestNoDeadLock)
 
void handleMockedPlacementAmendmentCall (const NES::Optimizer::PlacementAmendmentInstancePtr &placementAmendmentInstance)
 
 TEST_F (PlacementAmendmentHandlerTest, testAddQueryEvents)
 
 TEST_F (PlacementAmendmentHandlerTest, testMultipleAddQueryEventsInaSingleBatchWithMergingWithIncrementalPlacement2PL)
 
 TEST_F (PlacementAmendmentHandlerTest, testMultipleAddQueryEventsInaSingleBatchWithMergingWithoutIncrementalPlacement2PL)
 
 TEST_F (PlacementAmendmentHandlerTest, testMultipleAddQueryEventsInaSingleBatchWithoutMergingWithoutIncrementalPlacementWith2PL)
 
 TEST_F (PlacementAmendmentHandlerTest, testMultipleAddQueryEventsInaSingleBatchWithoutMergingWithoutIncrementalPlacementWithOCC)
 
 TEST_F (PlacementAmendmentHandlerTest, testMultipleAddQueryEventsInaSingleBatchWithMergingWithoutIncrementalPlacementWithOCC)
 
 TEST_F (PlacementAmendmentHandlerTest, testMultipleAddQueryEventsInDifferentBatchWithMergingWithIncrementalPlacementOCC)
 
 TEST_F (PlacementAmendmentHandlerTest, testMultipleAddQueryEventsInDifferentBatchWithMergingWithoutIncrementalPlacement)
 
 TEST_F (PlacementAmendmentHandlerTest, testMultipleAddQueryEventsInDifferentBatchWithoutMergingWithoutIncrementalPlacement)
 
 TEST_F (PlacementAmendmentHandlerTest, testFailureDuringPlacementOfMultipleQueriesUsingOptimisticStrategy)
 
 TEST_F (PlacementAmendmentHandlerTest, testTopologyChangeEventsInaSingleBatchWithMergingWithoutIncrementalPlacement2PL)
 
 TEST_F (PlacementAmendmentHandlerTest, testTopologyChangeEventsFourUnionQueryInaSingleBatchWithMergingWithoutIncrementalPlacement2PL)
 
 TEST_F (PlacementAmendmentHandlerTest, testTopologyChangeEventsFourUnionQueryInaSingleBatchWithMergingWithIncrementalPlacement2PL)
 
 TEST_F (PlacementAmendmentHandlerTest, testJoinMigrationAmendmentPhase)
 

Variables

const uint8_t DEFAULT_RETRIES = 1
 
constexpr uint8_t ISQP_ADD_NODE_EVENT_PRIORITY = 0
 
constexpr uint8_t ISQP_ADD_LINK_EVENT_PRIORITY = 1
 
constexpr uint8_t ISQP_REMOVE_LINK_EVENT_PRIORITY = 2
 
constexpr uint8_t ISQP_REMOVE_NODE_EVENT_PRIORITY = 3
 
constexpr uint8_t ISQP_ADD_QUERY_EVENT_PRIORITY = 4
 
constexpr uint8_t ISQP_REMOVE_QUERY_EVENT_PRIORITY = 5
 
const std::vector< ResourceTyperesourceTypeList
 

Typedef Documentation

◆ AbstractMultiRequestPtr

◆ AbstractRequestPtr

◆ AbstractRequestResponsePtr

◆ AbstractSubRequestPtr

◆ AddKeyDistributionEntryEventPtr

◆ AddLogicalSourceEventPtr

◆ AddPhysicalSourcesEventPtr

◆ AddQueryRequestPtr

◆ AsyncRequestProcessorPtr

◆ ExplainRequestPtr

using NES::RequestProcessor::ExplainRequestPtr = typedef std::shared_ptr<ExplainRequest>

◆ FailQueryRequestPtr

◆ GetAllLogicalSourcesEventPtr

◆ GetPhysicalSourcesEventPtr

◆ GetSchemaEventPtr

using NES::RequestProcessor::GetSchemaEventPtr = typedef std::shared_ptr<GetSchemaEvent>

◆ GetSourceCatalogEventPtr

◆ GetSourceCatalogRequestPtr

◆ ISQPAddLinkEventPtr

◆ ISQPAddLinkPropertyEventPtr

◆ ISQPAddLinkPropertyResponsePtr

◆ ISQPAddLinkResponsePtr

◆ ISQPAddNodeEventPtr

◆ ISQPAddNodeResponsePtr

◆ ISQPAddQueryEventPtr

◆ ISQPAddQueryResponsePtr

◆ ISQPEventPtr

typedef std::shared_ptr< ISQPEvent > NES::RequestProcessor::ISQPEventPtr

◆ ISQPRemoveLinkEventPtr

◆ ISQPRemoveLinkResponsePtr

◆ ISQPRemoveNodeEventPtr

◆ ISQPRemoveNodeResponsePtr

◆ ISQPRemoveQueryEventPtr

◆ ISQPRemoveQueryResponsePtr

◆ ISQPRequestPtr

using NES::RequestProcessor::ISQPRequestPtr = typedef std::shared_ptr<ISQPRequest>

◆ ISQPRequestResponsePtr

◆ ISQPResponsePtr

using NES::RequestProcessor::ISQPResponsePtr = typedef std::shared_ptr<ISQPResponse>

◆ PlacementAmendmentInstancePtr

using NES::RequestProcessor::PlacementAmendmentInstancePtr = typedef std::shared_ptr<PlacementAmendmentInstance>

◆ RemoveAllPhysicalSourcesByWorkerEventPtr

◆ RemoveLogicalSourceEventPtr

◆ RemovePhysicalSourceEventPtr

◆ StopQueryRequestPtr

◆ StorageHandlerPtr

◆ TicketId

using NES::RequestProcessor::TicketId = typedef uint16_t

◆ TwoPhaseLockingStorageHandlerPtr

◆ UpdateLogicalSourceEventPtr

◆ UpdateSourceCatalogEventPtr

◆ UpdateSourceCatalogRequestPtr

Enumeration Type Documentation

◆ ResourceType

enum NES::RequestProcessor::ResourceType : uint8_t
strong

This class is used by coordinator side requests to indicate which data structures they need to access to perform an operation so they can acquire locks before starting to execute the request logic.

Enumerator
Topology 
QueryCatalogService 
SourceCatalog 
GlobalExecutionPlan 
GlobalQueryPlan 
UdfCatalog 
CoordinatorConfiguration 
StatisticProbeHandler 

◆ WorkerType

enum NES::RequestProcessor::WorkerType : uint8_t
strong
Enumerator
CLOUD 
FOG 
SENSOR 

Function Documentation

◆ handleMockedPlacementAmendmentCall()

void NES::RequestProcessor::handleMockedPlacementAmendmentCall ( const NES::Optimizer::PlacementAmendmentInstancePtr placementAmendmentInstance)

Referenced by TEST_F().

Here is the caller graph for this function:

◆ TEST_F() [1/40]

NES::RequestProcessor::TEST_F ( AbstractMultiRequestTest  ,
testOneMainThreadOneExecutor   
)

References NES::RequestProcessor::AbstractMultiRequest::execute(), NES::RequestProcessor::AbstractRequest::getFuture(), NES::RequestProcessor::AbstractMultiRequest::isDone(), and NES::RequestProcessor::AbstractRequest::setId().

Here is the call graph for this function:

◆ TEST_F() [2/40]

NES::RequestProcessor::TEST_F ( AbstractMultiRequestTest  ,
testOneMainThreadTwoExecutors   
)

References NES::RequestProcessor::AbstractMultiRequest::execute(), NES::RequestProcessor::AbstractRequest::getFuture(), NES::RequestProcessor::AbstractMultiRequest::isDone(), and NES::RequestProcessor::AbstractRequest::setId().

Here is the call graph for this function:

◆ TEST_F() [3/40]

NES::RequestProcessor::TEST_F ( AbstractRequestTest  ,
testPromise   
)

◆ TEST_F() [4/40]

NES::RequestProcessor::TEST_F ( AddQueryRequestTest  ,
testAddQueryRequestWithOneQuery   
)

◆ TEST_F() [5/40]

NES::RequestProcessor::TEST_F ( GetSourceCatalogRequestTest  ,
GetAllLogicalSources   
)

References NES::RequestProcessor::GetAllLogicalSourcesEvent::create(), and NES::RequestProcessor::GetSourceCatalogRequest::create().

Here is the call graph for this function:

◆ TEST_F() [6/40]

NES::RequestProcessor::TEST_F ( GetSourceCatalogRequestTest  ,
GetLogicalSource   
)

References NES::RequestProcessor::GetSourceCatalogRequest::create(), and NES::RequestProcessor::GetSchemaEvent::create().

Here is the call graph for this function:

◆ TEST_F() [7/40]

NES::RequestProcessor::TEST_F ( GetSourceCatalogRequestTest  ,
GetPhysicalSources   
)

References NES::RequestProcessor::GetSourceCatalogRequest::create(), NES::RequestProcessor::GetPhysicalSourcesEvent::create(), and size().

Here is the call graph for this function:

◆ TEST_F() [8/40]

NES::RequestProcessor::TEST_F ( ISQPRequestTest  ,
testAddQueryEvents   
)

References NES::TestUtils::logicalSourceName(), NES::Spatial::Experimental::NO_LOCATION, and updateCapturedValue().

Here is the call graph for this function:

◆ TEST_F() [9/40]

NES::RequestProcessor::TEST_F ( ISQPRequestTest  ,
testFirstISQPAddNodeThenRemoveNodes   
)

◆ TEST_F() [10/40]

NES::RequestProcessor::TEST_F ( ISQPRequestTest  ,
testISQPAddNodeAndLinkEvents   
)

◆ TEST_F() [11/40]

NES::RequestProcessor::TEST_F ( ISQPRequestTest  ,
testMultipleAddQueryEventsInaSingleBatch   
)

References NES::TestUtils::logicalSourceName(), NES::Spatial::Experimental::NO_LOCATION, and updateCapturedValue().

Here is the call graph for this function:

◆ TEST_F() [12/40]

NES::RequestProcessor::TEST_F ( ISQPRequestTest  ,
testMultipleAddQueryEventsInDifferentBatchWithMerging   
)

References NES::TestUtils::logicalSourceName(), NES::Spatial::Experimental::NO_LOCATION, and updateCapturedValue().

Here is the call graph for this function:

◆ TEST_F() [13/40]

NES::RequestProcessor::TEST_F ( ISQPRequestTest  ,
testMultipleAddQueryEventsInDifferentBatchWithoutMerging   
)

References NES::TestUtils::logicalSourceName(), NES::Spatial::Experimental::NO_LOCATION, and updateCapturedValue().

Here is the call graph for this function:

◆ TEST_F() [14/40]

NES::RequestProcessor::TEST_F ( ISQPRequestTest  ,
testTopologyChangeEventsInaSingleBatchWithMergingWithoutIncrementalPlacement   
)

References NES::Attribute(), NES::TestUtils::logicalSourceName(), NES::Spatial::Experimental::NO_LOCATION, and updateCapturedValue().

Here is the call graph for this function:

◆ TEST_F() [15/40]

NES::RequestProcessor::TEST_F ( PlacementAmendmentHandlerTest  ,
testAddQueryEvents   
)

References handleMockedPlacementAmendmentCall(), and NES::TestUtils::logicalSourceName().

Here is the call graph for this function:

◆ TEST_F() [16/40]

NES::RequestProcessor::TEST_F ( PlacementAmendmentHandlerTest  ,
testFailureDuringPlacementOfMultipleQueriesUsingOptimisticStrategy   
)

References NES::Attribute(), handleMockedPlacementAmendmentCall(), NES::TestUtils::logicalSourceName(), NES::Spatial::Experimental::NO_LOCATION, and NES::TestUtils::numberOfSlots().

Here is the call graph for this function:

◆ TEST_F() [17/40]

NES::RequestProcessor::TEST_F ( PlacementAmendmentHandlerTest  ,
testJoinMigrationAmendmentPhase   
)

◆ TEST_F() [18/40]

NES::RequestProcessor::TEST_F ( PlacementAmendmentHandlerTest  ,
testMultipleAddQueryEventsInaSingleBatchWithMergingWithIncrementalPlacement2PL   
)

References handleMockedPlacementAmendmentCall(), and NES::TestUtils::logicalSourceName().

Here is the call graph for this function:

◆ TEST_F() [19/40]

NES::RequestProcessor::TEST_F ( PlacementAmendmentHandlerTest  ,
testMultipleAddQueryEventsInaSingleBatchWithMergingWithoutIncrementalPlacement2PL   
)

References NES::Attribute(), handleMockedPlacementAmendmentCall(), and NES::TestUtils::logicalSourceName().

Here is the call graph for this function:

◆ TEST_F() [20/40]

NES::RequestProcessor::TEST_F ( PlacementAmendmentHandlerTest  ,
testMultipleAddQueryEventsInaSingleBatchWithMergingWithoutIncrementalPlacementWithOCC   
)

References NES::Attribute(), handleMockedPlacementAmendmentCall(), and NES::Spatial::Experimental::NO_LOCATION.

Here is the call graph for this function:

◆ TEST_F() [21/40]

NES::RequestProcessor::TEST_F ( PlacementAmendmentHandlerTest  ,
testMultipleAddQueryEventsInaSingleBatchWithoutMergingWithoutIncrementalPlacementWith2PL   
)

References NES::Attribute(), handleMockedPlacementAmendmentCall(), and NES::TestUtils::logicalSourceName().

Here is the call graph for this function:

◆ TEST_F() [22/40]

NES::RequestProcessor::TEST_F ( PlacementAmendmentHandlerTest  ,
testMultipleAddQueryEventsInaSingleBatchWithoutMergingWithoutIncrementalPlacementWithOCC   
)

References NES::Attribute(), handleMockedPlacementAmendmentCall(), NES::TestUtils::logicalSourceName(), and NES::Spatial::Experimental::NO_LOCATION.

Here is the call graph for this function:

◆ TEST_F() [23/40]

NES::RequestProcessor::TEST_F ( PlacementAmendmentHandlerTest  ,
testMultipleAddQueryEventsInDifferentBatchWithMergingWithIncrementalPlacementOCC   
)

References handleMockedPlacementAmendmentCall(), NES::TestUtils::logicalSourceName(), and NES::Spatial::Experimental::NO_LOCATION.

Here is the call graph for this function:

◆ TEST_F() [24/40]

NES::RequestProcessor::TEST_F ( PlacementAmendmentHandlerTest  ,
testMultipleAddQueryEventsInDifferentBatchWithMergingWithoutIncrementalPlacement   
)

References handleMockedPlacementAmendmentCall(), and NES::Spatial::Experimental::NO_LOCATION.

Here is the call graph for this function:

◆ TEST_F() [25/40]

NES::RequestProcessor::TEST_F ( PlacementAmendmentHandlerTest  ,
testMultipleAddQueryEventsInDifferentBatchWithoutMergingWithoutIncrementalPlacement   
)

References handleMockedPlacementAmendmentCall(), NES::TestUtils::logicalSourceName(), and NES::Spatial::Experimental::NO_LOCATION.

Here is the call graph for this function:

◆ TEST_F() [26/40]

NES::RequestProcessor::TEST_F ( PlacementAmendmentHandlerTest  ,
testTopologyChangeEventsFourUnionQueryInaSingleBatchWithMergingWithIncrementalPlacement2PL   
)

References NES::Attribute(), handleMockedPlacementAmendmentCall(), and NES::Spatial::Experimental::NO_LOCATION.

Here is the call graph for this function:

◆ TEST_F() [27/40]

NES::RequestProcessor::TEST_F ( PlacementAmendmentHandlerTest  ,
testTopologyChangeEventsFourUnionQueryInaSingleBatchWithMergingWithoutIncrementalPlacement2PL   
)

References NES::Attribute(), handleMockedPlacementAmendmentCall(), and NES::Spatial::Experimental::NO_LOCATION.

Here is the call graph for this function:

◆ TEST_F() [28/40]

NES::RequestProcessor::TEST_F ( PlacementAmendmentHandlerTest  ,
testTopologyChangeEventsInaSingleBatchWithMergingWithoutIncrementalPlacement2PL   
)

References NES::Attribute(), handleMockedPlacementAmendmentCall(), NES::TestUtils::logicalSourceName(), and NES::Spatial::Experimental::NO_LOCATION.

Here is the call graph for this function:

◆ TEST_F() [29/40]

NES::RequestProcessor::TEST_F ( StopQueryRequestTest  ,
createSimpleStopRequest   
)

Test that the constructor of StopQueryRequest works as expected.

References NES::RequestProcessor::StopQueryRequest::create().

Here is the call graph for this function:

◆ TEST_F() [30/40]

NES::RequestProcessor::TEST_F ( TopologyNodeRelocationRequestTest  ,
testFindingIncrementalUpstreamAndDownstream   
)

Test the algorithm to identify the upstream and downstream operators used as an input for an incremental placement to be performed due to a topology link removal. Construct a topology, place query subplans and calculate the sets of upstream and downstream operators of an incremental placement.

References NES::Schema::create(), NES::RequestProcessor::SerialStorageHandler::create(), NES::DataTypeFactory::createBasicValue(), NES::createField(), NES::DataTypeFactory::createInt8(), NES::DATA_CHANNEL_RETRY_TIMES, NES::TestUtils::dataPort(), DEFAULT_NUMBER_OF_ORIGINS, NES::Optimizer::DOWNSTREAM_LOGICAL_OPERATOR_ID, NES::EVENT_CHANNEL_RETRY_TIMES, NES::Experimental::findNetworkOperatorsForLink(), NES::Experimental::findUpstreamAndDownstreamPinnedOperators(), NES::Optimizer::PINNED_WORKER_ID, NES::TestUtils::restPort(), NES::UINT64, NES::Optimizer::UPSTREAM_LOGICAL_OPERATOR_ID, and NES::WAIT_TIME.

Here is the call graph for this function:

◆ TEST_F() [31/40]

NES::RequestProcessor::TEST_F ( TwoPhaseLockingStorageHandlerTest  ,
TestDoubleLocking   
)

References NES::RequestProcessor::TwoPhaseLockingStorageHandler::create().

Here is the call graph for this function:

◆ TEST_F() [32/40]

NES::RequestProcessor::TEST_F ( TwoPhaseLockingStorageHandlerTest  ,
TestLocking   
)

References NES::RequestProcessor::TwoPhaseLockingStorageHandler::create(), NES_DEBUG, and Topology.

Here is the call graph for this function:

◆ TEST_F() [33/40]

NES::RequestProcessor::TEST_F ( TwoPhaseLockingStorageHandlerTest  ,
TestNoDeadLock   
)

References NES::RequestProcessor::TwoPhaseLockingStorageHandler::create(), GlobalExecutionPlan, GlobalQueryPlan, NES_DEBUG, QueryCatalogService, SourceCatalog, Topology, and UdfCatalog.

Here is the call graph for this function:

◆ TEST_F() [34/40]

NES::RequestProcessor::TEST_F ( TwoPhaseLockingStorageHandlerTest  ,
TestNoResourcesLocked   
)

References NES::RequestProcessor::TwoPhaseLockingStorageHandler::create().

Here is the call graph for this function:

◆ TEST_F() [35/40]

NES::RequestProcessor::TEST_F ( TwoPhaseLockingStorageHandlerTest  ,
TestResourceAccess   
)

References NES::RequestProcessor::TwoPhaseLockingStorageHandler::create().

Here is the call graph for this function:

◆ TEST_F() [36/40]

NES::RequestProcessor::TEST_F ( UpdateSourceCatalogRequestTest  ,
AddLogicalSource   
)

References NES::Schema::create(), NES::RequestProcessor::AddLogicalSourceEvent::create(), NES::RequestProcessor::UpdateSourceCatalogRequest::create(), and NES::UINT64.

Here is the call graph for this function:

◆ TEST_F() [37/40]

NES::RequestProcessor::TEST_F ( UpdateSourceCatalogRequestTest  ,
AddPhysicalSources   
)

References NES::Schema::create(), NES::RequestProcessor::AddPhysicalSourcesEvent::create(), NES::RequestProcessor::UpdateSourceCatalogRequest::create(), and NES::UINT64.

Here is the call graph for this function:

◆ TEST_F() [38/40]

NES::RequestProcessor::TEST_F ( UpdateSourceCatalogRequestTest  ,
RemoveLogicalSource   
)

References NES::Schema::create(), NES::RequestProcessor::RemoveLogicalSourceEvent::create(), NES::RequestProcessor::UpdateSourceCatalogRequest::create(), and NES::UINT64.

Here is the call graph for this function:

◆ TEST_F() [39/40]

NES::RequestProcessor::TEST_F ( UpdateSourceCatalogRequestTest  ,
RemovePhysicalSource   
)

References NES::Schema::create(), NES::RequestProcessor::RemovePhysicalSourceEvent::create(), NES::RequestProcessor::AddPhysicalSourcesEvent::create(), NES::RequestProcessor::UpdateSourceCatalogRequest::create(), and NES::UINT64.

Here is the call graph for this function:

◆ TEST_F() [40/40]

NES::RequestProcessor::TEST_F ( UpdateSourceCatalogRequestTest  ,
UpdateLogicalSource   
)

References NES::Schema::create(), NES::RequestProcessor::UpdateLogicalSourceEvent::create(), NES::RequestProcessor::UpdateSourceCatalogRequest::create(), and NES::UINT64.

Here is the call graph for this function:

◆ updateCapturedValue()

void NES::RequestProcessor::updateCapturedValue ( const NES::Optimizer::PlacementAmendmentInstancePtr placementAmendmentInstance)

Referenced by TEST_F().

Here is the caller graph for this function:

Variable Documentation

◆ DEFAULT_RETRIES

◆ ISQP_ADD_LINK_EVENT_PRIORITY

constexpr uint8_t NES::RequestProcessor::ISQP_ADD_LINK_EVENT_PRIORITY = 1
constexpr

◆ ISQP_ADD_NODE_EVENT_PRIORITY

constexpr uint8_t NES::RequestProcessor::ISQP_ADD_NODE_EVENT_PRIORITY = 0
constexpr

◆ ISQP_ADD_QUERY_EVENT_PRIORITY

constexpr uint8_t NES::RequestProcessor::ISQP_ADD_QUERY_EVENT_PRIORITY = 4
constexpr

◆ ISQP_REMOVE_LINK_EVENT_PRIORITY

constexpr uint8_t NES::RequestProcessor::ISQP_REMOVE_LINK_EVENT_PRIORITY = 2
constexpr

◆ ISQP_REMOVE_NODE_EVENT_PRIORITY

constexpr uint8_t NES::RequestProcessor::ISQP_REMOVE_NODE_EVENT_PRIORITY = 3
constexpr

◆ ISQP_REMOVE_QUERY_EVENT_PRIORITY

constexpr uint8_t NES::RequestProcessor::ISQP_REMOVE_QUERY_EVENT_PRIORITY = 5
constexpr

◆ resourceTypeList

const std::vector<ResourceType> NES::RequestProcessor::resourceTypeList
Initial value:
= {ResourceType::Topology,
ResourceType::CoordinatorConfiguration,
ResourceType::QueryCatalogService,
ResourceType::SourceCatalog,
ResourceType::GlobalExecutionPlan,
ResourceType::GlobalQueryPlan,
ResourceType::UdfCatalog,
ResourceType::StatisticProbeHandler}

Referenced by NES::RequestProcessor::TwoPhaseLockingStorageHandler::releaseResources().