Issue: Data-Admin-System-Settings error in PegaRULES log after startup
Symptom
When you start up a Process Commander node, errors like the following appear in the PegaRULES log file:
09:47:09,688 [ PegaRULES-Batch-662] ( engine.database.Saver) ERROR - You are not authorized to save instance DATA-ADMIN-SYSTEM-SETTINGS PEGA-RULES!INDEXING/UPDATETIME, of class Data-Admin-System-Settings
Upon investigation, the specified instance does not appear to have errors. In addition, other symptoms may appear:
The Dynamic System Setting indexing/hostid may report one node ID, while the pxSystemNodeID property reports another. Here is a sample node ID:
52891d2344e2e25b1827bc7692825b8f
The System Node ID can be seen on the pxProcess page of the clipboard:
In addition, duplicate instances may have been created by the system for the Agent Schedules for each node ID.
Solution
Explanation
The System Node ID is generated automatically at system startup from three items:
- the System Name (pxSystemName)
- the System Node (pxSystemNode)
- the temp path (set by the explicittempdir setting in the
prconfig.xml
file or in the application server)
If any one of the above items is changed, the System Node ID hashed value will also change.
Normally, when the System Node ID changes, the indexing/hostid Dynamic System Setting also changes automatically. However, there is a three-minute delay; if someone manages to bring their system down, change the explicittempdir (for example), and then bring it back up in three minutes, the System Node ID will change, and the Dynamic System Setting will not change, leaving the system in an unstable state.
Workaround
To avoid this situation, whenever the system is shut down after a change to any of the above areas (System Name, System Node, temp path), wait at least three minutes before bringing it online again.
If the system already has non-matching node IDs, there are a number of possible workarounds for this situation:
- Copy the System Node ID out of the clipboard and update the indexing/hostid Dynamic System Setting. (NOTE: Use copy instead of just trying to type the hash name.)
- Delete the indexing/hostid Dynamic System Setting, shut down the server, and start it again; this will cause the system to regenerate a new hostid System Setting, which will be read from the System Node ID.
- Turn off the system for more than three minutes and then restart. (This automatically resets the Dynamic System Setting.)