When and what to bounce or reload – you really need to know what objects are “owned” by what threads.
The engine process has 3 types of threads – protocol, xlate, and command. The command thread doesn’t load any Cloverleaf objects.
The protocol threads do the protocol work. They also own any IB or OP TPS. If you change any protocol parameters like port number or fileset directory or whatever, that thread will need to be bounced to pick up changes. If you change an IB or OB Tcl proc you can bounce the thread, or use reload as described above to pick up the changes.
The protocol threads will also cache lookup tables if they are referenced in IB or OB TPS procs (tbllookup command). The purge command will reload these tables, or of course, you can bounce the thread or process.
The xlate thread owns routing configuration, xlate and associated objects like lookup tables, message models like HL7 variants or XML schemas, pre/post xlate TPS. Purge will pick up changes for objects like xlate, lookup table, message models. Reload will pick up changes for Tcl procs. Anything else, most importantly routing configuration, the process will need to be bounced. There is no way to bounce the xlate thread independently of the process.
Hope this helps!
Rob Abbott
Cloverleaf Emeritus