we are implementing the Integration Server with the SAP Adapter. At night SAP sends 15000 IDOCs that generate an error on the ESB:
[ART.118.5053] Adapter Runtime (Connection): Unable to get a connection to resource Connection:connNode_SAPConnection200.
[SAP.102.9000] JCo error: (102) JCO_ERROR_COMMUNICATION - Connect to SAP gateway failed
Connection parameters: TYPE=A DEST=SAPConnection200 ASHOST=XXX.XXX.XXX.XXX SYSNR=00 PCS=1
LOCATION CPIC (TCP/IP) on local host with Unicode
ERROR max no of 202 conversations exceeded
TIME Tue Feb 04 01:56:53 2020
COMPONENT CPIC (TCP/IP) with Unicode
This error blocks all communication to and from SAP, and the only solution I found so far is to restart the ESB server.
Can somebody help me?
The SAP-Adapter version is: 10.1.0.0.1008
The J-Co version is: 3.0.19 (2018-12-03)
The WebMethods version is: 10.3.0.0
WmSAP uses the SAP JCo library for all RFC connectivity, and JCo limits the max number of concurrently open RFC (internally: CPIC) connections to a default of usually 202 (depending on the OS and environment).
The root cause is that more of 202 connections were tried to be opened at the same time. This is an arbitrary limit of the SAP JCo library which can be changed.
If this error comes up then definitely more than 202 connections were tried to be opened at once. The customer could either increase the jco.cpic_maxconv value, or decrease the max pool size values of their RFC connections, or decrease the RFC connection time-out value (see WmSAP UG for mor details).
(Please note that RFC connections also need ‘invisible’ internal metadata connections to lookup the SAP metadata, which are also CPIC connections)
The proper jco.cpic_maxconv is usually different from environment to environement and depends on the individual needs of an application. Cx may try to increase the value to e. g. 400 for a first test.
Please note that, as already mentioned by Mike, there is also a KB note on this topic.
the SAP Basis Administrator told me he’s already increased the number of connections. I have downloaded the new versions for sapjidoc and sapjco, when the server restart is done I will try to upload the new versions.
I also downloaded the updater, but when I click on “Fix Content…” an error message appears: “Cannot show fix content due to insufficient RAM memory. Increase the Java memory and try again”.
go to the installation directory where you have installed UpdateManager and then to the bin directory.
There should be two BAT files for Windows or two SH files for Unix.
Inside of these files you will find the jvm invocation to start the UpdateManager.
Add the memory parameter to these lines and save the file.
For the JCo Parameter:
This is a command line switch for the IS.
See KB Article "1791335 : webMethods SAP Adapter - Error “max no of 202 conversations exceeded’ seen - webMethods SAP Adapter [WSP]” for Details.
You can find this article by searching for “sap maxconv” in the Empower page.
i’ve followed your precious advice to edit the maximum allocated heap memory thus it seems like it’s not helping. The problem is persisting.
In order to avoid misunderstandings, i’d like to explain what i did:
As soon as i approched the file, I noticed that, by default, it invokes environmental var %JAVA_OPTIONS% (which were already set to be -Xms2048 and -Xmx4096).
So at first i tried to change those values from system environment variables management, it didn’t work.
So instead i directly changed %JAVA_OPTIONS% to “-Xms2048m -Xmx4096m” but it’s not working either.
In the end i tried to run the .jar package directly from the console allocating memory on the go:
java -Xms4096m -Xmx8192m -jar .\SUMlauncher.jar
Didn’t work either.
At last i checked SAGUpdateManager launcher logs trying to understand how this message is getting generated and i noticed this:
Good morning Holgen,
I’ve somehow managed to get things to work. It keeps acting weird and i’m going to explain how but firstly my SUM version is 10.3.
Yesterday, as soon as i uploaded files for a feedback, i noticed the third final invoke of jvm in UpdateMangerGUI. That did not really solve the problem, BUT, launching the sumlauncher this way from prompt:
it still keeps acting weird, for example, if i directly go to the fix needed and just download it, it goes smoothly, but if i pick more than one fix to download it prompts the usual message to pick one fix only and, after this, whatever fix i pick, the same error about RAM pops up again. Closing and starting the client again, from the prompt, solves the problem.