The following messages are observed when attempting to invoke sp_ctrl despite it being launched using the correct environment settings:
$ ./sp_ctrl
./sp_ctrl:192: warning: parenthesize argument(s) for future version
./sp_ctrl:192: warning: parenthesize argument(s) for future version
./sp_ctrl:192: warning: parenthesize argument(s) for future version
./sp_ctrl:192: syntax error, unexpected tINTEGER, expecting $end
However, it is possible to connect to sp_ctrl remotely from the corresponding source/target using the option “on host” and then issue any sp_ctrl command. For example, if the problem happens on the target server named SysB, and if the source server is named SysA, one can still launch sp_ctrl on target via sp_ctrl on source SysA as:
sp_ctrl(SysA)>qstatus on SysB
Of course one would be prompted to furnish the username and password for the spadmin user on SysB to be able to get the output of the command.
The remote option of various commands would still allow the SharePlex on the problem server to be controlled remotely. However, if the remote option is used to shutdown SharePlex on the problem server, then it would not be possible to restart it. The permanent solution lies in carrying out the following steps:
1. Shutdown SharePlex on the problem server.
2. Reinstall the same version of SharePlex on the top of the existing installation. This way the integrity of all binaries including Launcher would be restored. The re-installation should not result in loss of activation if this were the source and if the ora_setup is not run or is run but without changing the SharePlex schema. Moreover, it should not result in data loss if this were the source or target.
3. Restart SharePlex.