[JBoss JIRA] Created: (JBTM-679) Enable use of maven to import external lib jars into XTS
by Andrew Dinn (JIRA)
Enable use of maven to import external lib jars into XTS
--------------------------------------------------------
Key: JBTM-679
URL: https://jira.jboss.org/jira/browse/JBTM-679
Project: JBoss Transaction Manager
Issue Type: Feature Request
Security Level: Public (Everyone can see)
Components: XTS
Affects Versions: 4.9.0
Reporter: Andrew Dinn
Assignee: Andrew Dinn
Fix For: 4.10.0
The XTS build process employs a variety of external jars:
JBossTS jars
JBossWS jars (including Java EE API jars, JBossWS native jars and CXF jars)
JBossAS jars (including Java EE API jars)
other java jars (junit)
The build process should normally employ the JBossTS jars produced by building JBossTS in the source tree containing XTS as a subtree. However, in the case of the other sets of jars it should be possible to build XTS with a guarantee that the build employs known versions of each of the required jars.
This should be achieved using maven to resolve dependencies and download the required jars. In the case of the AS and WS jars the versions should be derived from the component-matrix pom associated with a specific version of the AS to which the XTS and TS tree is matched.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 10 months
[JBoss JIRA] Created: (JBTM-377) XAResourceRecord save/restore state insufficiently paranoid
by Jonathan Halliday (JIRA)
XAResourceRecord save/restore state insufficiently paranoid
-----------------------------------------------------------
Key: JBTM-377
URL: http://jira.jboss.com/jira/browse/JBTM-377
Project: JBoss Transaction Manager
Issue Type: Bug
Security Level: Public (Everyone can see)
Affects Versions: 4.3.0.GA
Reporter: Jonathan Halliday
Fix For: 4.4.CR2
The XAResourceRecord save state method writes meta-data into the objectstore before attempting to Serialize and write the actual bytes for an XAResource that it believes, on the basis of it implementing the market interface, is Serializable. If the serialization fails at runtime, the objectstore record is left in an invalid state and can cause the recovery pass to blow up in horrible ways.
We should obtain the byte[] representing the serialized resource before writing anything to the record so that this does not occur. If serialization fails, the record will therefore be useless but at least not otherwise broken.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 10 months
[JBoss JIRA] Created: (JBTM-688) TransactionReaper synchronization is a performance bottleneck
by Oleg Nitz (JIRA)
TransactionReaper synchronization is a performance bottleneck
-------------------------------------------------------------
Key: JBTM-688
URL: https://jira.jboss.org/jira/browse/JBTM-688
Project: JBoss Transaction Manager
Issue Type: Patch
Security Level: Public (Everyone can see)
Components: JTS
Affects Versions: 4.6.1.CP04
Environment: Linux 32-bit, Sun JDK 6
Reporter: Oleg Nitz
During stress testing I found that threads often massively block on synchronization on TransactionReaper.class, due to synchronized static methods create() and transactionReaper() in the TransactionReaper class.
I propose to use "double-checked locking idiom" (see http://en.wikipedia.org/wiki/Double-checked_locking ) to avoid unnecesary synchronizations.
My patch follows.
--- TransactionReaper.java.orig 2010-01-04 16:27:21.000000000 +0200
+++ TransactionReaper.java 2010-01-11 17:19:55.000000000 +0200
@@ -1059,7 +1059,7 @@
* Could get priority from environment.
*/
- public static synchronized TransactionReaper create(long checkPeriod)
+ public static TransactionReaper create(long checkPeriod)
{
if (tsLogger.arjLogger.debugAllowed())
{
@@ -1070,6 +1070,10 @@
if (TransactionReaper._theReaper == null)
{
+ synchronized (TransactionReaper.class) {
+ if (TransactionReaper._theReaper == null)
+ {
+
// default to dynamic mode
TransactionReaper._dynamic = true;
@@ -1215,6 +1219,8 @@
_reaperWorkerThread.start();
}
+ }
+ }
return TransactionReaper._theReaper;
}
@@ -1233,7 +1239,7 @@
* If parameter is true then do a create.
*/
- public static synchronized TransactionReaper transactionReaper(
+ public static TransactionReaper transactionReaper(
boolean createReaper)
{
if (createReaper)
@@ -1315,7 +1321,7 @@
*/
private int _zombieMax = 0;
- private static TransactionReaper _theReaper = null;
+ private static volatile TransactionReaper _theReaper = null;
private static ReaperThread _reaperThread = null;
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 10 months
[JBoss JIRA] Created: (JBTM-663) MissingResourceException when synchronizing a JTA transaction
by Olivier BILLIARD (JIRA)
MissingResourceException when synchronizing a JTA transaction
-------------------------------------------------------------
Key: JBTM-663
URL: https://jira.jboss.org/jira/browse/JBTM-663
Project: JBoss Transaction Manager
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: JTA
Affects Versions: 4.8.0, 4.5.0
Environment: AS 5.0.1 GA
Reporter: Olivier BILLIARD
In the class "com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionSynchronizationRegistryImple"
When we try to synchronize to an aborted JTA transaction a RollbackException is thrown. This exception is catched and we throw a RuntimeException using the key "com.arjuna.ats.internal.jta.transaction.arjunacore.syncrollbackmexception".
This key doesn't exist in the jta_msg_en_US.properties file. It seems to me that the end of the key should be syncrollbackexception because this key exist in the file.
I attach the corrected file.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 10 months
[JBoss JIRA] Created: (JBTM-666) Add support to AppServerJDBCXARecovery for passwords encrypted for use with org.jboss.resource.security.JaasSecurityDomainIdentityLoginModule
by Justin Bertram (JIRA)
Add support to AppServerJDBCXARecovery for passwords encrypted for use with org.jboss.resource.security.JaasSecurityDomainIdentityLoginModule
---------------------------------------------------------------------------------------------------------------------------------------------
Key: JBTM-666
URL: https://jira.jboss.org/jira/browse/JBTM-666
Project: JBoss Transaction Manager
Issue Type: Feature Request
Security Level: Public (Everyone can see)
Reporter: Justin Bertram
Attempting to recovery failed XA transactions from a datasource using:
<security-domain>DefaultDSRealm</security-domain>
Where the security realm's login module implementation is org.jboss.resource.security.JaasSecurityDomainIdentityLoginModule. For example:
<application-policy name = "DefaultDSRealm">
<authentication>
<login-module code = "org.jboss.resource.security.JaasSecurityDomainIdentityLoginModule"
flag = "required">
<module-option name = "username">user</module-option>
<module-option name = "password">oLxZUT0uKnAfS.zbvaEZd</module-option>
<module-option name = "managedConnectionFactoryName">jboss.jca:service=XATxCM,name=XAOracleDS</module-option>
<module-option name = "jaasSecurityDomain">jboss.security:service=JaasSecurityDomain,domain=ServerMasterPassword</module-option>
</login-module>
</authentication>
</application-policy>
(See more discussion of this configuration at http://www.jboss.org/community/wiki/encryptingdatasourcepasswords)
This exception is thrown:
2009-12-03 09:53:20,388 ERROR [com.arjuna.ats.internal.jbossatx.jta.AppServerJDBCXARecovery] (Thread-6:) AppServerJDBCXARecovery.createConnection got exception java.sql.SQLException: Invalid argument(s) in call
java.sql.SQLException: Invalid argument(s) in call
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:208)
at oracle.jdbc.xa.client.OracleXADataSource.getXAConnection(OracleXADataSource.java:99)
at com.arjuna.ats.internal.jbossatx.jta.AppServerJDBCXARecovery.createConnection(AppServerJDBCXARecovery.java:258)
at com.arjuna.ats.internal.jbossatx.jta.AppServerJDBCXARecovery.getXAResource(AppServerJDBCXARecovery.java:115)
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.resourceInitiatedRecovery(XARecoveryModule.java:683)
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.periodicWorkSecondPass(XARecoveryModule.java:179)
at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWork(PeriodicRecovery.java:237)
at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.run(PeriodicRecovery.java:163)
This exception is thrown because com.arjuna.ats.internal.jbossatx.jta.AppServerJDBCXARecovery is attempting to create a connection without a username and password since it can't decrypt the password from the security domain.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 11 months