Socket read timing out immediately

When does the timer for SO_TIMEOUT start? Is it when you call read on the socket? Or is it after the last packet of data is received from the remote node?
In my app, I have a socket with SO_TIMEOUT set to 2 minutes. By design, the connection is idle for a period of time longer than that, but I don't even try to read from the socket during this period. Then, I write some data to the socket and try to read a response. I would expect the 2 minute interval to start when I make the blocking call to read, but instead, I get a SocketTimeoutException right away. What's going on? Was the time that the connection was purposely idle count toward the timeout interval, even though I wasn't blocked trying to read? How can I avoid this?

I'm now officially confused.
Digging around a bit: from the Socket FAQ:
SO_{SND,RCV}TIMEO are probably the most widely
unimplemented, or strangely/incompatibly implemented, of all
common sockopts in existence... Basically, in short, NEVER
try to use them for anything... ;-)
If you want I/O timeouts, your only real option in most cases is
to roll your own, using either blocking/alarm()-based timeouts, or
non-blocking/select()-based timeouts... The latter probably being
the best choice, and least likely to cause pain (especially if you
ever need to write multi-threaded code)...
From the JDK source (PlainSocketImpl.c):
     * SO_TIMEOUT is a no-op on Solaris/Linux
    if (cmd == java_net_SocketOptions_SO_TIMEOUT) {
        return;
    }There ya go :-)
The JDK source for Windows (PlainSocketImpl.c) sets SO_RCVTIMEO if the winsock library in question supports it. (Undocumented feature: timeouts of <= 5 seconds are interpreted as 0).
I'm starting to think maybe setSoTimeout() isn't the best thing to do... Anyone here with experience with it?

Similar Messages

  • IO Error: Socket read timed out / IOP_iopinstance1_datasource" closed

    Hi ,
    Can somebody suggest what could be the probable cause of following errors showing up in IOP log file?
    ####<Aug 16, 2011 10:49:11 PM PDT> <Info> <Common> <sc-csttest> <IOPServer_iopinstance1> <weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@357ac2f7> <<anonymous>> <> <0000J7MI9kZFk3vLsYw0yX1EIpFA00002K> <1313560151943> <BEA-000628> <Created "1" resources for pool "IOP_iopinstance1_datasource", out of which "1" are available and "0" are unavailable.>
    ####<Aug 16, 2011 10:49:12 PM PDT> <Info> <JDBC> <sc-csttest> <IOPServer_iopinstance1> <weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@357ac2f7> <<anonymous>> <> <0000J7MI9kZFk3vLsYw0yX1EIpFA00002K> <1313560152146> <BEA-001128> <Connection for pool "IOP_iopinstance1_datasource" closed.>
    java.sql.SQLRecoverableException: IO Error: Socket read timed out
    Thanks
    Lokesh

    This particular error means your database is down and socket is timedout. Or the query takes so long that the reader timedout -- unlikely.
    Also, the general weblogic socket write errors, which you might see sometimes means that the client got disconnected before the server wrote results back. This is harmless

  • JDBC pooling Oracle driver Socket read timed out

    I run Java EE application on Glassfish server v3 together with Oracle 12 DB on the same machine under Windows Server 2012 64bit. I use latest ojdbc7 driver.
    Connection pool config:
      <jdbc-connection-pool validation-table-name="DUAL" steady-pool-size="20" statement-cache-size="100" associate-with-thread="true" statement-timeout-in-seconds="30" idle-timeout-in-seconds="60" max-wait-time-in-millis="2000" validate-atmost-once-period-in-seconds="20" datasource-classname="oracle.jdbc.pool.OracleDataSource" pool-resize-quantity="5" max-pool-size="60" res-type="javax.sql.DataSource" name="dbPool" is-connection-validation-required="true">
      <property name="driverClass" value="oracle.jdbc.OracleDriver"></property>
      <property name="user" value="xxx"></property>
      <property name="url" value="jdbc:oracle:thin:@(DESCRIPTION=(ENABLE=BROKEN)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=orcl)))"></property>
      <property name="password" value="xxx"></property>
      <property name="portNumber" value="1521"></property>
      <property name="databaseName" value="orcl"></property>
      <property name="serverName" value="127.0.0.1"></property>
      <property name="oracle.jdbc.ReadTimeout" value="300000"></property>
      <property name="oracle.net.CONNECT_TIMEOUT" value="10000"></property>
      </jdbc-connection-pool>
    After 2 or 3 hours, when there is more than 1 user (3-5) using my application, it stops responding and I get this in glassfish logs
      javax.enterprise.resource.resourceadapter.com.sun.enterprise.resource.allocator|_ThreadID=152;_ThreadName=Thread-2;|RAR5038:Unexpected exception while creating resource for pool dbPool. Exception : javax.resource.spi.ResourceAllocationException: Connection could not be allocated because: IO Error: Socket read timed out
      Local Exception Stack:
      Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.3.2.v20111125-r10461): org.eclipse.persistence.exceptions.DatabaseException
      Internal Exception: java.sql.SQLException: Error in allocating a connection. Cause: Connection could not be allocated because: IO Error: Socket read timed out
    From the database side it looks like this
    Fatal NI connect error 12560, connecting to:
      (LOCAL=NO)
      VERSION INFORMATION:
      TNS for 64-bit Windows: Version 12.1.0.1.0 - Production
      Oracle Bequeath NT Protocol Adapter for 64-bit Windows: Version 12.1.0.1.0 - Production
      Windows NT TCP/IP NT Protocol Adapter for 64-bit Windows: Version 12.1.0.1.0 - Production
      Time: 13-JUN-2014 03:14:49
      Tracing not turned on.
      Tns error struct:
      ns main err code: 12560
      TNS-12560: TNS:protocol adapter error
      ns secondary err code: 0
      nt main err code: 0
      nt secondary err code: 0
      nt OS err code: 0
      opiodr aborting process unknown ospid (3404) as a result of ORA-609
    When I just reset db listener everything works ok for next 1-2 hours (depends on application load). So temporary solution is to run bat script from windows scheduler to reset the listener every 1h.
    I tried everything I could find - applied these parameters:
      - Sqlnet.ora:
      SQLNET.INBOUND_CONNECT_TIMEOUT=180
      SQLNET.EXPIRE_TIME=5
      - Listener.ora:
      INBOUND_CONNECT_TIMEOUT_LISTENER_IPC=120
    But still without success

    Is the problem here just that you need a connection pool that closes idle connections?  Some pools will close idle connections after a time out period.  And the pool lets you set that time out period.  If the pool you are using doesn't provide that then use a different pool.

  • WebLogic 11g data source connection pooling failed with IO error:socket read timed out.

    Hi all,
    We encountered IO Error: Socket read timed out( <Received exception while creating connection for pool "DS_1": IO Error: Socket read timed out> ) during the creation of data sources in WebLogic 11g. Manual data source testing seems to indicate intermittent connection and the server seems to take a long time to start up with multiple IO errors. We increased the timeout at the database side but it does not seems to help. The database is 11g (11.2.0.3). The database services and listener are up which does not indicate that the database instance is down.

    This particular error means your database is down and socket is timedout. Or the query takes so long that the reader timedout -- unlikely.
    Also, the general weblogic socket write errors, which you might see sometimes means that the client got disconnected before the server wrote results back. This is harmless

  • Java.sql.SQLException: Socket read timed out

    // DbTest.java
    <code>
    import java.sql.*;
    import java.io.*;
    public class DbTest
    public static void main(String args[])
    System.out.println("DbTest main(-)");
    Connection con = null;
    try
    Class.forName("oracle.jdbc.driver.OracleDriver");
    System.out.println("class loaded");
    con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcldb","scott","tiger");
    System.out.println("con obj created");
    System.out.println("con obj retrived");
    if (con!=null)
    System.out.println("Connection created successfully");
    else
    System.out.println("Connection refused");
    catch (SQLException e)
    e.printStackTrace();
    catch(Exception e)
    e.printStackTrace();
    </code>
    e:\JavaPrgms\JDBC>javac DbTest.java
    e:\JavaPrgms\JDBC>java DbTest
    DbTest main(-)
    class loaded
    java.sql.SQLException: Socket read timed out
    at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:412)
    at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:
    531)
    at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:221)
    at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtensio
    n.java:32)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:503)
    at java.sql.DriverManager.getConnection(DriverManager.java:582)
    at java.sql.DriverManager.getConnection(DriverManager.java:185)
    at DbTest.main(DbTest.java:17)
    Caused by: oracle.net.ns.NetException: Socket read timed out
    at oracle.net.ns.Packet.receive(Packet.java:320)
    at oracle.net.ns.NSProtocol.connect(NSProtocol.java:286)
    at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1042)
    at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:301)
    ... 7 more
    i am using win 7 64bit os , Oracle 11.2, Jdk 1.7 how can i resolve this problem?
    Edited by: 910776 on Oct 4, 2012 10:49 AM

    Your other thread got locked because all you did was post a bunch of code without explaining what your question or issue was or what the code is supposed to be doing.
    java.sql.SQLException: Socket read timed out
    Simply reposting in this forum isn't enough. Edit your post and and add \ tags on the line before and the line after the code to preserve the formatting.
    Also explain what you are trying to do, the problem you are having and answer the questions I ask you in your other thread.
    {quote}
    What is it you are trying to do?
    Why are you trying to connect to two different databases?
    Do either of those databases actually exist?
    Do they exist on the local machine that Java is running on?
    Can you connect to either of them without using Java?
    {quote}                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Java.sql.SQLException: Io exception: Socket read timed out

    Hello,
    I've a interface RFC - JDBC - RFC.
    When this interface is executing, i have the follow error in RuntimeWorkbench::
    'Unable to execute statement for table or stored procedure. 'TABLAERR' (Structure 'STATEMENT') due to java.sql.SQLException: Io exception: Socket read timed out'
    In SXMB_MONI do not see any message, only
    '  <SAP:Category>XIAdapterFramework</SAP:Category>
      <SAP:Code area="MESSAGE">GENERAL</SAP:Code>
      <SAP:P1 />
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText>com.sap.aii.af.ra.ms.api.DeliveryException</SAP:AdditionalText>
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack />
      <SAP:Retry>M</SAP:Retry> '
    this error don't occurs always, when and why i don't know..
    I searched for information about this error and nothing found
    why it is happens?
    thank very much

    HI,
    This is not a problem in ur mapping or configuration.
    This is a problem with JDBC connection. This is a common error, that generally comes when the DB server is receiving and processing numerous records. Connection time out or socket read time out.
    First try this:
    In ur JDBC adapter go to Advanced Tab Page and check Transaction Isolation Level as Serializable.
    If still problem persists then take help of basis guys and increase the timeout for the connection, same thing can be asked from DB team.

  • RMI: Read timed out

    I have a rmi call.
    Client: JDK1.5.0_06 Windows 2003
    Server: JDK1.5.0_06 Windows XP
    I got following exceptions in client side sometimes, but not always:
    java.rmi.MarshalException: error marshalling arguments; nested exception is:
    java.net.SocketException: Connection reset by peer: socket write error
    at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:122)
    So I set -Dsun.rmi.server.exceptionTrace=true property to server side and got following exceptions:
    java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
    java.net.SocketTimeoutException: Read timed out
    at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:282)
    at sun.rmi.transport.Transport$1.run(Transport.java:153)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
    at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:4
    60)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport
    .java:701)
    at java.lang.Thread.run(Thread.java:595)
    Caused by: java.net.SocketTimeoutException: Read timed out
    at java.net.SocketInputStream.socketRead0(Native Method)
    at java.net.SocketInputStream.read(SocketInputStream.java:129)
    at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
    at java.io.BufferedInputStream.read1(BufferedInputStream.java:256)
    at java.io.BufferedInputStream.read(BufferedInputStream.java:313)
    at java.io.ObjectInputStream$PeekInputStream.read(ObjectInputStream.java
    :2217)
    at java.io.ObjectInputStream$BlockDataInputStream.read(ObjectInputStream
    .java:2616)
    at java.io.ObjectInputStream$BlockDataInputStream.readFully(ObjectInputS
    tream.java:2646)
    at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1609)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1293)
    at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1628)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1293)
    at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:19
    12)
    at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1836)
    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1
    713)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1299)
    at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream
    Is this problem caused by network or do you have any work around for it?

    try to increase the socket read duration by adding -Dcom.sun.CORBA.transport.ORBTCPReadTimeouts= to the variable list of your JVM.
    If it does not work, you can take a look at the sun bug 6553303 or search for the related bugs from the bug database. I saw a similar bug before.

  • GetInputStream from request - read timed out

    I'm using Weblogic server 5.1 and a third party product
    (Blackboard), running on Win2k and IIS5.0.
    I've created a servlet and configured weblogic to execute the servlet
    for a given extension etc.. which works fine, but when trying to read from
    the ServletInputStream I get an IOException, "Read timed out". This isn't a
    problem in weblogic.servlet.internal.ServletInputStreamImpl, but something
    further back that sets the input stream. I've tried reset, but it appears
    that reset and marking is not supported. I know POSTs are working within the
    third party application, but I'm using PROPFIND and trying to read XML (the
    content-length is correct).
    Any suggestions,
    Matt Elton
    Univeristy of Northumbria
    Newcastle
    UK

    I would probably guess that CIS is configuring its socket threads to have particular timeouts (to limit the time you would wait if something seriously went wrong with the request). Typically CIS is focused on page generation in APP servers or portals and these app servers (or portals) tend to like timeouts on their requests. This of course is unsuitable for the scenario of uploading the file. I would consult the CIS documentation to see if there are any mechanisms for tuning this behavior. If not, try contacting support.

  • Socket read time out

    Hi,
    A java class I use is connecting to another system via socket.
    This always works fine when using Java 1.3. However my database installation forces me to use Java 1.2.1 where the same code fails.
    Does anybody know of a workaround to this problem?
    I use Solaris.
    When using Java 1.2.1 I get
    Read timed out
    java.io.InterruptedIOException: Read timed out
    at java.net.SocketInputStream.socketRead(Native Method)
    at java.net.SocketInputStream.socketRead(Compiled Code)
    at java.net.SocketInputStream.read(Compiled Code)
    at java.net.SocketInputStream.read(Compiled Code)
    at java.io.InputStreamReader.fill(Compiled Code)
    at java.io.InputStreamReader.read(Compiled Code)
    at java.io.InputStreamReader.read(Compiled Code)
    at java.io.StreamTokenizer.read(Compiled Code)
    at java.io.StreamTokenizer.nextToken(Compiled Code)
    at com.posten.autent.AutentClient.receive(Compiled Code)
    at com.posten.autent.AutentClient.connect(AutentClient.java:265)
    Here is the code
    // Attempt to connect to server.
    try {
    socket = new Socket( host, port );
    in = new InputStreamReader( socket.getInputStream() ) ;
    input = new StreamTokenizer( in );
    output = new PrintStream( socket.getOutputStream() );
    input.resetSyntax();
    input.wordChars( '\u0021', '\uffff' );
    input.whitespaceChars( '\u0010', '\u0020' );
    input.whitespaceChars( '=', '=' );
    input.quoteChar( 39 );
    socket.setSoTimeout( timeout );
    catch( Exception e ) { ...
    The timeout is 10000 (10 seconds) which is far much more than necessary.
    Regards,
    Erika Biesse

    Well now, I've found a way around the problem myself.
    The java bug is Bug Id 4150737 and it was corrected in Java 1.2.2.
    The reason why I must stick to java 1.2.1 is that I call the java code from stored procedures in Oracle 8.1.7, which is JDK 1.2.1 compliant only. (If you the other way around call the OracleDB from java, you can use any java version.)
    Here is the WO:
    Before the very first input.nextToken I send an empty command, an extra
    newline.
    After each 'real' command I send, I call input.nextoken until TT_EOF or TT_EOL
    because the other system answers 'Error' on the empty command.
    Then I send another empty command, and then input.nextoken can read the answer
    of the 'real' command.
    Ugly, but it works!

  • Read of HTTP Request POST parameters failed:Read timed out

    Hi !
    Any one seen this exception . any ideas of the cause?
    java.lang.RuntimeException: Read of HTTP Request POST parameters failed: Read timed out
    at org.apache.catalina.connector.HttpRequestBase.parseParameters(HttpRequestBase.j ava:665)
    at org.apache.catalina.connector.HttpRequestBase.getParameterValues(HttpRequestBase.java :737)
    at org.apache.catalina.connector.RequestFacade.getParameterValues(RequestFacade.java:170 )
    Thanks,

    Assuming there is nothing wrong with
    org.apache.catalina.connector.HttpRequestBase.parseParameters
    I can only think of 2 things:
    1. The timeout is set for an extremely short time in the Apache settings (server.xml&#51032;)
    2. The client application is sending the POST verry slow or incorrect. For example the
    client says that the POST is 500 long than sends 200 and leaves the connection open.
    You can try and post the following:
    request.txt:
    POST /somePath/somefile.js HTTP/1.1
    Host: localhost:44
    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.5) Gecko/20041217
    Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
    Accept-Language: en-us,en;q=0.5
    Accept-Encoding: gzip,deflate
    Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
    Keep-Alive: 300
    Connection: keep-alive
    Content-Type: application/x-www-form-urlencoded
    Content-Length: 45
    depreciatedButWontPostWithoutAName=some+valueThe client sending the request:
    import java.io.*;
    import java.net.*;
    import java.io.DataOutputStream;
    import java.applet.Applet;
    public class appTest extends Applet implements Runnable {
         public static final int HTTP_PORT = 80;
         public static final String hostName = "localhost";
         public void run() {
              try{
                   InetAddress addr = InetAddress.getByName(hostName);
                   Socket s = new Socket(addr,HTTP_PORT);
                   BufferedWriter wr = new BufferedWriter(new OutputStreamWriter(s.getOutputStream(), "UTF8"));
                   s.setSoTimeout(2000);
                   File fileToSend = new File("request.txt");
                   FileInputStream fleHTML = new FileInputStream(fileToSend);
                   StringBuffer sbHTMFile = new StringBuffer();
                   int b = fleHTML.read();
                   while(b!=-1){
                        sbHTMFile.append((char) b);
                        b = fleHTML.read();
                   wr.write(sbHTMFile.toString());
                   wr.flush();
                   BufferedReader rd = new BufferedReader(new InputStreamReader(s.getInputStream()));
                   String line;
                   while ((line = rd.readLine()) != null) {
                        System.out.println(line);
                   wr.close();
                   rd.close();
                   } catch (Exception e) {
                        e.printStackTrace();
         public void init(){
              new Thread(this).start();
         public appTest(){
              new Thread(this).start();
         // main program
         public static void main(String argv[]) throws Exception {
              new appTest();
    }In appTest.java change HTTP_PORT to the port you need and hostName to the
    hostname you need.
    In request.txt change the /somePath/somefile.js to the location you desire.
    And change Host: localhost:44 to the hostname and post you desire.

  • SocketTimeoutException: Read timed out - Context Is Too Large

    I've successfully generated ADS Forms through WebDynpro for a while, but have now run into an issue when the complex node used to fill the report is around 1,000 rows.  The process to retrieve the data via the EJBs, along with the process to fill the context, takes around 10 seconds, but the actual generation of the PDF fails due to the following exception:
    com.sap.tc.webdynpro.pdfobject.core.PDFObjectRuntimeException: Service call exception; nested exception is:
         java.net.SocketTimeoutException: Read timed out
         at com.sap.tc.webdynpro.pdfobject.core.PDFObject.doSoapCall(PDFObject.java:280)
         at com.sap.tc.webdynpro.pdfobject.core.PDFObject.createPDF(PDFObject.java:222)
         at com.sap.tc.webdynpro.clientserver.adobe.AdobeFormHelper.createPDFDocumentForUIElement(AdobeFormHelper.java:457)
         at com.sap.tc.webdynpro.clientserver.uielib.adobe.impl.InteractiveForm.afterHandleActionEvent(InteractiveForm.java:158)
         at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.afterHandleActionEvent(ClientApplication.java:1147)
         at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.handleActionEvent(WebDynproMainTask.java:402)
         at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.execute(WebDynproMainTask.java:649)
         at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:59)
         at com.sap.tc.webdynpro.clientserver.cal.ClientManager.doProcessing(ClientManager.java:252)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doWebDynproProcessing(DispatcherServlet.java:154)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:116)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:55)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:392)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:345)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:323)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:865)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:240)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)
         at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:95)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:159)
    I'm not finding anything related to report size for this issue, only versioning of ADS and read credentials. 
    Are there limitations to the amount of information that can be generated with the SAP provided credentials?
    Do I need to break up the amount of information displayed at one time?
    Thanks,
    Lane

    Hi Lane,
    first of all, the time out is definitely not related to the credential, it is simply a technical prerequisite for being able to create PDF forms using Interactive Forms at all.
    If you are on NW '04 SP11 or lower, try upgrading to a later version. SP 12 (and higher) contains a newer version of Adobe document services that renders much faster.
    Also, by default the Web service client socket timeout is set to 60. Try changing this parameter in the Visual Administrator: Server -> Services  -> Web Services Container on the Settings tab.
    We have seen online scenarios with performance issues when the context was rather large. It may make more sense to create smaller PDFs with a stricter data selection.
    Hope this helps!
    Kind regards,
    Markus Meisl
    SAP NetWeaver Product Management

  • Read timed out, for file checkin using SCS API

    Hi,
    I have installed content server and deployed CIS in standalone oc4j.
    I want to checkin files using the SCS API. Initially I was to able checkin a file of size 120MB successfully. When I tried to checkin a file of size 300MB , file is checked in but an Exception with the msg "Read timeout out" is thrown.
    I am able to checkin the same file(300MB) through content server front end without any error.Why do I get exception when using the API?
    [2008-01-11 09:56:07,343] [main] WARN (com.stellent.cis.server.api.scs.protocol.impl.HDAProtocol) - Unable to find end header mark! ()
    [2008-01-11 09:56:07,343] [main] WARN (com.stellent.cis.server.api.scs.protocol.impl.HDAProtocol) - Did not read any headers from input, setting type to UNKNOWN_TYPE
    com.stellent.cis.client.command.CommandException: com.stellent.cis.server.api.scs.request.SCSRequestException: Error reading the response from the Content Server: Read timed out
         at com.stellent.cis.server.api.scs.impl.SCSCommand.executeRequest(SCSCommand.java:338)
         at com.stellent.cis.server.api.scs.impl.SCSCommand.execute(SCSCommand.java:222)
         at com.stellent.cis.client.command.impl.services.CommandExecutorService.executeCommand(CommandExecutorService.java:57)
         at com.stellent.cis.client.command.impl.CommandFacade.executeCommand(CommandFacade.java:158)
         at com.stellent.cis.client.command.impl.BaseCommandAPI.invokeCommand(BaseCommandAPI.java:84)
         at com.stellent.cis.client.api.scs.document.checkin.impl.SCSDocumentCheckinAPI.checkinFileStream(SCSDocumentCheckinAPI.java:707)
         at test.CheckinFile.execute(CheckinFile.java:85)
         at test.CheckinFile.main(CheckinFile.java:60)
    Caused by: com.stellent.cis.server.api.scs.request.SCSRequestException: Error reading the response from the Content Server: Read timed out
         at com.stellent.cis.server.api.scs.request.impl.SCSRequestProcessor.parseResponse(SCSRequestProcessor.java:223)
         at com.stellent.cis.server.api.scs.request.impl.SCSRequestProcessor.processRequest(SCSRequestProcessor.java:114)
         at com.stellent.cis.server.api.scs.request.impl.SCSRequestFilterChain.doRequestFilter(SCSRequestFilterChain.java:61)
         at com.stellent.cis.server.api.scs.request.stream.SCSOptimizedPublishFilter.handleRequest(SCSOptimizedPublishFilter.java:128)
         at com.stellent.cis.server.api.scs.request.impl.SCSRequestFilterChain.doRequestFilter(SCSRequestFilterChain.java:58)
         at com.stellent.cis.server.api.scs.request.stream.SCSOptimizedRetrieveFilter.handleRequest(SCSOptimizedRetrieveFilter.java:250)
         at com.stellent.cis.server.api.scs.request.impl.SCSRequestFilterChain.doRequestFilter(SCSRequestFilterChain.java:58)
         at com.stellent.cis.server.api.scs.request.rewrite.SCSRewriteURLFilter.handleRequest(SCSRewriteURLFilter.java:140)
         at com.stellent.cis.server.api.scs.request.impl.SCSRequestFilterChain.doRequestFilter(SCSRequestFilterChain.java:58)
         at com.stellent.cis.server.api.scs.request.cache.impl.SCSServiceCacheFilter.handleRequest(SCSServiceCacheFilter.java:104)
         at com.stellent.cis.server.api.scs.request.impl.SCSRequestFilterChain.doRequestFilter(SCSRequestFilterChain.java:58)
         at com.stellent.cis.server.api.scs.request.impl.SCSRequestExecutorProxy.execute(SCSRequestExecutorProxy.java:105)
         at com.stellent.cis.server.api.scs.impl.SCSCommand.executeViaProxy(SCSCommand.java:353)
         at com.stellent.cis.server.api.scs.impl.SCSCommand.executeRequest(SCSCommand.java:335)
         ... 7 more
    Caused by: java.net.SocketTimeoutException: Read timed out
         at java.net.SocketInputStream.socketRead0(Native Method)
         at java.net.SocketInputStream.read(SocketInputStream.java:129)
         at java.io.BufferedInputStream.read1(BufferedInputStream.java:254)
         at java.io.BufferedInputStream.read(BufferedInputStream.java:313)
         at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
         at java.io.BufferedInputStream.read1(BufferedInputStream.java:256)
         at java.io.BufferedInputStream.read(BufferedInputStream.java:313)
         at com.stellent.cis.server.api.scs.protocol.impl.HDAProtocol$1.read(HDAProtocol.java:379)
         at java.io.FilterInputStream.read(FilterInputStream.java:90)
         at com.stellent.cis.server.api.scs.protocol.impl.BaseHDAProtocol.determineFormat(BaseHDAProtocol.java:150)
         at com.stellent.cis.server.api.scs.protocol.impl.HDAProtocol.readMessage(HDAProtocol.java:308)
         at com.stellent.cis.server.api.scs.request.impl.SCSRequestProcessor.parseResponse(SCSRequestProcessor.java:206)
         ... 20 more
    Regards
    Raji

    I would probably guess that CIS is configuring its socket threads to have particular timeouts (to limit the time you would wait if something seriously went wrong with the request). Typically CIS is focused on page generation in APP servers or portals and these app servers (or portals) tend to like timeouts on their requests. This of course is unsuitable for the scenario of uploading the file. I would consult the CIS documentation to see if there are any mechanisms for tuning this behavior. If not, try contacting support.

  • Data Federator - Read timed out

    Hi,
    I'm using Data Federator XI 3.0 SP2. I have a datasource connecting to a web service. The web service may return take a long time to do heavy processing, etc., before returning any data. If I call the web service via Data Federator, I will get the following error
    Exception was thrown while executing a query on Data Federator Query Server.
      An exception occurred when querying Data Federator Query Server.
        [Data Federator Driver][Server]
    [Wrapper /TEST/sysadmin/sources/draft/ReturnInputAsOutput]HTTP input/output exception: Read timed out
          [Wrapper /TEST/sysadmin/sources/draft/ReturnInputAsOutput]HTTP input/output exception: Read timed out
            [Wrapper /TEST/sysadmin/sources/draft/ReturnInputAsOutput]HTTP input/output exception: Read timed out
              HTTP input/output exception: Read timed out
    I'm guessing that the Data Federator query timed out because the web service takes a long time to response, is it not? If this is the case, how do I increase timeout value? If this is not the case, then what does the error mean and how do I resolve it?
    Thanks.
    Edited by: Chih Hui Wan on Nov 19, 2009 9:15 AM

    Hi Dayanand,
    For testing purpose, I created a small simple web service with only one operation that sleep for more than two minutes before returning a string. I called this web service operation from Data Federator. After waiting for a while, I got the "Read timed out" error
    Regards,
    Chih Hui

  • Read timed out error while opening monitor tab in DataServices

    Hello all,
    Am getting a "Read timed out" error when I try to open the monitor tab in DataServices admin console for a few jobs only. For several jobs, monitor tab opens just fine. But for a few it doesnt and throws the error mentioned above. Mostly this behaviour is noticed with a job having several workflows and dataflows.
    The version of DS used is 12.1.0.0. Tried to gather some info on this issue, but couldnt find any relevant thread. Would really appreciate if anyone could help me with it.
    Regards,
    Prem

    check the following post
    http://www.forumtopics.com/busobj/viewtopic.php?t=148213

  • Error: Read timed out&MESSAGE_NOT_FOUND.

    Hi,
    There's a synchronous scenario (File-File). A connection failure occured during a query from buisness-process (BPM). Since then an error (error message) appears constantly in Runtime Workbench-Component Monitoring-Communication Channels.
    Success
    RRB: entering RequestResponseBean
    Success
    RRB: passing through ...
    Success
    RRB: suspending the transaction
    Success
    RRB: leaving RequestResponseBean
    Success
    Application attempting to send an XI message synchronously using connection File_http://sap.com/xi/XI/System.
    Success
    Trying to put the message into the call queue.
    Success
    Message successfully put into the queue.
    Success
    The message was successfully retrieved from the call queue.
    Success
    The message status set to DLNG.
    Error
    Received XI System Error. ErrorCode: GENERAL ErrorText: com.sap.aii.af.ra.ms.api.DeliveryException: Read timed out ErrorStack: 
    Error
    Returning synchronous error notification to calling application: com.sap.aii.af.ra.ms.api.DeliveryException: XIAdapterFramework:GENERAL:com.sap.aii.af.ra.ms.api.DeliveryException: Read timed out.
    Error
    Transmitting the message using connection http://*****:8010/sap/xi/engine?type=entry failed, due to: com.sap.aii.af.ra.ms.api.DeliveryException: XIAdapterFramework:GENERAL:com.sap.aii.af.ra.ms.api.DeliveryException: Read timed out.
    Error
    The message status set to FAIL.
    Error
    Returning to application. Exception: com.sap.aii.af.ra.ms.api.DeliveryException: XIAdapterFramework:GENERAL:com.sap.aii.af.ra.ms.api.DeliveryException: Read timed out
    Error
    Attempt to process file failed with com.sap.aii.af.ra.ms.api.DeliveryException: XIAdapterFramework:GENERAL:com.sap.aii.af.ra.ms.api.DeliveryException: Read timed out
    Error
    Attempt to process file failed with com.sap.aii.af.service.util.transaction.api.TxManagerException: Unable to roll back transaction: com.sap.engine.services.ts.exceptions.BaseIllegalStateException
    File removing and the channel rebooting the channel donu2019t help.
    After rebooting the channel:
    Error
      Received XI System Error. ErrorCode: MESSAGE_NOT_FOUND ErrorText:   ErrorStack: XML message not found
    Error
      Returning synchronous error notification to calling application: com.sap.aii.af.ra.ms.api.DeliveryException: XIServer:MESSAGE_NOT_FOUND:.
    Error
      Transmitting the message using connection http://*****:8010/sap/xi/engine?type=entry failed, due to: com.sap.aii.af.ra.ms.api.DeliveryException: XIServer:MESSAGE_NOT_FOUND:.
    Error
      The message status set to FAIL.
    Error
      Returning to application. Exception: com.sap.aii.af.ra.ms.api.DeliveryException: XIServer:MESSAGE_NOT_FOUND:
    Error
      Attempt to process file failed with com.sap.aii.af.ra.ms.api.DeliveryException: XIServer:MESSAGE_NOT_FOUND:
    Error
      Attempt to process file failed with com.sap.aii.af.service.util.transaction.api.TxManagerException: Unable to roll back transaction: com.sap.engine.services.ts.exceptions.BaseIllegalStateException
    Any ideas?

    hi,
    try this,
    go to Message Monitoring in RWB, delete all the messages with status system error and onhold.
    it shd solve your problem
    Regards,
    Sukarna.chirumamilla.

Maybe you are looking for

  • I want sap easy access screen as an iview in the portal

    Hi ,     I want sap easy access screen as a iview in portal ,how can i do it. I used SESSION_MANAGER tcode and created a transaction iview but it is going to rs00 tcode screen, PLZ help me

  • Generate Web Dynpro Model?

    Hi, I'm familiar with DS 7.0, and I'm begining to lear 7.1 recently. I searched for tutorials and in the forum, but I can't find how to create a Web Dynpro model from a CAF DC, in 7.0 it was just a right click and generate WD Model, can you help me p

  • How to invoke synchronous services dynamically (parallel) using BPEL

    hi, I am working on soa suit 11g(11.1.1.2.0) & weblogic server 10.3.2. I have one requirement in which i need to dynamically route endpoints. To achive this, i have created one table in which i stored endpoints(wsdl url) & i used parallel flow to get

  • Multiple Image inputs in Blendmode Shader

    I'm using 3 input images in a kernel destined to be used as a Blendmode.Shader. As the documentation states, I have the background image as the first input, the foreground image (to whose bitmap I apply the Blendmode) as the second input, and a third

  • Ipod touch not updating because it takes to long to back it

    I cannot update my ipod touch version 3.1.2 because when i do so, it needs to be backed up. When doing this, it will be backing for many hours and the status bar will have hardly moved. please help me out.