Parameter handling was changed in two incompatible ways from TIBCO Streaming version 10.4 to version 10.5:
1. Operator Parameters (Global Parameters) are deprecated in favor of Container Parameters.
2. Operator Parameters, Module Parameters, Container Parameters, and Substitution Variables namespaces are conflated.
The conflation of the namespaces results in cases where an Operator Parameter set by a Substitution Variable of the same name is now illegal. A Module Parameter in a .sbapp module set by an Operator Parameter or Container Parameter of the same name is now illegal. Both of these constructions which worked in TIBCO Streaming 10.4 will cause this error in TIBCO Streaming 10.5 and later.
The necessary migration step is to rename the parameters in each separate use so that all names are unique across all uses and no setting of a parameter is made from a parameter with the same name, regardless of the type of the parameter.
The error will be caused by the deprecated
operatorParameters definition in the
StreamBaseEngine configuration:
streamBase = { operatorParameters = { "SYSTEM" = "${SYSTEM:-defaultValue}"
The operator parameter and the referenced substitution variable have the same name. This condition is not typechecked by Studio in version 10.5. It will only be detected by the server at node start, causing the previously mentioned error.
Within a module
.sbapp in a Studio editor, the error will be caused by a Parameter setting like this:
Change the name of one of the parameters so that it is distinguished from all other parameters within the project and within all fragments that will be run together as part of a single StreamBase container within the Streaming node.