Hi, just migrating a 7.3 environment to 7.4 and getting the following error in t

Hi, just migrating a 7.3 environment to 7.4 and getting the following error in the jboss log ...

20:24:51,958 WARN [com.arjuna.ats.jta] (Periodic Recovery) ARJUNA016027: Local XARecoveryModule.xaRecovery got XA exception XAException.XAER_RMERR: javax.transaction.xa.XAException: com.microsoft.sqlserver.jdbc.SQLServerException: Failed to create the XA control connection. Error: "Could not find stored procedure 'master..xp_sqljdbc_xa_init_ex'."
          at com.microsoft.sqlserver.jdbc.SQLServerXAResource.DTC_XA_Interface(SQLServerXAResource.java:642)
          at com.microsoft.sqlserver.jdbc.SQLServerXAResource.recover(SQLServerXAResource.java:723)
          at org.jboss.jca.adapters.jdbc.xa.XAManagedConnection.recover(XAManagedConnection.java:358)
          at org.jboss.jca.core.tx.jbossts.XAResourceWrapperImpl.recover(XAResourceWrapperImpl.java:165)
          at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.xaRecoveryFirstPass(XARecoveryModule.java:534) [jbos...

OriginalPostID-95457

OriginalPostID-95457

  Discussion posts and replies are publicly visible

  • ...sjts-jacorb-4.17.4.Final-redhat-2.jar:4.17.4.Final-redhat-2]
              at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.periodicWorkFirstPass(XARecoveryModule.java:168) [jbossjts-jacorb-4.17.4.Final-redhat-2.jar:4.17.4.Final-redhat-2]
              at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWorkInternal(PeriodicRecovery.java:743) [jbossjts-jacorb-4.17.4.Final-redhat-2.jar:4.17.4.Final-redhat-2]
              at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.run(PeriodicRecovery.java:371) [jbossjts-jacorb-4.17.4.Final-redhat-2.jar:4.17.4.Final-redhat-2]

    7.3 worked with no issues, and following the migration procedure the Appian engines all start with now errors. Anyone else seen this before?

    Thanks, David.

  • I should add that the appian service and jboss service start with no problem, I get no log in page when firing up the designer though.
  • You can safely disregard this message. This WARNING means you configured your data sources as XA-Datasources but your SQL Server is not configured to handle distributed transaction and XA support for the Microsoft JDBC Driver for SQL Server. This topic falls more into the SQL Server Support scope, but in general here's what you have to do:

    1. Download the latest version of the MS SQL Server JDBC Driver www.microsoft.com/.../details.aspx
    2. Unzip the content in a temporary directory
    3. Drop the sqljdbc4.jar as indicated in the Appian documentation
    4. Inside the unzipped content from step #2 there's a directory called "xa" under <Microsoft JDBC Driver 4.0 for SQL Server>\\sqljdbc_4.0\\enu\\ navigate to that directory
    5. In the directory you will find a file called "xa_install.sql" with the instructions on how to enable this feature in your SQL server which basically consist on:
    ----> 5.1 Identifying if you are running SQL Server 2008 64 or 32bits
    ----> 5.2 Depending on the answer from step 5.1 copy the sqljdbc_xa.dll from the unzipped folder <Microsoft JDBC Driver 4.0 for SQL Server>\\sqljdbc_4.0\\enu\\xa\\x64 for 64 bits or <Microsoft JDBC Driver 4.0 for SQL Server>\\sqljdbc_4.0\\enu\\xa\\x86 for 32bits
    ----> 5.3 Paste the sqljdbc_xa.dll you copied from step 5.2 into <SQL_SERVER_2008_HOME>\\Tools\\Binn and SQL_SERVER_2008_HOME>\\localDB\\Binn
    ----> 5.4 Execute the xa_install.sql script mentioned on step #5


    if after fixing this you get this other warning:

    18:10:17,905 WARN [loggerI18N] [com.arjuna.ats.internal.jta.recovery.xarecovery1] Local XARecoveryModule.xaRecovery got XA exception javax.transaction.xa.XAException: The function RECfailed. The status is: -3. Error: "*** SQLJDBC_XA DTC_ERROR Context: xa_recover, state=1, StatusCode:-3 (0xFFFFFFFD) ***", XAException.XAER_RMERR

    the solution is to do the following in the SQL Server 2008 server

    1) Open:

    Control Panel | Administrative Tools | Component Services

    2) Open the Distributed Transaction Services item for the necessary computer(s)

    3) Right click the "Local DTC" option

    4) Select the security tab

    5) Check "Enable XA Transactions", forcing the MS DTC service to restart.

    6) Restart SQL Server to make sure it picks up the MS DTC changes.

    7) Restart JBoss
  • OK thanks Eduardo, so this error is not the reason why I cant see the log in screen?
  • Definitely no. In order to determine what's wrong:

    0. Solve this issue to reduce the noise in the server.log
    1. Stop JBoss
    2. Delete <JBOSS_HOME>\\standalone\\log\\server.log
    3. Start JBoss
    4. Wait for the CPU usage to go down
    5. Review from top to bottom until you find the first error.
    6. If you do not see any errors and only see the deployment of appian-ds.xml

    INFO [org.jboss.as.server] (ServerService Thread Pool -- 27) JBAS018559: Deployed "appian-ds.xml" (runtime-name : "appian-ds.xml")

    but you don't see the ear/runtime_ear directory being deployed

    INFO [org.jboss.as.server] (ServerService Thread Pool -- 27) JBAS018559: Deployed "suite.ear" (runtime-name : "suite.ear")

    then you may need to follow these steps:

    1. Stop JBoss
    2. Delete <JBOSS_HOME>\\standalone\\log\\server.log
    3. Place the following file (to instruct JBoss to deploy your suite.ear) under runtime_ear or ear (if not using the Appian Configuration Manager) at the same level as suite.ear

    forum.appian.com/.../92745

    4. Start JBoss
  • Great news! This file basically tells JBoss to deploy suite.ear and is a documented step under "Configure Startup Properties" at forum.appian.com/.../Configuring_JBoss
  • XA Transaction is already enabled, DTC & SQL Server 2012 restarted. Pretty much covered all things discussed here, but my issues looks a little different though.

    12:19:32,060 WARN [com.arjuna.ats.jta] (Periodic Recovery) ARJUNA016027: Local XARecoveryModule.xaRecovery got XA exception XAException.XAER_RMERR: javax.transaction.xa.XAException: The function RECOVER: failed. The status is: -3. Error: "*** SQLJDBC_XA DTC_ERROR Context: xa_recover, state=1, StatusCode:-3 (0xFFFFFFFD) ***"
              at com.microsoft.sqlserver.jdbc.SQLServerXAResource.DTC_XA_Interface(SQLServerXAResource.java:550)
              at com.microsoft.sqlserver.jdbc.SQLServerXAResource.recover(SQLServerXAResource.java:728)
              at org.jboss.jca.adapters.jdbc.xa.XAManagedConnection.recover(XAManagedConnection.java:362)
              at org.jboss.jca.core.tx.jbossts.XAResourceWrapperImpl.recover(XAResourceWrapperImpl.java:185)
              at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.xaRecoveryFirstPass(XARecoveryModule.java:541) [jbossjts-jacorb-4.17.29.Final-redhat-1.jar:4.17.29.Final-redhat-1]
              at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.periodicWorkFirstPass(XARecoveryModule.java:181) [jbossjts-jacorb-4.17.29.Final-redhat-1.jar:4.17.29.Final-redhat-1]
              at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWorkInternal(PeriodicRecovery.java:747) [jbossjts-jacorb-4.17.29.Final-redhat-1.jar:4.17.29.Final-redhat-1]
              at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.run(PeriodicRecovery.java:375) [jbossjts-jacorb-4.17.29.Final-redhat-1.jar:4.17.29.Final-redhat-1]

    server.log

  • If you have completed all the steps I listed here then switch the logger from WARN to ERROR in standalone.xml (search for ARJUNA and change from WARN to ERROR, then restart JBoss)
  • Changed from WARN to ERROR and ARJUNA016027 disappeared but another error is showing up again. I will post after restarting all services and check server log.