I ran the rtiroutingservice using an example QOS config file. It doesn't recognize configuration_variables nor does it recognize them passed in as arguments (-D). It only recognizes them when defined as environment variables. This has been tried on multiple Windows PCs using v6.1.0 and target x64Win64VS2017 with the same effect:
[/routing_services/WanGateway|CREATE] RTIXMLHelper_expandEnvironmentVariables:Undefined environment variable PUBLIC_ADDRESS
[/routing_services/WanGateway|CREATE] RTIXMLParser_onEndTag:Internal error while parsing line 60: error expanding environment variable
...
Does anyone know what the issue may be?
Hi John,
Since your project has a support contract with RTI, I think it would be more efficient for you to submit a support case through support@rti.com or better yet, through your RTI customer portal.
Our support team can work with you directly to help resolve the issue.
In your support case, I suggest that you provide an example configuration file that explains more what you're trying to do. I'm not sure what you mean by the term "configuration_variable" and how you're trying to use it.
Please also provide an example command line to start RTI Routing Service that you have used the "-D" option to set an environment variable used by the XML configuration file.
Did you use "-DPUBLIC_ADDRESS=10.10.0.1" for example? Having this information in your initial case submission will help the support team to be more efficient at answering your question.
Thanks!
This doc section states the precedence of setting configuration variables:
https://community.rti.com/static/documentation/connext-dds/6.1.0/doc/manuals/connext_dds_professional/services/routing_service/common/config.html#configuration-variables
Here is the command line I'm running:
C:\Program Files\rti_connext_dds-6.1.0>bin\rtiroutingservice -cfgFile "C:\Users\<username>\Documents\rti_workspace\6.1.0\rti_rs_example_tcp_wan.xml" -cfgName WanGateway -appName GatewaySiteA -DPUBLIC_ADDRESS=10.10.10.1
The example xml has been unmodified and works just fine is I define the environment variables. It contains the configuration_variables element with PUBLIC_ADDRESS defined for instance.
Thanks for the links to the example and doc. Sorry, I wasn't aware of the <configuration_variables> XML tag, nor terminology, ...it seems like it was added by Connext 6.1.0.
I was able to reproduce your issues...I believe that there are multiple bugs involved...but all leading to what you've found. Using only environment variables to set the value of the configuration variables work. Using <configuration_variables> does not. Actually, it seems that using "-Dxxx=yyy" can work....but you have to remove the <configuration_variables> section from the XML....AND for some reason, you have to specify PUBLIC_ADDRESS twice???! on the command line (in addition to the other variable that are used).
In any case, I'm reporting this to our development team through our bug/issue tracking system. In the meantime, you can use a batch file to first set the environment variables and then starting RTI Routing Service as a work around.
Yeah, I assume the routing service app being launched is out of date. FYI, I installed the "rti_connext_dds-6.1.0-pro-host-x64Win64.exe" and "rti_connext_dds-6.1.0-pro-target-x64Win64VS2017.rtipkg" packages. And yes, I've been having success with essentially the same work around you mentioned, thanks.