Skip to Content
avatar image
Former Member

NW PI 7.1 - ICM is not binding to port 5$$00

Hallo,

I'm facing the problem, that in my NW 7.1 Usage Type PI Installation the ICM is not binding to port 50000, that is, it is not dispatching HTTP requests to the Java server process. I'm absolutely at a loss, why it doesn't.

I have attached all ICM Parameters the system is started with and the complete tracefile.

I get error messages in the tracefile, but I'm not sure if these are related to not binding to 50000 to :

[Thr 2571] *** ERROR => IcmJSessGetServerList: no more memory for 0 entries [icxxjcom_mt. 6789]

[Thr 2571] *** ERROR => IcmJGetInstList: no more memory for 0 entries [icxxjcom_mt. 2052]

Unfortuneatly I' wasnt able to find anything on these in eiter SAP Service Market Place and the SDN.

Thanks for your help and kind Rgs

Thorsten

These are the ICM Parameters:

ICM Parameter

Services

icm/serv er_port_0 = PROT=HTTP,PORT=8000

icm/server_port_1 = PROT=P4,PORT=50004

icm/server_port_2 = PROT=IIOP, PORT=50007

icm/server_port_3 = PROT=TELNET,PORT=50008,HOST=localhost

icm/server_port_4 = PROT=SMTP,PORT=0,TIMEOUT=120,PROCTIMEOUT=120

Hard limits

icm/max_ser vices = 30

icm/listen_queue_len = 512

icm/req_queue_len = 1000

icm/max_conn = 500

icm/max_sockets = 2048

Thread handling

icm/min_threads = 10

icm/max_threads = 250

icm/min_spare_threads = 3

Tracing and statistic

rdisp/TRACE = 1

icm/tracefile = dev_icm

icm/log_level = 0

icm/stat_level = 1

icm/security_log = LOGFILE=dev_icm_sec,MAXSIZEKB=500

icm/accept_remote_trace_level = 0

Monitoring

icm/ccms_m onitoring = 1

icm/ccms_refresh_rate (sec.) = 30

Timeout handling

icm/keep_alive_t imeout (sec.) = 60

icm/conn_timeout (msec.) = 5000

Reverse Invoke Options

icm/ri/use_ssl = FALSE

HTTP settings

icm/HTTP/max_ request_size_KB = 102400

icm/HTTP/j2ee_0 = PREFIX=/,HOST=localhost,CONN=0-500,PORT=50000

icm/HTTP/file_access_0 = PREFIX=/sap/public/icmandir/,DOCROOT=/usr/sapX12/DVEBMGS00/data/icmandir,ARCHIVE=/usr/sap/X12/DVEBMGS00/exe/ITS.SAR,CACHECTRL=+28800

icm/HTTP/server_cache_0 = PREFIX=/, CACHEDIR=/usr/sap/X12/DVEBMGS00/data/cache

icm/HTTP/admin_0 = PREFIX=/sap/admin,DOCROOT=/usr/sap/X12/DVEBMGS00/data/icmandir/admin,AUTHFILE=/usr/sap/X12/SYS/global/security/data/icmauth.txt

icm/HTTP/auth_0 = PREFIX=/,FILTER=SAP

HTTP(S) error handling

is/HTTP/show_server_he ader = 1

is/HTTP/show_detailed_errors = 1

icm/HTTP/error_templ_path = /usr/sap/X12/DVEBMGS00/data/icmandir/error_templ

HTTPS (SSL) settings

icm/HTTPS/verify_cli ent = 1

ssf/name =

ssf/ssfapi_lib =

sec/libsapsecu =

ssl/ssl_lib =

Context Quotas

icm/HTTP/conte xt_quota = 90%

icm/HTTPS/context_quota = 90%

icm/SMTP/context_quota = 90%

Memory Pipe settings

mpi/total_size_MB = 80

mpi/buffer_size = 65536

J2EE settings

rdisp/j2ee_st art = 1

is/HTTP/default_root_hdl = J2EE

Content Filter settings

csi/enable = TRUE

csi/SAP/csa_lib = /usr/sap/X12/DVEBMGS00/exe/libsapcsa.o

Misc

icm/ host_name_full = sapx12.gfd.de

icm/cancel_strategy = cancel requests without session (stateless)

rdisp/plugin_auto_logout = 1800

is/HTTP/virt_host_0 = :;

is/SMTP/virt_host_0 = :;

This is the tracefile:

ICM Trace File (dev_icm)

t rc file: "dev_icm", trc level: 1, release: "710"

sysno 00

sid X12

systemid 324 (IBM RS/6000 with AIX)

relno 7100

patchlevel 0

patchno 65

intno 20020600

make multithreaded, Unicode, 64 bit, optimized

profile /usr/sap/X12/SYS/profile/X12_DVEBMGS00_sapx12

pid 643178

[Thr 01] Wed Nov 12 21:27:26 2008

[Thr 01] *** WARNING => The maximum number of sockets supported on this host is 1992.

This is less than the number of sockets configured in parameter icm/max_sockets (2048) [icxxman_mt.c 3073]

[Thr 01] started security log to file dev_icm_sec

[Thr 01] ICM running on: sapx12.gfd.de

[Thr 01] MtxInit: 30001 0 2

[Thr 01] IcmInit: listening to admin port: 64999

[Thr 01] DpSysAdmExtCreate: ABAP is active

[Thr 01] DpSysAdmExtCreate: VMC (JAVA VM in WP) is active

[Thr 01] DpSysAdmExtCreate: J2EE Engine running with this server

[Thr 01] DpIPCInit2: read dp-profile-values from sys_adm_ext

[Thr 01] DpShMCreate: sizeof(wp_adm) 36784 (1936)

[Thr 01] DpShMCreate: sizeof(tm_adm) 142748544 (28544)

[Thr 01] DpShMCreate: sizeof(wp_ca_adm) 64000 (64)

[Thr 01] DpShMCreate: sizeof(appc_ca_adm) 64000 (64)

[Thr 01] DpCommTableSize: max/headSize/ftSize/tableSize=500/16/584064/584080

[Thr 01] DpShMCreate: sizeof(comm_adm) 584080 (1144)

[Thr 01] DpSlockTableSize: max/headSize/ftSize/fiSize/tableSize=512/48/65600/90416/156064

[Thr 01] DpShMCreate: sizeof(slock_adm) 156064 (104)

[Thr 01] DpFileTableSize: max/headSize/ftSize/tableSize=3800/16/364864/364880

[Thr 01] DpShMCreate: sizeof(file_adm) 364880 (80)

[Thr 01] DpShMCreate: sizeof(vmc_adm) 41040 (2160)

[Thr 01] DpShMCreate: sizeof(wall_adm) (1040064/862352/64/192)

[Thr 01] DpShMCreate: sizeof(gw_adm) 48

[Thr 01] DpShMCreate: sizeof(j2ee_adm) 3936

[Thr 01] DpShMCreate: SHM_DP_ADM_KEY (addr: 70000000018c000, size: 145976672)

[Thr 01] DpShMCreate: allocated sys_adm at 70000000018c010

[Thr 01] DpShMCreate: allocated wp_adm_list at 70000000018e390

[Thr 01] DpShMCreate: allocated wp_adm at 70000000018e580

[Thr 01] DpShMCreate: allocated tm_adm_list at 700000000197540

[Thr 01] DpShMCreate: allocated tm_adm at 700000000197590

[Thr 01] DpShMCreate: allocated wp_ca_adm at 7000000089ba120

[Thr 01] DpShMCreate: allocated appc_ca_adm at 7000000089c9b30

[Thr 01] DpShMCreate: allocated comm_adm at 7000000089d9540

[Thr 01] DpShMCreate: allocated slock_adm at 700000008a67ee0

[Thr 01] DpShMCreate: allocated file_adm at 700000008a8e090

[Thr 01] DpShMCreate: allocated vmc_adm_list at 700000008ae71f0

[Thr 01] DpShMCreate: allocated vmc_adm at 700000008ae72a0

[Thr 01] DpShMCreate: allocated gw_adm at 700000008af1300

[Thr 01] DpShMCreate: allocated j2ee_adm at 700000008af1340

[Thr 01] DpShMCreate: allocated ca_info at 700000008af22b0

[Thr 01] DpSesCreateTable: attached session table at 700000040000000 (len=3674928)

[Thr 01] DpRqQInit: use protect_queue / slots_per_queue 0 / 2001 from sys_adm

[Thr 01] MPI: dynamic quotas disabled.

[Thr 01] MPI init: pipes=4000 buffers=1279 reserved=383 quota=10%

[Thr 515] IcmProxyWatchDog: proxy watchdog started

[Thr 01] CCMS: initialize CCMS Monitoring for ABAP instance with J2EE addin.

[Thr 01] CCMS uses Shared Memory Key 73 for monitoring.

[Thr 01] CCMS: SemInMgt: Semaphore Management initialized by AlAttachShm_Doublestack.

[Thr 01] CCMS: SemInit: Semaphore 38 initialized by AlAttachShm_Doublestack.

[Thr 01] CCMS: AlInitGlobals : alert/use_sema_lock = TRUE.

[Thr 772] IcmJSessCommThread started

[Thr 1029] IcmMplxThread started

[Thr 01] *** WARNING => SfIConnectControl: Instance Controller (pid 716946) is not alive. [jsfxxadm_mt. 138]

[Thr 01] WLM Tag 'X12/ICM' successfully set for this process

[Thr 01] IcmCreateWorkerThreads: created worker thread 0

[Thr 01] IcmCreateWorkerThreads: created worker thread 1

[Thr 01] IcmCreateWorkerThreads: created worker thread 2

[Thr 01] IcmCreateWorkerThreads: created worker thread 3

[Thr 01] IcmCreateWorkerThreads: created worker thread 4

[Thr 01] IcmCreateWorkerThreads: created worker thread 5

[Thr 01] IcmCreateWorkerThreads: created worker thread 6

[Thr 01] IcmCreateWorkerThreads: created worker thread 7

[Thr 01] IcmCreateWorkerThreads: created worker thread 8

[Thr 01] IcmCreateWorkerThreads: created worker thread 9

[Thr 3856] IcmWatchDogThread: watchdog started

[Thr 4113] HttpExtractArchive: files from archive /usr/sap/X12/DVEBMGS00/exe/ITS.SAR in directory /usr/sap/X12/DVEBMGS00/data/icmand

[Thr 4113] HttpSubHandlerAdd: Added handler HttpFileAccessHandler(slot=0, flags=4098) for /sap/public/icmandir/, active: 1

[Thr 4113] ISC: created 400 MB disk cache.

[Thr 4113] Wed Nov 12 21:27:27 2008

[Thr 4113] ISC: created 50 MB memory cache.

[Thr 4113] HttpSubHandlerAdd: Added handler HttpCacheHandler(slot=1, flags=12293) for /, active: 1

[Thr 4113] HttpExtractArchive: files from archive /usr/sap/X12/DVEBMGS00/exe/icmadmin.SAR in directory /usr/sap/X12/DVEBMGS00/data/i

[Thr 4113] HttpSubHandlerAdd: Added handler HttpAdminHandler(slot=2, flags=4101) for /sap/admin, active: 1

[Thr 4113] HttpSubHandlerAdd: Added handler HttpModHandler(slot=3, flags=12293) for /, active: 1

[Thr 4113] CsiInit(): Initializing the Content Scan Interface

[Thr 4113] IBM RS/6000 with AIX (mt,unicode,SAP_CHAR/size_t/void* = 16/64/64)

[Thr 4113] CsiInit(): CSA_LIB = "/usr/sap/X12/DVEBMGS00/exe/libsapcsa.o"

[Thr 4113] HttpSubHandlerAdd: Added handler HttpAuthHandler(slot=4, flags=12293) for /, active: 1

[Thr 4113] HttpSubHandlerAdd: Added handler HttpSAPR3Handler(slot=5, flags=4101) for /, active: 1

[Thr 4113] HttpSubHandlerAdd: Added handler HttpJ2EE2Handler(slot=6, flags=1060869) for /, active: 1

[Thr 4113] Started service 8000 for protocol HTTP on host "sapx12.gfd.de"(on all adapters) (processing timeout=60, keep_alive_timeou

[Thr 4113] Started service 50004 for protocol P4 on host "sapx12.gfd.de"(on all adapters) (processing timeout=60, keep_alive_timeout

[Thr 4113] Started service 50007 for protocol IIOP on host "sapx12.gfd.de"(on all adapters) (processing timeout=60, keep_alive_timeo

[Thr 4113] Started service 50008 for protocol TELNET on host "localhost"(only on this adapter) (processing timeout=60, keep_alive_ti

[Thr 1029] JNCMIHttpMsPutLogon: http port information not available

[Thr 1029] JNCMIP4MsPutLogon: p4 port information not available

[Thr 1029] JNCMIIIOPMsPutLogon: iiop port information not available

[Thr 1029] JNCMIHttpMsPutLogon: delete http logon information

[Thr 1029] JNCMIP4MsPutLogon: reset p4 logon information

[Thr 1029] JNCMIIIOPMsPutLogon: reset iiop logon information

[Thr 1029] JNCMITelnetMsPutLogon: reset telnet logon information

[Thr 4113] IcmNetCheck: network check passed without detecting problems

[Thr 1029] JNCMIHttpMsPutLogon: delete http logon information

[Thr 1029] JNCMIP4MsPutLogon: reset p4 logon information

[Thr 1029] JNCMIIIOPMsPutLogon: reset iiop logon information

[Thr 1029] JNCMITelnetMsPutLogon: reset telnet logon information

[Thr 2571] Wed Nov 12 21:27:36 2008

[Thr 2571] *** ERROR => IcmJSessGetServerList: no more memory for 0 entries [icxxjcom_mt. 6789]

[Thr 2571] *** ERROR => IcmJGetInstList: no more memory for 0 entries [icxxjcom_mt. 2052]

[Thr 01] Wed Nov 12 21:27:43 2008

[Thr 01] IcmJsfAttach: attached to Java Startup Framework

[Thr 1029] JNCMIHttpMsPutLogon: delete http logon information

[Thr 1029] JNCMIP4MsPutLogon: reset p4 logon information

[Thr 1029] JNCMIIIOPMsPutLogon: reset iiop logon information

[Thr 1029] JNCMITelnetMsPutLogon: reset telnet logon information

[Thr 1029] JNCMIHttpMsPutLogon: delete http logon information

[Thr 1029] JNCMIP4MsPutLogon: reset p4 logon information

[Thr 1029] JNCMIIIOPMsPutLogon: reset iiop logon information

[Thr 1029] JNCMITelnetMsPutLogon: reset telnet logon information

[Thr 2057] Wed Nov 12 21:28:06 2008

[Thr 2057] *** ERROR => IcmJSessGetServerList: no more memory for 0 entries [icxxjcom_mt. 6789]

[Thr 2057] *** ERROR => IcmJGetInstList: no more memory for 0 entries [icxxjcom_mt. 2052]

[Thr 2314] Wed Nov 12 21:28:36 2008

[Thr 2314] *** ERROR => IcmJSessGetServerList: no more memory for 0 entries [icxxjcom_mt. 6789]

[Thr 2314] *** ERROR => IcmJGetInstList: no more memory for 0 entries [icxxjcom_mt. 2052]

[Thr 1286] Wed Nov 12 21:29:06 2008

[Thr 1286] *** ERROR => IcmJSessGetServerList: no more memory for 0 entries [icxxjcom_mt. 6789]

[Thr 1286] *** ERROR => IcmJGetInstList: no more memory for 0 entries [icxxjcom_mt. 2052]

[Thr 3599] Wed Nov 12 21:29:36 2008

[Thr 3599] *** ERROR => IcmJSessGetServerList: no more memory for 0 entries [icxxjcom_mt. 6789]

[Thr 3599] *** ERROR => IcmJGetInstList: no more memory for 0 entries [icxxjcom_mt. 2052]

[Thr 2828] Wed Nov 12 21:30:06 2008

[Thr 2828] *** ERROR => IcmJSessGetServerList: no more memory for 0 entries [icxxjcom_mt. 6789]

[Thr 2828] *** ERROR => IcmJGetInstList: no more memory for 0 entries [icxxjcom_mt. 2052]

[Thr 1543] Wed Nov 12 21:30:36 2008

[Thr 1543] *** ERROR => IcmJSessGetServerList: no more memory for 0 entries [icxxjcom_mt. 6789]

[Thr 1543] *** ERROR => IcmJGetInstList: no more memory for 0 entries [icxxjcom_mt. 2052]

[Thr 1029] Wed Nov 12 21:30:58 2008

[Thr 1029] JNCMIP4NodeAdd: node 4946450 joins the load balancing list

[Thr 1029] IcmJSessCommServiceJoin: server 4946450 started protocol P4 (active services: 1)

[Thr 1029] JNCMIIIOPNodeAdd: node 4946450 joins the load balancing list

[Thr 1029] IcmJSessCommServiceJoin: server 4946450 started protocol IIOP (active services: 3)

[Thr 1029] JNCMITelnetNodeAdd: node 4946450 joins the load balancing list

[Thr 1029] IcmJSessCommServiceJoin: server 4946450 started protocol TELNET (active services: 7)

[Thr 1029] JNCMIP4MsPutLogon: set p4 logon port (port:50004) (lbcount: 1)

[Thr 1029] JNCMIIIOPMsPutLogon: set iiop logon port (port:50007) (lbcount: 1)

[Thr 1029] JNCMITelnetMsPutLogon: set telnet logon port (port:50008) (lbcount: 1)

[Thr 772] IcmJSessCommAttach: Attached to J2EE request queue X12_00_4946450_P4

[Thr 1029] Wed Nov 12 21:39:53 2008

[Thr 1029] JNCMIHttpMsPutLogon: delete http logon information

[Thr 1029] JNCMIHttpNodeAdd: node 4946450 joins the load balancing list

[Thr 1029] HttpJ2EELbPut: server 4946450 started protocol HTTP, attached to request queue X12_00_4946450_HTTP

[Thr 1029] JNCMIHttpMsPutLogon: set http logon port (port:8000) (lbcount: 1)

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

4 Answers

  • avatar image
    Former Member
    Nov 14, 2008 at 11:42 AM

    Hello Thorsten,

    the error IcmJSessGetServerList: no more memory for 0

    can be ignored. It has got to do with monitoring.

    The http port for the ICM seems to be 8000. You will need to check in

    transaction SMICM -> services which port is configured for the HTTP

    protocol.

    The port 5<nr>00, in your case 50000 is used for connecting to the java stack,

    f.e. http://<fully qualified domain name>:50000/

    you will connect to the java engine. If you use http://<fully qualified domain name>:50000/exchangeProfile or http://<fully qualified domain name>:50000/sld you

    will connect to the different applications running on the java stack.

    Hope this helps.

    Kind regards,

    Andreas

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member

      Hallo Andreas,

      this is exactly the problem. HTTP on port 8000 works fine, but these requests do get forwarded to the ABAP stack, as far as I understand. I am not able to access anything on port 50000 though. That is the ICM simply does not bind to this port, as I can see from the ouput of "netstat -na".

      I compared the tracefile to one, that's from a NW 7.0 installation. This NW 7.0 installation trace has entries

      [Thr 3599] HttpSubHandlerAdd: Added handler HttpAuthHandler(slot=2, flags=12293) for /:0

      [Thr 3599] HttpSubHandlerAdd: Added handler HttpSAPR3Handler(slot=3, flags=4101) for /:0

      [Thr 3599] Sat Nov 8 10:17:00 2008

      [Thr 3599] HttpSubHandlerAdd: Added handler HttpJ2EEHandler(slot=4, flags=1077253) for /:0

      [Thr 3599] Started service 8005 for protocol HTTP on host "sp19prdp1.gfd.de"(on all adapters) (processing timeout=60, keep_alive

      [Thr 3599] IcmNetCheck: network check passed without detecting problems

      [Thr 1] Sat Nov 8 10:17:50 2008

      [Thr 1] HttpSAPR3SetParam: switch j2ee http port from to: 50500

      [Thr 1] HttpSAPR3SetParam: switch j2ee https port from to: 50501

      [Thr 1] Sat Nov 8 10:20:14 2008

      [Thr 1] HttpSAPR3SetParam: Switched j2ee status to: 1

      Entries like these completely miss in the traceoutput I posted previously. To me it looks a bit like the ICM simply doesn't try to bin to port 50000. This might be, because there are different parameters required for the ICM in connection to the j2ee server. This is not really straightforwardly documented on help.sap.com, though. That is, I could not find anything about differences in configuring ICM in NW 7.0 ini comparison to NW 7.1.

      Kind Rgs and thanks for your support in this,

      Thorsten

  • avatar image
    Former Member
    Nov 14, 2008 at 12:35 PM

    Hi,

    If what you want is using the ICM as a front end to the java stack, you don't have to (and you should NOT) define ICM ports for the same ports as the java stack.

    So, I think that these lines are wrong :

    icm/server_port_1 = PROT=P4,PORT=50004

    icm/server_port_2 = PROT=IIOP, PORT=50007

    icm/server_port_3 = PROT=TELNET,PORT=50008,HOST=localhost

    You just have to call the URLs on port 8000.

    URLs beginning with /sap/ will be directed to the ABAP stacks.

    Others URLs beginnning with something else than /sap/ will be directed to the java stack.

    I did this for our PI 7.0 system and it works great.

    I may be wrong if PI 7.1 reacts completely in a different way than PI 7.0....

    Regards,

    Olivier

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member Former Member

      Hi again,

      It seems that NW 7.1 is a different beast from NW 7.0.

      >Could anyone post his or her ICM related profile parameters of a working NW 7.1 installation?

      Yes, I think you need someone with NW 7.1 experience.

      That's the problem to be on the leading edge ! 😉

      That's for me a good reason to wait at least 1 year to upgrade our PI 7.0 to PI 7.1...

      Good luck,

      Olivier

  • avatar image
    Former Member
    Nov 14, 2008 at 04:06 PM

    I had a similar problem with my web dispatcher not sending the java request to an ECC Java Addin stack, only the abap requests were properly handled, problem was solved by applying SAP Note 1068501 to the Java Addin.

    Regards,

    Ayax

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Dec 05, 2008 at 05:04 PM

    Hallo,

    the ICM configuration has changed a little between NW 7.0 and NW 7.1:

    [http://help.sap.com/saphelp_nwpi71/helpdata/de/61/f5183a3bef2669e10000000a114084/frameset.htm]

    states the following:

    Parameter icm/HTTP/j2ee_<xx> was needed in previous releases for communications between the ICM and the Java dispatcher. Because the ICM has replaced the Java dispatcher in the AS Java, this parameter is now obsolete.

    So, in NW 7.1 it is sufficient to have the following configuration parameters:

    icm/server_port_0 = PROT=HTTP,PORT=50000

    icm/server_port_1 = PROT=P4,PORT=50004

    icm/server_port_2 = PROT=IIOP, PORT=50007

    icm/server_port_3 = PROT=TELNET,PORT=50008,HOST=localhost

    icm/server_port_4 = PROT=SMTP,PORT=0,TIMEOUT=120,PROCTIMEOUT=120

    ==> It is no longer necessary in NW 7.1 to configure HTTP on two different network sockets (one for the ABAP stack and one for the JAVA stack) - one for both is enough.

    It also looks like that this port is required to be 5$$00. The NW 7.1 NWA for example tries to connect to port 50000 when initializing the SLD (while running the configuration wizard). From what I gather any other port (in my case 8000) will fail and as a result the wizard will not successfully complete.

    Kind Rgs,

    Thorsten

    Edited by: Thorsten Henrici on Dec 5, 2008 6:06 PM

    Add comment
    10|10000 characters needed characters exceeded