A user has reported an intermittent issue with the RFC connection test. Upon investigation, the following error was found in the RFC trace logs,
*** ERROR => ThPOpen: ExecPopen("/usr/sap/SID/SYS/exe/run/tp" SID sapgw00 61057255 IDX=13, r, ..) returned -14 [thxxexec.c 333]
{root-id=0024817804C21EEEBC95D65375E59B00}_{conn-id=0000000000000000000}_0
RFC 1964 CONVID 61057255
CMRC=0 DATA=0 STATUS=0 SAPRC=0 RfcExecProgramKernel RfcRaiseErrorMessage cmd could not be started by OS (rc = 1)
RFC> ABAP Programm: RSRFCPIN (Transaction: SM59)
RFC> User: ITSITI (Client: 888)
RFC> Destination: CALLTP_HP-UX (handle: 2, DtConId: 66091F2AD1E264C8E10000000A0A002E, DtConCnt: 0, ConvId: ,)
*** ERROR => RFC Error RFCIO_ERROR_SYSERROR in abrfcpic.c : 1973
FUNCTION: 'RfcExecProgramKernel'
RfcRaiseErrorMessage cmd could not be started by OS (rc = 1)
Solution
In our case, the SAP system is sitting on HP-UX and Oracle database. We manage to fix the issue by following the SAP Note 2048826 – Intermittent error while calling external program by RFC,
Basically, we follow the recommendation stated below,
Please ensure that “nofiles(descriptors)” and “max processes” limits for OS sidadm user are set to “unlimited”, or at least to a high number. You can check this by logging on as “sidadm”, and running command “ulimit -a” (or just “limit”, depending on the shell in use).