Following the update of the Automation Engine from 11.2.8 to 12.3.1 we get a ucxja64m error while executing a job.
Our agent version (11.2.6) and configuration did not change!
Example of error:
20191211/092442.395 - ucxja64m - acknowledgement message from Agent could not be read
20191211/092442.395 - Program UC4 Messenger "ucxja64m" Version "11.2.6+build.1747" ended abnormally !
The job messenger was connecting to the unix agent with a different address to the one the agent is listening on (defined on the variable BINDADDR).
This is due to the fact that the Linux system had a single network card with two different ip addresses, being the one defined on the variable BINDADDR the second one, instead of the first one.
This can be checked via the command ifconfig -a
Explanation about the two variables that can affect the agent network settings:
1) UC_EX_IP_ADDR is only used for the resolution within the HEADER/TRAILER objects and has no impact on the agent itself
2) BINDADDR is used only for the LISTEN SOCKET (port the agent is listening on) but nothing else - so the agent will only accept connections from this address - if this is not set the agent will do a listen socket on all available cards.
The Unix agent will refuse connections not coming from the same ip address where he is listening to.
Release : 12.x with agent 11.2.6
Component : Automation Engine
The issue was due to a configuration issue:
In order to fix these errors, modify on the ini file the variable BINDADDR with the proper ip address or simply leave it blank.
The job messenger is connecting to the unix agent with a different source address to the one the agent is listening on.