2 Replies Latest reply: Nov 27, 2012 4:48 AM by Kristian Ivarsson RSS

    TPETIME - timeout error occured


      We are experiencing a TPETIME - timeout error in our system. We are executing a long process, which in DB2 database takes approx 2 mins to complete. On the screen end user is getting 'Web Server not responding error' when the end user refresh his screen the work is actually been done. All the SQLS underneath the process are completed. In the logs we encountered the following error:

      2011-12-09 08:11:21,338 INFO [Portal] Retrieving Navigation Link Language Info, language='ENG'
      2011-12-09 09:41:13,351 WARN [XSLT] Missing Field Meta Data 'GOTO_TOOLTIP_DESCR'
      2011-12-09 10:17:02,289 ERROR [Jolt] Jolt Error in CILPEVTP
      bea.jolt.pool.ServiceException: TPETIME - timeout occured
           at bea.jolt.pool.Connection.call(Connection.java:279)
           at bea.jolt.pool.SessionPool.call(SessionPool.java:501)
           at bea.jolt.pool.SessionPool.call(SessionPool.java:241)

      Below details are from the tuxedo log:

      133549.olivau18!QTUXFULLall.880820.1.0: TRACE:at: { tpservice({"CILPEVTP", 0x0, 0x110226a58, 280260, 0, 4294967295, {1323314536, 0, 32648}})
      133549.olivau18!QTUXFULLall.880820.1.0: TRACE:at: { tptypes(0x110226a58, 0xfffffffffffe7a8, 0xfffffffffffe7b4)
      133549.olivau18!QTUXFULLall.880820.1.0: TRACE:at: } tptypes = 657408
      133549.olivau18!QTUXFULLall.880820.1.0: TRACE:at: { tpfree(0x110226a58)
      133549.olivau18!QTUXFULLall.880820.1.0: TRACE:at: } tpfree
      133549.olivau18!QTUXFULLall.880820.1.0: TRACE:at: { tpalloc("VIEW32", "CIFPEVTP", 280260)
      133549.olivau18!QTUXFULLall.880820.1.0: TRACE:at: } tpalloc = 0x1104741f8
      133549.olivau18!QTUXFULLall.880820.1.0: TRACE:at: } tpservice
      133549.olivau18!QTUXFULLall.880820.1.0: TRACE:at: { tpreturn(2, 538976288, 0x1104741f8, 280260, 0x0)
      133549.olivau18!QTUXFULLall.880820.1.0: TRACE:at: } tpreturn [long jump]
      133549.olivau18!QTUXFULLall.880820.1.0: TRACE:at:} tpservice
      133549.olivau18!JSH.184470.1.-2: TRACE:at: { tpalloc("VIEW32", "CIFZUIZL", 2347)
      133549.olivau18!JSH.184470.1.-2: TRACE:at: } tpalloc = 0x11016f4f8 [tperrno TPEBLOCK]
      133549.olivau18!JSH.184470.1.-2: TRACE:at: { tpchkauth()
      133549.olivau18!JSH.184470.1.-2: TRACE:at: } tpchkauth = 0
      133549.olivau18!JSH.184470.1.-2: TRACE:at: { tpfree(0x11016f4f8)
      133549.olivau18!JSH.184470.1.-2: TRACE:at: } tpfree
      133549.olivau18!QTUXFULLall.1101914.1.0: TRACE:at: { tpservice({"CILZUIZL", 0x0, 0x1103dccd8, 2347, 0, 4294967295, {1323314536, 0, 32648}})
      133549.olivau18!QTUXFULLall.1101914.1.0: TRACE:at: { tptypes(0x1103dccd8, 0xfffffffffffe7a8, 0xfffffffffffe7b4)

      The configuration of the UBBCONFIG file is as follows:
      SCANUNIT 5
      BLOCKTIME 12
      DBBLWAIT     2
      BBLQUERY     6
      Please note no SVCTIMEOUT or TRANTIME is been set.

      We would like to know if the error we encountered is related to some tuxedo settings. Please suggest.

      Best Regards,
      Aashima Sethi

      Edited by: user810396 on 12-Dec-2011 04:51
        • 1. Re: TPETIME - timeout error occured
          Todd Little-Oracle
          Hi Aashima,

          The reason you are encountering this error is that you have in your UBBCONFIG file:

          SCANUNIT 5
          BLOCKTIME 12

          This means that Tuxedo will wait up to 60 seconds for a blocking call. So if you have a service that is going to take 2 minutes to execute, it will always timeout and the caller will received TPETIME.

          You can fix this at least three different ways. You can increase the value of BLOCKTIME in your UBBCONFIG file, although this will affect the timeout of all services. Alternatively you can add a *SERVICES section to your UBBCONFIG file if you don't have one, list the service that is long running, and add the BLOCKTIME parameter to the service with a larger value.  Finally you can change the blocking timeout time on a per context or per call basis using the tpsblktime() API in the client before making the call.

          Todd Little
          Oracle Tuxedo Chief Architect
          • 2. Re: TPETIME - timeout error occured
            Kristian Ivarsson
            Hi Todd,

            just wondering if you may answer a follow-up-question ?

            We're having trouble understanding how to measure this blocking timeouts. We do have SCANUNIT set to 10 and BLOCKTIME to 12 in ubbconfig. tpgblktime returns 120, that makes us belive that the effective blocktime is a multiple of BLOCKTIME and SCANUNIT. If you explicitly use tpsblktime and set the value 13, tpgblktime returns 13, so it doesn't seem to be a multiple of SCANUNIT then. It's a bit confusing but there might be some documentation somewhere explaining this ?

            Whenever we perform a call to a service after using tpsblktime with the value 13, it seems like the client receives TIMEOUT randomly after 20-30 seconds. If we use tpsblktime with the value of 4, it seems like a TIMEOUT occurs randomly after 10-20 seconds

            Reading the documentation (http://docs.oracle.com/cd/E18050_01/tuxedo/docs11gr1/rf3c/rf3c.html#wp2437258), we should receive TIMEOUT after 20 seconds with tpsblktime set to 13 and after 10 seconds with tpsblktime set to 4, but that does not seem to be the case

            Are there any explanations to this behaviour or is the documentation wrong ?

            Best regards,