StreamGraph::deleteRule
Syntax
StreamGraph::deleteRule(engineName, key)
Arguments
engineName is a string representing the fully qualified name of the streaming
engine, such as "catalog_name.orca_engine.engine_name"
.
key is a STRING or INT scalar indicating the key for the rule set to be deleted.
Details
This function deletes the rule set associated with the specified key in the stream graph’s rule engine.
The core difference from the updateRule
interface is:
- Rule changes executed via
StreamGraph::updateRule
are automatically persisted by the system, ensuring that all committed rule modifications are loaded and remain effective after a service restart. - Rule changes made via
updateRule
only exist in memory, and the modifications will be lost after a service restart.
Examples
createCatalog("demo")
go
use catalog demo
// Set the rule set
x = [1, 2, NULL]
y = [ [ < value > 1 > ], [ < price < 2 >, < price > 6 > ], [ < value*price > 10 > ] ]
ruleSets = dict(x, y)
// Create and submit the stream graph
g = createStreamGraph("updateRuleDemo")
g.source("trades", 1000:0, `sym`value`price`quantity, [INT, DOUBLE, DOUBLE, DOUBLE])
.ruleEngine(ruleSets=ruleSets, outputColumns=["sym","value","price"], policy="all", ruleSetColumn="sym")
.setEngineName("myRuleEngine")
.sink("output")
g.submit()
// delete the rule
g.deleteRule("demo.orca_engine.myRuleEngine",1)
Related functions: StreamGraph::updateRule, updateRule