I know this is an old question but I think I am in the position to answer it correctly because I work as an engineer for CA XCOM Data Transport.
'xcomd' is the CA XCOM daemon process. The command is used to start and stop the daemon, as well as to set other parameters. Or in other words, xcomd command controls the daemon. The daemon itself runs as a background process to manage XCOM resources.
From the input you gave, it can be seen that you entered the command
at time 08:46:48 and
# ps aux | grep xcom
at time 08:53. So, there is a gap of around 7 minutes before you check if xcomd is already running or not. Now, depending upon how many users have access to the Red Hat Enterprise Linux machine mentioned by you, it is one of the possibilities that some other user might have stopped/killed xcomd meanwhile. And since ps produces a static list, that is, a snapshot of what is running when you execute the command, xcomd is not displayed in the output.
The error code XCOMU0474E simply means that xcomd is already running and you can't start more than one instance.
At this point if you want to stop the already running xcomd instance then you can do by using either the
-c or -s flag depending on whether a graceful or immediate cessation is desired.
-c[y] - Kill the daemon process and free shared memory. This option should be reserved as a last resort since it will bring the scheduler down immediately.
-s - Stop the XCOM daemon by sending a request to the scheduler.
Once you have stopped/killed the daemon successfully, restart it again and this time you will not get XCOMU0474E error.