Its clear that is is allowed by the JTA spec:
<jta-1_0_1>
3.4.3 Thread of Control

The X/OpenXAinterface specifies that the transaction association related xa calls must
be invoked from the same thread context. This thread-of-control requirement is not
Java Transaction API applicable to the object-oriented component-based application
run-time environment, in which application threads are dispatched dynamically at
method invocation time.
Different Java threads may be using the same connection resource to access the
resource manager if the connection spans multiple method invocation. Depending on
the implementation of the application server, different Java threads may be involved
with the same XAResource object. The resource context and the transaction context
may be operated independent of thread context. This means, for example, that it's
possible for different threads to be invoking the XAResource.start and
XAResource.end methods.

If the application server allows multiple threads to use a single XAResource object and
the associated connection to the resource manager, it is the responsibility of the
application server to ensure that there is only one transaction context associated with
the resource at any point of time.

Thus the XAResource interface specified in this document requires that the resource
managers be able to support the two-phase commit protocol from any thread context.
</jta-1_0_1>

xxxxxxxxxxxxxxxxxxxxxxxx
Scott Stark
Chief Technology Officer
JBoss Group, LLC
xxxxxxxxxxxxxxxxxxxxxxxx

----- Original Message ----- 
From: "Igor Fedorenko" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Saturday, September 28, 2002 6:46 AM
Subject: [JBoss-dev] Is XAResource thread-safe?


> Hi,
> 
> As the subject says -- is XAResource thread-safe or we need to serialize 
> access to it when accessing the same XAResource instance from multiple 
> threads?
> 
> I could not find explicit answer to that question in the docs, but did 
> find that oracle xa implementation is *not* thread safe and SF #614116 
> is cause by simultaneous calls to xares.end or xares.start and 
> xares.rollback from two different threads.
> 
> -- 
> Igor Fedorenko
> Think smart. Think automated. Think Dynamics.
> www.thinkdynamics.com



-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to