IBM webMethods Hybrid Integration

IBM webMethods Hybrid Integration

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
Expand all | Collapse all

Broker Error 0020 0218: API: SEND or RECEIVE-LENGTH exceeds max

webMethods Community Member

webMethods Community MemberMon May 05, 2014 06:36 PM

  • 1.  Broker Error 0020 0218: API: SEND or RECEIVE-LENGTH exceeds max

    Posted Mon May 05, 2014 03:48 PM

    Hello,

    In testing a service (EntireX 8.2.2 exposing Natural 4.2.7 subprogram), the user is reporting “Broker Error 0020 0218: API: SEND or RECEIVE-LENGTH exceeds max” is returned. In looking this up, the doc says:

    0218 API: Send Or Receive Length Exceed Max
    Error Class 	0020
    Description 	The maximum length possible for send-buffer or receive-buffer is 32K. A call with a send-buffer or receive-buffer greater than 32K will be rejected.
    Programmer 	This is a user error. Check the program and correct the error.
    Administrator 	None. 

    I thought EntireX no longer had this 32k limit. How can I get around this error, or is this not possible?

    Thanks,

    Brian


    #webMethods
    #Mainframe-Integration
    #EntireX


  • 2.  RE: Broker Error 0020 0218: API: SEND or RECEIVE-LENGTH exceeds max

    Posted Mon May 05, 2014 04:48 PM

    Brian,

    what’s the MAXBUFF setting for your RPC servers ?

    Cheers

       Wolfgang


    #Mainframe-Integration
    #webMethods
    #EntireX


  • 3.  RE: Broker Error 0020 0218: API: SEND or RECEIVE-LENGTH exceeds max

    Posted Mon May 05, 2014 05:43 PM

    I have MAXBUFF=60. Is this something I can bump up to 300 to get 5x the current payload size?

    I notice I also have ACIVERS=8 but I think I could ACIVERS=9 with EXX 822 and NAT427, yes?

    Thanks much!


    #webMethods
    #Mainframe-Integration
    #EntireX


  • 4.  RE: Broker Error 0020 0218: API: SEND or RECEIVE-LENGTH exceeds max

    Posted Mon May 05, 2014 06:06 PM

    Removed my old post… discovered a connection between broker parm IUBL and MAXBUFF and now started with IUBL=262140 and MAXBUFF=245760.

    Will see if that makes a difference.

    Thanks!


    #EntireX
    #webMethods
    #Mainframe-Integration


  • 5.  RE: Broker Error 0020 0218: API: SEND or RECEIVE-LENGTH exceeds max

    Posted Mon May 05, 2014 06:20 PM

    Grand, was about to explain the relationship between these parameters :wink:


    #Mainframe-Integration
    #EntireX
    #webMethods


  • 6.  RE: Broker Error 0020 0218: API: SEND or RECEIVE-LENGTH exceeds max

    Posted Mon May 05, 2014 06:36 PM

    Figured why stop there… :twisted:

    New broker parm values:

    IUBL = 1048560
    NABS = 32768

    New Natural RPC Server values:

    MAXBUFF=600
    RPCSIZE=1024

    Restarted both… now waiting to see the test results.


    #EntireX
    #Mainframe-Integration
    #webMethods


  • 7.  RE: Broker Error 0020 0218: API: SEND or RECEIVE-LENGTH exceeds max

    Posted Tue May 06, 2014 08:13 AM

    Hi Brian,

    where did you find this? Even the 733 documentation is more up-to-date:
    http://techcommunity.softwareag.com/ecosystem/documentation/webmethods/entirex/exx733/mac/class_0020.htm#00200218


    #Mainframe-Integration
    #EntireX
    #webMethods


  • 8.  RE: Broker Error 0020 0218: API: SEND or RECEIVE-LENGTH exceeds max

    Posted Fri May 09, 2014 11:09 AM

    I think this came up when I searched Empower for the error code. I don’t know the exact link I used. Thanks for sharing that the doc for the relevant versions has been updated.


    #Mainframe-Integration
    #EntireX
    #webMethods


  • 9.  RE: Broker Error 0020 0218: API: SEND or RECEIVE-LENGTH exceeds max

    Posted Fri May 09, 2014 12:34 PM

    Thanks for the feedback, I just was curious if we forgot to update it somewhere (of course documentation for older versions remain unchanged).

    Did you solve your problem with the last changes?


    #Mainframe-Integration
    #webMethods
    #EntireX


  • 10.  RE: Broker Error 0020 0218: API: SEND or RECEIVE-LENGTH exceeds max

    Posted Fri May 09, 2014 12:55 PM

    Yes, the change allowed the message that failed before to be processed. I have requested the team to try the largest possible message to ensure these are sufficient before propagating these settings to the other environments.


    #EntireX
    #Mainframe-Integration
    #webMethods


  • 11.  RE: Broker Error 0020 0218: API: SEND or RECEIVE-LENGTH exceeds max

    Posted Thu November 13, 2014 11:02 AM

    Hi guys, i have the same problem.

    My ACIVERS=2

    See my etblog file bellow:

    W00/REQUEST  2014-11-13 10:56:56.081 ETBD0282 SPFX Values:
    Prefix    = 800009247B84000024000000000000003D85000046850000030000000000000000000000
    Unique-ID = 20206167696E32342D2D30303030313732342D2D3030303031333630
    Key string: API=9,BID=172.20.1.110,CID=NONE,F=SEND,LS=CP1252,SC=RPC,SN=SRDSW,SV=CALLNAT,UID=DET01011,W=5
    0,SL=33879,RL=34391,ETXL=255,ANAME=dllhost.exe,ANODE=agin24,ATYPE=WIN32,RPCLIB=DETRAN,RPCPGM=RB00045D.
    Bin string: 0400050039D0DAEF85
    SeqID     = 5876
    W00/RESPONSE 2014-11-13 10:56:56.081 ETBD0282 SPFX Values:
    Prefix    = 8000031818780000180000005CC1D5E200000000A3780000
    Unique-ID = 6164616261732D642D2D30303030373633422D2D4638344545323530
    Reply Strg: CID=100000000000017K,CST=NONE,CUID=DET01011                        ,EC=00200094,RETL=0003387
    9,TXT=API: Msg truncated to fit receive-buffer.
    SeqID     = 5872
    W00/ACIREQST 2014-11-13 10:56:56.082 ETBD0286 Diagnostic Values:
    IP Address.... 172.20.1.110
    W00/REQUEST  2014-11-13 10:56:56.082 ETBD0282 SPFX Values:
    Prefix    = 800003181800000000000000000000008800000088000000
    Unique-ID = 6164616261732D642D2D30303030373633422D2D4638344545323530
    Key string: BID=ETB002,CID=100000000000017K,F=RECEIVE,OP=LAST,SC=RPC,SN=SRDSW,SV=CALLNAT,UID=CE0CDEE52AD
    9B000,W=NO,RL=33879.
    SeqID     = 5877
    W00/RESPONSE 2014-11-13 10:56:56.082 ETBD0282 SPFX Values:
    Prefix    = 8000031818000000000000005CC1D5E20000000051000000
    Unique-ID = 6164616261732D642D2D30303030373633422D2D4638344545323530
    Reply Strg: EC=00200218,TXT=API: SEND or RECEIVE-LENGTH exceeds max .
    SeqID     = 5877

    Can you give me a tip to solve it?

    Did you set “IUBL” and “NABS” parameters at “etbfile”? My file don’t have this parms.

    I’m using a separated NATPARM to start the rpc server. The atributes “MAXBUFF” and “RPCSIZE” need to be changed in this file?

    Thanks a lot and best regards.


    #EntireX
    #Mainframe-Integration
    #webMethods


  • 12.  RE: Broker Error 0020 0218: API: SEND or RECEIVE-LENGTH exceeds max

    Posted Thu November 13, 2014 11:00 PM

    0020 0218 error specifically indicates that the MAX-MESSAGE-LENGTH attribute (set in the Broker Attribute file) for this service has been exceeded. The earlier default for this was something like 31467 (slightly less than 32k) and that value may be carried over from older attribute files - the new default is 2147483647 (~2gb).

    For EntireX Broker on mainframes, the EXTENDED?ACB?SUPPORT=YES attribute needs to be set in the DEFAULTS=NET section to support >32kb messages. For non-mainframe (LUW) environments, TCP transport supports up to the 2gb message size.


    #EntireX
    #webMethods
    #Mainframe-Integration


  • 13.  RE: Broker Error 0020 0218: API: SEND or RECEIVE-LENGTH exceeds max

    Posted Fri November 14, 2014 05:00 AM

    Hi
    Guilherme,

    This is not a good idea. You should always use the highest possible ACI version (which seems to be 9 in your environment). ACI version 2 restricts the buffer length to 32k.


    #webMethods
    #Mainframe-Integration
    #EntireX


  • 14.  RE: Broker Error 0020 0218: API: SEND or RECEIVE-LENGTH exceeds max

    Posted Fri November 14, 2014 05:23 AM

    I agree with Rolf - especially as Natural RPC does no longer honor ACIVERS and uses the highest possible value which is supported by all three involved components (Natural RPC, EntireX Broker stub and EntireX Broker).


    #EntireX
    #webMethods
    #Mainframe-Integration