1 Reply Latest reply on Oct 28, 2001 3:03 PM by David Jencks

    JBOSS Hot-deployment database problem

    Tom Newbie

      Hi;

      I'm using JBOSS 2.4, Tomcate 3.2.3,MySql 3.23.42 (with BDB for transaction-safe supoprt), Jdk1.3.1, and mm.mysql.jdbc 1.2 driver. all installed on a Linux box.

      I'm able to deply (hot-deploy) my (BMP)entity bean and access it (via a servlet) just fine with no problems. However, when I attempt to perform hot-deployment (for my entity bean)at the same time there are active bean instances (belonging to to multi-threaded client http-servlet based requests) that are accessing (i.e. performing SQL updates), or trying to access the database; all those beans active instances through expections.

      Every time I re-attempt the test, I get a different exception raised from the bean. The exception I've seen so far are:
      - EJBException
      - IllegalStateException
      - RemoteException
      - TransactionRolledBackException
      - MarshalException: invalid remote object
      - UndeclaredThrowableException

      Initially I thuoght that it was a MySql, or an mm jdbc driver problem. However, MySql (or even the mm jdbc driver)has no problems handling parallel db transactions in any shape. Only when HotDeploy is done for the same (BMP) entity bean type that at the same time is beeing used by clients, creates/raises exceptions and causes all db transactions that are taking place at that same hot-deployment time to fail.

      Did I stumple upon a JBOSS bug?... Have someone else encountered this problem?

      Any help/clues will be greatly appreciated.

      Tom

        • 1. Re: JBOSS Hot-deployment database problem
          David Jencks Master

          Why this forum? you already demonstrated it is not a db problem.

          You may be expecting too much from hot-deploy. You can deploy jars, ears, etc while the server is running, and redeploy them while the server is running, but expecting in-process requests to complete while new ones go to the new version is quite a bit harder. However, we have some ideas about how to make this possible in 3.0.