[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference rocks::dec_edi

Title:DEC/EDI
Notice:DEC/EDI V2.1 - see note 2002
Moderator:METSYS::BABER
Created:Wed Jun 06 1990
Last Modified:Fri Jun 06 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:3150
Total number of notes:13466

3056.0. "Obb transport error, ivbuflen" by CSC32::R_GOLLEHON () Fri Mar 14 1997 03:37

    Hello,
    
    Got another annoying OBB question...I'm getting the following message
    reported on a 2.1D server in the trace file for the decedi$imf process. 
    Obb OBB version is v2.7.
    
    *** Request Sent: Synchronous Invoke.
    *** Method: 68eb4b476f40.0c.70.a9.00.00.00.00.00.
    ***    MethodServerClass: 68eb4b476f3f.0c.70.a9.00.00.00.00.00
    *** Request Sent: Synchronous Invoke.
    *** Method: 68eb4b476f40.0c.70.a9.00.00.00.00.00.
    ***    MethodServerClass: 68eb4b476f3f.0c.70.a9.00.00.00.00.00
    *** Request Sent: Synchronous Invoke.
    *** Method: 68eb4b476f40.0c.70.a9.00.00.00.00.00.
    ***    MethodServerClass: 68eb4b476f3f.0c.70.a9.00.00.00.00.00
    ***    Marshalled Buffer: 66332
    ***    Marshalled Buffer: 66332
    ***    Marshalled Buffer: 66332
    ***    Allocated Buffer : 67611
    ***    Allocated Buffer : 67611
    ***    Allocated Buffer : 67611
    --- SAR: Sending message on socket 9
    --- SAR: Sending message on socket 9
    --- SAR: Sending message on socket 9
    --- Sending on socket 9
    --- Sending on socket 9
    --- Sending on socket 9
    --- Total data length is 66332
    --- Total data length is 66332
    --- Total data length is 66332
    --- Sending data on socket - len is 65535
    --- Sending data on socket - len is 65535
    --- Sending data on socket - len is 65535
    --- Error sending data - error value is 65535
    --- Error sending data - error value is 65535
    --- Error sending data - error value is 65535
    ***    Transport Status: %OBB-E-INV_TRANSERR, Transport error
    `$TransportError$
    ***    Transport Status: %OBB-E-INV_TRANSERR, Transport error
    `$TransportError$
    ***    Transport Status: %OBB-E-INV_TRANSERR, Transport error
    `$TransportError$
    
    The error is an SYSTEM-F-IVBUFLEN, invalid buffer length.  I would
    assume that the error is due to the data size.   My question is the
    65535 a maximum datagram size for tcp/ip?  Can this value be increased
    or decreased?  Can OBB be made to send smaller packets?
    
    The customer is using TCPware from Process Software (officially
    supported for use with OBB)...anyone have any experience with this?
    
    Thanks,
    
    -Robert
T.RTitleUserPersonal
Name
DateLines
3056.1METSYS::THOMPSONFri Mar 14 1997 13:4311
Robert,

DEC/EDI  will try to send up to 64k buffers. i.e. if you have data larger
than that it will go right up to that level.

Perhaps process could not handle it. If necessary we can do cut
down buffers - but it requires a code change.

Do a test with smaller documents and then work up.

Mark
3056.2no document being sent!CSC32::R_GOLLEHONFri Mar 14 1997 16:2812
    Mark,
    
    At the point this error is occurring, we weren't trying to send a
    document.  I had entered a bogus trade command which should have failed
    with an file not found, but never got that far.
    
    I'll see what OBB had to say and possibly have the customer contact
    their TCP/IP software provider and see what they say.
    
    Thanks,
    
    -Robert
3056.3EscalatingCSC32::R_GOLLEHONFri Mar 14 1997 20:5418
Mark,
 
    I received the following from a contact on the OBB support team.  Based
    on this, I think I will need to do an escalation.
    
    Thanks,
    
    -Robert
----------------------------------------------------------------------
I took a look at the note file entry. There is a maximum transfer/buffer size
that is dependent on the network transport or operating system used. I believe
that TCPware must have a maximum packet size of 64K. The unfortunate thing
is that it is up to the application to make sure any data it is sending does
not exceed the 64K limit, if it does it must break up the data in to 64K 
chunks. In your case, EDI or the EDI application is not doing a good job of
this (and most likely did not realize the it needed to). I am sure that
someone in the notes file will confirm this.
    
3056.4METSYS::THOMPSONFri Mar 14 1997 22:107
ahh yes - I just remembered, We always send back 64k regardless
of the actual amount of data.

We need the rules from OBB Engineering.

Mark
3056.5node name gameCSC32::R_GOLLEHONTue Mar 18 1997 03:3030
    I'm not out of stupid questions yet, not by a longshot!
    
    This customer is now trying to switch from IP to DECnet...he can set
    the server to use DECnet only, but the client must be able to use both.  
    
    We can get the IMF started up on the server with a trade call from the
    client, and we connect via DECnet, but for some reason the validation
    inside DEC/EDI appears to try to validate the request using the IP
    nodename of the client.  IE,
    
    VAXB, vaxb.prd.wcus is the client using IP and DECnet
    WCEDI1 is the server using DECnet only
    
    I've verified that the proper proxies are in place.
    
    With an entry for VAXB only in the node registry on the server, when
    doing a TRADE POST from the client we get a DEC/EDI user not
    authorized.  If we add an entry for vaxb.prd.wcus, we get a server
    error.  Looking at the trace, we can see no problems in the log for the
    first scenario.  For the second scenario, it is trying to use the IP
    node name to make a callback to the client and failing for obvious
    reasons.
    
    My question is why is EDI trying to use the vaxb.prd.wcus node name for
    validation?  My guess is that this nodename is passed from the client
    to the server, but I don't know where we are getting it from.  If so,
    how do I get it to use the DECnet node name?
    
    Thanks,
    -Robert
3056.6ObjectBroker gives us the nameMETSYS::HELLIARhttp://samedi.reo.dec.com/Tue Mar 18 1997 12:028
    Robert,
    
    DEC/EDI obtains the clients hostname via ObjectBroker...ObjectBroker is
    supposed to shield us from the underlying transport so we have no idea
    whether the name is a DECnet or tcp/ip name, we just use what we are
    given.
    
    Graham