[JBoss JIRA] Created: (JBTM-169) Support multiple one-phase resources
by Mark Little (JIRA)
Support multiple one-phase resources
------------------------------------
Key: JBTM-169
URL: http://jira.jboss.com/jira/browse/JBTM-169
Project: JBoss Transaction Manager
Issue Type: Feature Request
Security Level: Public (Everyone can see)
Components: Documentation, JTA Implementation
Affects Versions: 4.2.2
Reporter: Mark Little
Assigned To: Mark Little
Fix For: 4.4
JBossTM allowed multiple one-phase only resources to be enlisted with the same JTA transaction. JBossTS supports the LRCO, which only allows a single one-phase resource to be enlisted. This difference may cause problems for some people migrating from JBossTM to JBossTS. However, it is an unsafe mode of operation and we should discourage people from using transactions in this way: it can lead to inconsistent/corrupted data in the presence of failures.
We will add a switch to enable this capability. It will be disabled by default. People must actively enable this capability and in the process of doing so will be refered to the documentation which will outline the problems they may face by doing so. Furthermore, when a JTA transaction sees more than one 1-phase resource, it will issue a warning.
--
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
19 years, 5 months
[JBoss JIRA] Created: (EJBTHREE-710) Cleanup E-EJB3 package/code/logging
by Christian Bauer (JIRA)
Cleanup E-EJB3 package/code/logging
-----------------------------------
Key: EJBTHREE-710
URL: http://jira.jboss.com/jira/browse/EJBTHREE-710
Project: EJB 3.0
Issue Type: Bug
Affects Versions: EJB 3.0 RC9 - FD
Reporter: Christian Bauer
Priority: Blocker
This is E-EJB3 RC9. The following issues are not minor, they would make me feel uneasy if I was a user:
1. The bundled embedded-jboss-beans.xml uses xmlns="urn:jboss:bean-deployer" and everybody gets a nice WARN on startup that xmlns="urn:jboss:bean-deployer:2.0" should be used. Change that in the distributed configuration file.
2. [java] 13:40:10,676 WARN Ejb3Configuration:104 - Persistence provider caller does not implements the EJB3 spec correctly. PersistenceUnitInfo.getNewTempClassLoader() is null. It's OK to warn users that something is not right, but if something is not right in our distribution there should be a note in the README or something that tells me as a user that this is OK for the moment. Like a link to a JIRA issue.
3. [java] 13:44:59,381 WARN JBossTimerServiceFactory:112 - TIMER SERVICE IS NOT INSTALLED -- Uh, yes, because I don't want it. Find a way for users to disable this warning. I don't see any way to disable the timer service in embedded-jboss-beans.xml and I don't want the .rar and .jar in my libs.
4. In RC9 there is code that prints debugging stuff on STDOUT:
[java] lookup
[java] UserTransaction: org.jboss.ejb3.embedded.UserTransactionImpl
[java] MessageHandlerBean: org.jnp.interfaces.NamingContext
This is triggered by EJB3StandaloneBootstrap.scanClasspath("helloworld-ejb3/build"), please remove from code...
--
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
19 years, 5 months
[JBoss JIRA] Created: (JBCACHE-814) Concurrency issue with passivation
by Brian Stansberry (JIRA)
Concurrency issue with passivation
----------------------------------
Key: JBCACHE-814
URL: http://jira.jboss.com/jira/browse/JBCACHE-814
Project: JBoss Cache
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Cache loaders
Affects Versions: 1.4.0.SP1
Reporter: Brian Stansberry
Assigned To: Manik Surtani
If the eviction thread attempts to passivate a node roughly concurrently with a get() call, it is quite easy for the get() to return null even though the passivated node has data.
Test org.jboss.cache.passivation.ConcurrentPassivationTest shows the problem.
I believe the problem results from having the PessimisticLockInterceptor in the chain after the Activation and Passivation interceptors. Potential cause is a race to the PessimisticLockInterceptor between the eviction thread and an application thread doing a get().
1) Eviction thread wins race, acquires a WL on a node.
2) Application thread is trailing in the race but proceeds through the Activation/Passivation interceptors w/o loading data, because the desired node is still in the cache.
3) Application thread blocks waiting for eviction thread's WL to be released.
4) Eviction thread removes the node from the tree structure.
5) Eviction thread releases the WL. Application thread acquires a RL (it already had a ref to the node).
6) Application thread gets to the cache _get method, which can't find the node in the tree structure, and thus returns null.
Another variation on the same theme:
1) Eviction thread wins race, acquires a WL on a node.
2) Application thread is trailing in the race but proceeds through the Activation/Passivation interceptors w/o loading data, because the desired node is still in the cache.
3) Eviction thread removes the node from the tree structure.
4) Application thread gets to PessimisticLockInterceptor, which can't find the node. No need to acquire lock on non-existent node, so thread proceeds.
5) Application thread gets to the cache _get method, which can't find the node in the tree structure, and thus returns null.
--
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
19 years, 5 months