ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » REST API stop processing requests

Post new topic  Reply to topic
 REST API stop processing requests « View previous topic :: View next topic » 
Author Message
mxintegrator
PostPosted: Wed Mar 02, 2022 3:41 pm    Post subject: REST API stop processing requests Reply with quote

Newbie

Joined: 02 Mar 2022
Posts: 2

Hi
I have created an IIB REST API service 7 months ago, it was delivered to production and the services was working fine, but since last week there is a problem that cause the REST API stop processing all the requests.

Details about the service:
REST API service with 11 operations defined in the json document.
40 instances at message flow level.
Nothing special in the services, just a large back end webservice orchestration to generate the business process.
I have created a static library with some subflows to manage the exceptions.
IBM Integration Bus v10.0.0.3

Behavior:
The REST API is begin processing information and suddenly stop process information, If I call the REST API I got 504 Gateway Timeout.

Reviewing the user.log file I can see the following error:
Code:

BIP3120E: Exception condition detected on input node 'gen .API_Flow .HTTP Input' .
BIP2230E: Error detected whilst processing a message in node 'gen .API_Flow .HTTP Reply' .
BIP3701E: A Java exception was thrown whilst calling the Java JNI method 'TomcatWorkInProgress_sendReplyData' . The Java exception was 'java .net .SocketException: A system call received a parameter that is not valid .' . The Java stack trace was 'Frame : 0 java .net .SocketException: A system call received a parameter that is not valid .| @: java .net .SocketOutputStream .socketWrite0(Native Method)| @: java .net .SocketOutputStream .socketWrite(SocketOutputStream .java:125)| @: java .net .SocketOutputStream .write(SocketOutputStream .java:171)| @: org .apache .coyote .http11 .InternalOutputBuffer .realWriteBytes(InternalOutputBuffer .java:215)| @: org .apache .tomcat .util .buf .ByteChunk .flushBuffer(ByteChunk .java:480)| @: org .apache .coyote .http11 .InternalOutputBuffer .flush(InternalOutputBuffer .java:119)| @: com .ibm .broker .inlinehttp .tomcatthreadpool .InlineHTTPOutputStream .reallyFlush(Unknown Source)| @: com .ibm .broker .inlinehttp .




the workarount implemented is restart the REST API, once restarted the REST API start processing information.

I have reviewed the stderr files and I cannot see any OutOfMemoryError errores



do you have any clue about what can cause this behavior? or what I should also check?

I cannot replicate this Behavior in other environments, in all other environments the REST API works fine!

Thank you
Regards[/img]
Back to top
View user's profile Send private message
mpong
PostPosted: Wed Mar 02, 2022 6:22 pm    Post subject: Reply with quote

Disciple

Joined: 22 Jan 2010
Posts: 164

Do you observe any particular pattern? Is there any high volume of transactions going on here? sometimes, when inbound traffic exceeds the throughput of your API, this could occur.

Any way to get a user trace? Was there any change event occurred in your environment? ex: OS patching or IIB update, etc...
Back to top
View user's profile Send private message
mxintegrator
PostPosted: Thu Apr 07, 2022 1:01 pm    Post subject: Reply with quote

Newbie

Joined: 02 Mar 2022
Posts: 2

Hi mpong, thank you for your response.

I have been analyzing this problem, I noticed that this problem occurs when the message flow attempt reply the web-service call using the HTTP reply node (nothing special, just a confirmation that the process was completed successfully, a json with 6 elements. ).


The message flow process successfully hundred of calls with no errors, just around 4 or 5 calls fails due to this error when the message flow tries to reply and completed the transaction.

I can not see any information related on internet, do you have any clue about what can produce this behavior?

The error is:

Code:

Error Making JNI Call: TomcatWorkInProgress_sendReplyData -- TomcatWorkInProgress_sendReplyData -- java .net .SocketException: A system call received a parameter that is not valid . (Write failed) -- Frame : 0 java .net .SocketException: A system call received a parameter that is not valid . (Write failed)|
@: java .net .SocketOutputStream .socketWrite0(Native Method)|
@: java .net .SocketOutputStream .socketWrite(SocketOutputStream .java:126)|
@: java .net .SocketOutputStream .write(SocketOutputStream .java:172)|
@: org .apache .coyote .http11 .InternalOutputBuffer .realWriteBytes(InternalOutputBuffer .java:216)|
@: org .apache .tomcat .util .buf .ByteChunk .flushBuffer(ByteChunk .java:480)|
@: org .apache .coyote .http11 .InternalOutputBuffer .flush(InternalOutputBuffer .java:120)|
@: com .ibm .broker .inlinehttp .tomcatthreadpool .InlineHTTPOutputStream .reallyFlush(InlineHTTPOutputStream .java:166)|
@: com .ibm .broker .inlinehttp .tomcatthreadpool .WMBOutboundHTTPTransport .finish(WMBOutboundHTTPTransport .java:222)|
@: com .ibm .broker .inlinehttp .tomcatthreadpool .HTTPWorkInProgress .writeOutputMessage(HTTPWorkInProgress .java:142)|
@: com .ibm .broker .axis2 .TomcatWorkInProgress .sendReplyData(TomcatWorkInProgress .java:705)|
@: com .ibm .broker .plugin .MbOutputTerminal ._propagate(Native Method)|
@: com .ibm .broker .plugin .MbOutputTerminal .propagate(MbOutputTerminal .java:133)|
@: com .ibm .broker .plugin .MbOutputTerminal .propagate(MbOutputTerminal .java:88)|
@: com .ibm .broker .jdbcnodes .RouteNode .evaluate(RouteNode .java:262)|
@: com .ibm .broker .plugin .MbNode .evaluate(MbNode .java:1452)|






thank you
Back to top
View user's profile Send private message
gbaddeley
PostPosted: Thu Apr 07, 2022 3:01 pm    Post subject: Reply with quote

Jedi

Joined: 25 Mar 2003
Posts: 2494
Location: Melbourne, Australia

mxintegrator wrote:
I can not see any information related on internet, do you have any clue about what can produce this behavior?
thank you

Google for socket write "A system call received a parameter that is not valid" returns a lot of hits. Possible causes include the socket connection dropping out unexpectedly at the TCP or network level, or IIB running out of file descriptors.
_________________
Glenn
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » REST API stop processing requests
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.