5 Replies Latest reply on Oct 9, 2007 1:52 PM by obfuscator

    Clearing the transaction persistent storage

    obfuscator

      Hi!

      As a lot of other people on this list, I have a "trouble recovering non-serializable XAResource" problem.

      I know that the source of the problem was a Jackrabbit transaction bug.
      I also know that this is related to a FAQ question, and that the proper resolution would be to write a recovery module. However, I'm just interested of removing this entry from the persistent storage, since this is on my development machine. Is there any file I can delete, or database table I can clear, so that Jboss just forgets about the transaction failure?

      Best regards

      Alexander

        • 1. Re: Clearing the transaction persistent storage
          jhalliday

          yes, delete the contents of whatever directory you set the objectStoreDir property to in jbossjta-properties.xml

          • 2. Re: Clearing the transaction persistent storage
            obfuscator

             

            "jhalliday" wrote:
            yes, delete the contents of whatever directory you set the objectStoreDir property to in jbossjta-properties.xml


            Thank you for such a quick and simple answer! Great! Have a nice weekend!

            /Alex

            • 3. Re: Clearing the transaction persistent storage
              obfuscator

              For anyone else who tries this:

              The jboss log will contain something like

              [loggerI18N] [com.arjuna.ats.internal.jta.resources.arjunacore.norecoveryxa] [com.arjuna.ats.internal.jta.resources.arjunacore.norecoveryxa] Could not find new XAResource to use for recovering non-serializable XAResource < 131075, 28, 26, 1-7f000101:8cbb:46fb5b92:3657f000101:8cbb:46fb5b92:395 >
              

              You can search for the uuid:
              ~$ locate 46fb5b92
              /opt/jboss-4.2.1.GA/server/default/data/tx-object-store/HashedActionStore/defaultStore/StateManager/BasicAction/TwoPhaseCoordinator/AtomicAction/#88#/7f000101_8cbb_46fb5b92_365
              

              Now all you need to do is delete that file and you're sorted!

              Trivia:
              The jbossjta-properties.xml contains (at least for me, running 4.2.1):
              <property name="com.arjuna.ats.arjuna.objectstore.objectStoreDir" value="PutObjectStoreDirHere"/>

              This is a little confusing, BUT after reading
              http://jboss.org/?module=bb&op=viewtopic&start=0&t=98679
              I managed to find out that this is actually overriden in /server//conf/jboss-service.xml as such:
              <mbean code="com.arjuna.ats.jbossatx.jta.TransactionManagerService"
               <attribute name="ObjectStoreDir">${jboss.server.data.dir}/tx-object-store</attribute>
              


              Good luck!

              • 4. Re: Clearing the transaction persistent storage
                marklittle

                Plus, read the documentation. It's all covered there ;-)

                • 5. Re: Clearing the transaction persistent storage
                  obfuscator

                   

                  "mark.little@jboss.com" wrote:
                  Plus, read the documentation. It's all covered there ;-)


                  RTFM? Naah :D

                  No, but seriously, i would love to have time to do that, but as so many others I was just looking for a quick and simple solution to my problem. And when you're in those situations, anything that isn't number one on Google doesn't exist.

                  I understand that you've put a lot of effort into this project, and I thank you for a great product and respect your work. I also understand that you feel like the least your users can do is to RTFM, and I understand. But having recently started with JEE and Jboss, I really have a LOT to tackle as it is. And since transactions work so flawlessly, I don't really need to understand that in great detail yet. :)

                  I promise I'll RTFM before posting the first serious forum post here ;)

                  Cheers