Operators that support consistent regions
An operator might not support all of its possible
parameters when it is in a consistent region.
The lists below summarize support for operators that are included in the SPL standard toolkit
(spl
) and specialized toolkits. Note that these lists are not
exhaustive. Review the documentation for the specific operator to find out the details
of support.
The following operators can start a consistent region. These start operators of a consistent region are typically source operators:
- Beacon
- DirectoryScan
- FileSource
- ReplayableStart
- Generator in the TimeSeries Toolkit
The following operators can be in a consistent region with any of its possible parameters:
- Aggregate
- Beacon
- Compress
- CharacterTransform
- Decompress
- DeDuplicate
- Delay
- DynamicFilter
- Filter
- Format
- Functor
- Join
- MetricsSink
- Punctor
- ReplayableStart
- Sort
- Split
- ThreadedSplit
- Throttle
- UDPSink
- Union
- XMLParse
- HBaseDelete in the HBase toolkit
- HBaseGet in the HBase toolkit
- HBasePut in the HBase toolkit
- HBaseScan in the HBase toolkit
- HDFS2FileSink in the Hadoop Distributed File System Toolkit
- HDFS2FileSource in the Hadoop Distributed File System Toolkit
- MatchRegex in the Complex Event Processing Toolkit
- Geofence in the Geospatial Toolkit
- SpatialGridIndex in the Geospatial Toolkit
- SpatialRouter in the Geospatial Toolkit
- AnomalyDetector in the TimeSeries Toolkit
- ARIMA2 in the TimeSeries Toolkit
- AutoForecaster2 in the TimeSeries Toolkit
- CrossCorrelate2 in the TimeSeries Toolkit
- CrossCorrelateMulti in the TimeSeries Toolkit
- DSPFilter2 in the TimeSeries Toolkit
- DSPFilterFinite in the TimeSeries Toolkit
- DWT2 in the TimeSeries Toolkit
- FFT in the TimeSeries Toolkit
- Generator in the TimeSeries Toolkit
- GMM in the TimeSeries Toolkit
- HoltWinters2 in the TimeSeries Toolkit
- Kalman in the TimeSeries Toolkit
- ReSample in the TimeSeries Toolkit
- STD in the TimeSeries Toolkit
- VAR2 in the TimeSeries Toolkit
The following operators can be in a consistent region with a limited set of parameters or application topology configurations:
- Barrier
- Custom
- DirectoryScan
- FileSink
- FileSource
- JavaOp
- Pair
- Parse
- HDFS2DirectoryScan in the Hadoop Distributed File System Toolkit
- KMeansClustering in the TimeSeries Toolkit
For any SPL standard toolkit operator not supporting consistent regions, placing the operator in a consistent region generates a compile-time error. User-written operators should use the SPL Operator Code Generation API to check whether the operator is in a consistent region and issue an error message. The following code snippet shows some sample code for C++ primitive operators:
my $isInConsistentRegion = $model->getContext()->getOptionalContext("ConsistentRegion");
if ($isInConsistentRegion) {
SPL::CodeGen::exitln(SPL::Msg::OP_CANNOT_LIVE_IN_CC_REGION($model->getContext()->getKind()),
$model->getContext()->getSourceLocation());
}