Record/Replay seem to read default config when it shouldn't

2 posts / 0 new
Last post
Last seen: 7 years 3 days ago
Joined: 02/26/2016
Posts: 5
Record/Replay seem to read default config when it shouldn't

To run rtirecord or rtireplay, I made a copy of the example RTI_RECORDING_SERVICE.xml or RTI_REPLAY_SERVICE.xml configuration files in the resource/xml install directory.

Then, I ran using the -cfgFile <> option, specifying my local copy of the config.

When running this way it consistently gives an XML error indicating that the "default" configuration (or any config name) for that matter has already been defined.

The fix, I found, was to simply change the config name within my local copy and it worked fine. What appears to be happening is the rtirecord and rtireplay service always automatically load the configurations in resource/xml, which might be fine but the documentation doesn't say it does that, and more importantly, the -cfgFile option is still required. I can see making the -cfgFile & -cfgName options optional, so you can just use rtirecord or rtireplay on the command line alone.

Either way, i think you have a fix here - documentation, code, or both.

Thanks to Tom S and Bobby V for their CSP session where I got really acclimated to the rtirecord service and found this issue shortly after they left!

Gerardo Pardo's picture
Last seen: 6 months 1 week ago
Joined: 06/02/2010
Posts: 601

Hello Paul,

Thank you for taking the time to explain how the use of this tool is confusing/poorly documented. We will try to do a better job explaining this in the next release.

For now I will try to explain what we had in mind... This is in fact how all our services work (also routing service, database integration, etc.) so we definitely want to make it easier to understand.

The RTI_RECORDING_SERVICE.xml (or RTI_REPLAY_SERVICE.xml) are not "example" configurations. They represent the "system builtin" configurations that recording service (or replay service) come with out of the box. This means that the configuration names defined in these files "default", "defaultNoAutoStart", etc. are reserved/builtin and cannot be re-defined on your configuration file. They are placed in the installarion resource directory so they could be globally modified by someone that had specialized needs that apply to the whole installation. But they should not be copied as they are intented to be system wide resources.

If you want to copy a file there are "example" ones in the rti_workspace/<connext version>/user_config/recording_service directory. If you start rtirecorder from the RTI Launcher it will automatially put all these in the path and allow you to select alternative ones.

Note that the -cfgFile option is not required. The only option required is  -cfgName.  Basically you must always specify a configuration if you want to run with the default you can use

bin/rtirecord -cfgName default

Which will use the default configuration from the "system" configuration.

We forced the use of the -cfgFile  option because we anticipated that it would be very common for the user to want to define a custom configuration it was best to make the aware of what the configuration was that was being used at any given time.

We will take another pass at making this more intuitive. Thank you for the feedback!