atom feed6 messages in net.java.dev.glassfish.usersRe: Resource Adapter call to XATemina...
FromSent OnAttachments
glas...@javadesktop.orgDec 11, 2007 8:26 am 
Sivakumar ThyagarajanDec 12, 2007 2:10 am 
glas...@javadesktop.orgDec 12, 2007 5:19 am 
sankara rao bhogiDec 12, 2007 10:50 pm 
glas...@javadesktop.orgDec 13, 2007 8:33 am 
Sivakumar ThyagarajanDec 14, 2007 3:20 am 
Subject:Re: Resource Adapter call to XATeminator.recover hangs App Server
From:Sivakumar Thyagarajan (Siva@Sun.COM)
Date:Dec 12, 2007 2:10:39 am
List:net.java.dev.glassfish.users

This seems like a bug in the App Server. Any help would be appreciated.

We would like to understand this scenario better. Would you be able to the stack trace so that we could try to find out why XATerminator.recover() hangs?

With the past post, I was asked to get a thread dump, but I don't know how to do that. If that is required, can someone give me instructions?

Steps to get a thread dump are available at http://blogs.sun.com/foo/entry/how_to_get_thread_dumps http://blogs.sun.com/msreddy/entry/how_to_get_thread_dump

Thanks --Siva.

glas@javadesktop.org wrote:

I previously entered this issue against Sun Java System Application Server
Enterprise Edition 8.2. See http://forum.java.sun.com/thread.jspa?forumID=734&threadID=5202307

I am the developer for a JCA 1.5 resource adapter named DTPRA. Note that DTPRA
works with WebSphere Application Server, WebLogic Application Server and JBoss
Application Server.

I needed to test DTPRA with the Sun App Server, so I downloaded Sun Java System
Application Server Enterprise Edition 9.1 (build b58g-fcs) to test DTPRA.

I am now testing transaction recovery, so I set automatic recovery to true. That
is, I have the following in my domain.xml:

<transaction-service [b]automatic-recovery="true"[/b]
heuristic-decision="rollback" keypoint-interval="65536"
retry-timeout-in-seconds="600" timeout-in-seconds="0"
tx-log-dir="${com.sun.aas.instanceRoot}/logs"/>

When I start the App Server with this setting, the App Server hangs and it never
starts.

Looking at trace output from DTPRA, it is clear that the following has happened: 1) The App Server called the ResourceAdapter.start method for DTPRA. 2) As part of DTPRA startup, DTPRA calls the App Server's XATerminator.recover
method to see if there are inbound transactions to recover.

The call to XATerminator.recover never returns. Apparently there is some sort of
deadlock in the App Server when a resource adapter calls XATerminator.recover
from the ResourceAdapter.start method.

[b]This only occurs when automatic recovery is enabled.[/b]

This seems like a bug in the App Server. Any help would be appreciated.

With the past post, I was asked to get a thread dump, but I don't know how to do
that. If that is required, can someone give me instructions?

Thanks. [Message sent by forum member 'burdeasa' (burdeasa)]

http://forums.java.net/jive/thread.jspa?messageID=249528