cancel
Showing results for 
Search instead for 
Did you mean: 

JCO_SYSTEM_FAILURE during message execution

Former Member
0 Kudos

Hi all,

We have currently implemented an interface with the CRM system and a non-SAP system using SAP XI. Till a few days back, everything is working fine. But recently we have been facing an issue where the messages are stuck in the inbound queues in SAP XI with the status RETRY (Command to tRFC/qRFC: Execute LUW again). After a while the system processes a couple of messages in the queue and again changes the queues status to RETRY with the same error message. There are about 19000 messages in three queues and it is taking days to execute all these messages.

When I check for the messages in SXMB_MONI transaction, the system gives the following error:-

*********************************************************

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>

<!-- Request Message Mapping -->

<SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">

<SAP:Category>XIServer</SAP:Category>

<SAP:Code area="MAPPING">JCO_SYSTEM_FAILURE</SAP:Code>

<SAP:P1>Bean SMPP_CALL_JAVA_RUNTIME3not found on host crq-as2, ProgId =AI_RUNTIME_XIT: O</SAP:P1>

<SAP:P2 />

<SAP:P3 />

<SAP:P4 />

<SAP:AdditionalText />

<SAP:ApplicationFaultMessage namespace="" />

<SAP:Stack>&quot;SYSTEM FAILURE&quot; during JCo call. Bean SMPP_CALL_JAVA_RUNTIME3not found on host crq-as2, ProgId =AI_RUNTIME_XIT: O</SAP:Stack>

<SAP:Retry>A</SAP:Retry>

</SAP:Error>

*********************************************************

CRQ-AS2 is one of the application servers of the CRM system. I checked the RFC connection AI_RUNTIME_JCOSERVER using SM59 and it was working fine. The Program ID AI_RUNTIME_XIT used in the above RFC has been registered successfully in both XI and CRM systems. I checked this using Visual Admin.

Using SMQ2, I tried to debug the LUW in the queue and found that the call to the FM (Function Module) "SMPP_CALL_JAVA_RUNTIME3" with the destination "AI_RUNTIME_JCOSERVER" is failing intermittently. When the call to the FM is successful, then the message is processed successfully. But when the call to the FM fails, then message in the queue goes into the RETRY status with the error message "Command to tRFC/qRFC: Execute LUW again". This FM is called from the method "CALL_JAVA_RUNTIME" of the class "CL_MAPPING_XMS_PLSRV3".

I have also checked the service users in the XI server and all of them are unlocked.

We have facing this issue for sometime now. Please share with me some pointers on how to resolve this issue.

Thanks & Regards,

Karthik

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Hello Krishna,

The problem appeared to be due to too many open connections in the pool. A connection could not be retrieved for the new process, thus the error. This appears to have cleared itself up once the old connections gets freed.

If you are using file adapter then check out CC "Permanent Connections" and ftp.timeout particularly interesting. It sounds like PI 7.0 should handle these connections better. You can set this parameters.

Also ask your basis team to clear up all open connections.

Hope this will help.

Nilesh

Former Member
0 Kudos

Nilesh,

We are on PI 7.0 SP 10.

We also have the same error - we have one ftp interface which polls 2 different directories on the same server. Couple of Synchronus SOAP interfaces.

I have seen the following text in RFC trace,

*Trace file opened at 20080417 081815 PDT SAP-REL 700,0,95 RFC-VER U 3 88625

Transaction system failure in method processFunction.

ABAP Programm: CL_MAPPING_XMS_PLSRV3=========CP (Transaction: )

Called function module: SMPP_CALL_JAVA_RUNTIME3

User: WF-BATCH (Client: 110)

Destination: AI_RUNTIME_JCOSERVER (handle: 4, 71990986, {4807F87D-1C38-5477-E100

SERVER> RFC Server Session (handle: 1, 71988824, {4807A284-19AB-671B-E100-000092

SERVER> Caller host:

SERVER> Caller transaction code: (Caller Program: SAPLERFC)

SERVER> Called function module: ARFC_DEST_SHIP*

I have bumped up the number of connections in Visual Admin, JCO RFC provider - for AI_RUNTIME_<SID> and AI_RUNTIME_<SID> to 20 each.

And how to free the open connections?

Former Member
0 Kudos

Hi Naveen,

Did you already find an answer on how to free the open connections?

kr.

Nicolas

Former Member
0 Kudos

Hi,

This error occurs for example when you have some network problems for a brief period of time and large number of messages are stuck in queue.

Now essentially what happens is when your network(or target system) is accesible all these messages try to open a connection and max no of attempts is reached.

This can be resolved by setting a parameter CPIC_MAX_CONV = 5000. I guess by default this is 100.

Please check there is a note in this regard already.

Hope this helps.

Regards,

Siddhesh S.Tawate

Former Member
0 Kudos

Hello Siddhesh,

What makes you think this has anything to do with a network issue?

This Problem occurs after XI has been started for about 1/2 day, and already a lot of messages are processed. Suddenly we are unable to process anymore messages and we can't access visual admin anymore. Restarting the server temporarily solves the problem.

Following is occurs a lot in dev_jrfc.trc:

Exception thrown [Wed Sep 30 13:54:20,027]:Exception thrown by application running in JCo Server

java.lang.RuntimeException: Bean SMPP_CALL_JAVA_RUNTIME3not found on host <our host>, ProgId =AI_RUNTIME_XIP: Path to object does not exist at rfcaccessejb_stateful, the whole lookup name is rfcaccessejb_stateful/SMPP_CALL_JAVA_RUNTIME3.

at java.lang.Throwable.<init>(Throwable.java:195)

at java.lang.Exception.<init>(Exception.java:41)

at java.lang.RuntimeException.<init>(RuntimeException.java:43)

at com.sap.engine.services.rfcengine.RFCDefaultRequestHandler.handleRequest(RFCDefaultRequestHandler.java:138)

at com.sap.engine.services.rfcengine.RFCJCOServer$J2EEApplicationRunnable.run(RFCJCOServer.java:254)

at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)

at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:102)

at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:172)

This problem started from one day after another without changes been done at the system.

former_member187339
Active Contributor
0 Kudos

Hi Nicholas,

Did you check this thread

As mentioned there

log into Visual Administrator with J2EE_ADMIN , Services-> JCo RFC Provider. In the Right hand we will find the RFC Destination A1_RUNTIME_<SID>. Select the destination and click on Stop and then start it again.

Regards

Suraj

Former Member
0 Kudos

Hi all,

We have not been able to solve this issue. Please share any further thoughts on solving the issue.

Thanks,

Karthik

Former Member
0 Kudos

Hi,

refer similar kind of discussion

Thanks

Swarup