Uploaded image for project: 'JBoss Enterprise Application Platform 4 and 5'
  1. JBoss Enterprise Application Platform 4 and 5
  2. JBPAPP-9549

"Could not find new XAResource to use for recovering non-serializable XAResource" warnings

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Do
    • Critical
    • None
    • EAP_EWP 5.1.2
    • HornetQ
    • None

    Description

      Hi,

      there is issue from customer's business case described in ticket 00628146 in salesforce which we agreed to support.

      Test scenario:

      1. Start two EAP servers - one with HQ configured as live and second with HQ configured as backup
      2. Deploy MDB on both of the server as HA-Singleton (so only one MDB is up in cluster). MDB reads messages from cmmRequestQueue and send to cmmResponseQueue
      3. Start standalone JMS clients which send messages to cmmRequestQueue and read them from cmmResponseQueue
      4. Kill first EAP server with HQ configured as live and check whether MDB on second server starts and jms client failover to backup
      5. Start first server again and check whether jms client do failback to live server and RA on second failback to live server

      When first server is started again it throws:

      10:54:16,418 INFO  [ServerImpl] JBoss (Microcontainer) [5.1.2 (build: SVNTag=JBPAPP_5_1_2 date=201111102209)] Started in 23s:734ms
      10:54:22,992 WARN  [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, 4945551024848484848495897101495558534848100481019957581015351551024848484848495897101495558534848100481019957581015352 >
      10:54:22,993 WARN  [loggerI18N] [com.arjuna.ats.internal.jta.resources.arjunacore.noresource] [com.arjuna.ats.internal.jta.resources.arjunacore.noresource] No XAResource to recover < 131075, 28, 26, 4945551024848484848495897101495558534848100481019957581015351551024848484848495897101495558534848100481019957581015352 >
      10:54:23,247 WARN  [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, 4945551024848484848495897101495558534848100481019957581015398551024848484848495897101495558534848100481019957581015399 >
      10:54:23,247 WARN  [loggerI18N] [com.arjuna.ats.internal.jta.resources.arjunacore.noresource] [com.arjuna.ats.internal.jta.resources.arjunacore.noresource] No XAResource to recover < 131075, 28, 26, 4945551024848484848495897101495558534848100481019957581015398551024848484848495897101495558534848100481019957581015399 >
      10:56:33,426 WARN  [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, 4945551024848484848495897101495558534848100481019957581015351551024848484848495897101495558534848100481019957581015352 >
      10:56:33,426 WARN  [loggerI18N] [com.arjuna.ats.internal.jta.resources.arjunacore.noresource] [com.arjuna.ats.internal.jta.resources.arjunacore.noresource] No XAResource to recover < 131075, 28, 26, 4945551024848484848495897101495558534848100481019957581015351551024848484848495897101495558534848100481019957581015352 >
      

      Configuration notes:
      MDB is deployed as HA-Singletion on both of the servers.
      Resource adapter is configured to connect to live server and failover to backup server on both of the servers. (related properties ${hornetq.live.server} and ${hornetq.backup.server})
      "jmsXA" connection factory is configured to know about both of the servers (related properties ${hornetq.live.server} and ${hornetq.backup.server}).

      I'm attaching also maven project with jms client and netbeans project with MDB used in reproducer below.

      Reproducer is attached - how to use it:

      1. Download and unzip reproducer-prepare-server.zip and reproducer-jms-client.zip in one directory
      2. Prepare EAP 5.1.2 server with HQ using "sh prepare.sh"
          - creates two profiles "node0" (hq configured as live server) and "node1" (hq configured as backup server)
          - copy mdb.jar to deploy-hasingleton directory
      3. Start first server - "sh start-server1.sh" (binds server to 127.0.0.1)
      4. Start second server - "sh start-server2.sh" (binds server to 127.0.0.2)
      5. Start producer to queue/cmmRequestQueue - "sh start-producer.sh" (sends 10000 messages to queue/cmmRequestQueue to first server)
      6. Start consumer from queue/cmmResponseQueue - "sh start-consumer.sh" (reads messages from queue/cmmResponseQueue from first server)
      7. Kill first server (use jps -m to get process id)
      8. Start first server again - "sh start-server1.sh"
      9. See error messages in server1 console log
      

      Attachments

        1. jms-client-project.zip
          7 kB
        2. logs.zip
          151 kB
        3. mdb-project.zip
          3.68 MB
        4. reproducer-jms-client.zip
          3.17 MB
        5. reproducer-prepare-server.zip
          8.95 MB

        Activity

          People

            csuconic@redhat.com Clebert Suconic
            mnovak1@redhat.com Miroslav Novak
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: