5 Replies Latest reply on Mar 15, 2004 3:10 PM by bill.burke

    Tyrex failed under heavy transaction load.

    alexsong

      Hi, there,

      We've tested tyrex transaction manager under havery transaction load
      situation, tyrex failed after a few hours running. Here are our settings:

      OS: SunOS 5.8
      JBoss(jetty) 3.0.4
      about 20 session beans,
      15 massage driven beans,
      Oracle 8.1.7
      tyrex-1.0.1
      (timeout 5 min)

      It runs ok under normal situation, but when we issued 12
      transactions/per second, after less than 2 hours, certain EJBs started
      to break.

      We did same loading test for built-in JBoss transaction manager, it
      survives

      Conclusion: Tyrex may not be very stable under heavy load productin
      enviroment.

      Hope this information is helpful.

      Thanks

      Alex Song

      --------------------------------------------------------------------------------\
      ------------------

      The following is stack trace:

      2004-03-11 12:58:38,209 ERROR [STDERR] javax.servlet.ServletException:
      unable to create brivo.core.user.RegistrationManagerRemoteInstance
      error marshalling arguments; nested exception is:
      java.io.NotSerializableException: tyrex.tm.impl.TransactionImpl
      2004-03-11 12:58:38,210 ERROR [STDERR] at
      brivo.web.iris.users.AddUserAction.perform(AddUserAction.java:173)
      2004-03-11 12:58:38,211 ERROR [STDERR] at
      org.apache.struts.action.ActionServlet.processActionPerform(ActionServlet.java:1\
      787)
      2004-03-11 12:58:38,211 ERROR [STDERR] at
      org.apache.struts.action.ActionServlet.process(ActionServlet.java:1586)
      2004-03-11 12:58:38,212 ERROR [STDERR] at
      org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:510)
      2004-03-11 12:58:38,212 ERROR [STDERR] at
      javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
      2004-03-11 12:58:38,213 ERROR [STDERR] at
      javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
      2004-03-11 12:58:38,213 ERROR [STDERR] at
      org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:366)
      2004-03-11 12:58:38,214 ERROR [STDERR] at
      org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicationHan\
      dler.java:341)
      2004-03-11 12:58:38,214 ERROR [STDERR] at
      brivo.web.util.LogonFilter.doFilter(LogonFilter.java:150)
      2004-03-11 12:58:38,215 ERROR [STDERR] at
      org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicationHan\
      dler.java:333)
      2004-03-11 12:58:38,215 ERROR [STDERR] at
      org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.j\
      ava:285)
      2004-03-11 12:58:38,216 ERROR [STDERR] at
      org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:581)
      2004-03-11 12:58:38,216 ERROR [STDERR] at
      org.mortbay.http.HttpContext.handle(HttpContext.java:1687)
      2004-03-11 12:58:38,217 ERROR [STDERR] at
      org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.jav\
      a:544)
      2004-03-11 12:58:38,217 ERROR [STDERR] at
      org.mortbay.http.HttpContext.handle(HttpContext.java:1637)
      2004-03-11 12:58:38,218 ERROR [STDERR] at
      org.mortbay.http.HttpServer.service(HttpServer.java:875)
      2004-03-11 12:58:38,222 ERROR [STDERR] at
      org.jboss.jetty.Jetty.service(Jetty.java:543)
      2004-03-11 12:58:38,222 ERROR [STDERR] at
      org.mortbay.http.HttpConnection.service(HttpConnection.java:806)
      2004-03-11 12:58:38,223 ERROR [STDERR] at
      org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:956)
      2004-03-11 12:58:38,223 ERROR [STDERR] at
      org.mortbay.http.HttpConnection.handle(HttpConnection.java:823)
      2004-03-11 12:58:38,223 ERROR [STDERR] at
      org.mortbay.http.SocketListener.handleConnection(SocketListener.java:203)
      2004-03-11 12:58:38,224 ERROR [STDERR] at
      org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:290)
      2004-03-11 12:58:38,224 ERROR [STDERR] at
      org.mortbay.util.ThreadPool$JobRunner.run(ThreadPool.java:743)
      2004-03-11 12:58:38,225 ERROR [STDERR] at
      java.lang.Thread.run(Thread.java:479)

        • 1. Re: Tyrex failed under heavy transaction load.

          Even the tyrex developer doesn't recommed it for production,
          which is why we no longer support it.

          Regards,
          Adrian

          • 2. Re: Tyrex failed under heavy transaction load.
            alexsong

            No wonder I couldn't find tyrex setting in jboss-service.xml in jboss 3.2.3.

            Do you know if jboss team has plan to implement more sophiaticate transaction manager after jboss 4?

            I read tyrex doc and src carefully, I found this guy did have very good view on how to implement TP monitoring, such as group transactions into domains, prioritize transactions to provide QoS(quality of service), control total concurrent transactions number, transaction weight measurement, transaction recovery and journal, etc. The idea does cover a fine tune transaction management framework.

            Not sure if jboss has such transaction team to handle such issues.

            Alex Song

            • 3. Re: Tyrex failed under heavy transaction load.
              bill.burke

              tyrex does not have recovery/logging

              • 4. Re: Tyrex failed under heavy transaction load.
                jhalli

                Hello Alex

                Bill Burke> tyrex does not have recovery/logging


                Bill probably won't thank me for pointing out that JBoss does not have these either. Nor do any other open source solutions. But then you know that already. What you may not know is that Arjuna offers their transaction service integrated with JBoss. It has logging and fully automatic crash recovery. It's not free or open source, but it is lots cheaper than anything from the leading commercial application server vendors. Why not grab the free evaluation version and see if it will do the job? http://www.arjuna.com/products/jboss/

                Regards

                Jonathan.

                • 5. Re: Tyrex failed under heavy transaction load.
                  bill.burke

                  which is why we partnered with you...We usually point people to you when they want a TM with recovery/logging. I forgot to do that in this case...

                  Apologies,

                  Bill