[
https://issues.apache.org/jira/browse/DERBY-4053?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12729427#action_12729427
]
Mamta A. Satoor edited comment on DERBY-4053 at 7/9/09 2:56 PM:
----------------------------------------------------------------
I have a standalone repro of the problem which demonstrates the problem with
local XA transaction. I am copying the comments from the program to descibe
what it is doing. Next, I will add a test like this in our regression suite and
put more comments in the Derby code changes.
/**
* This test does following
* 1)Start the network server
* 2)Start a local xa transaction
* 3)Do not commit the local XA transaction
* 4)Shutdown the network server
* 5)Start the server again
*
* Before the fix for DERBY-4053 went in, step 4) would not shutdown the
* server properly because of the pending local XA transaction. During the
* server shutdown, we try to close all the open connections and close on
* the XA connection results into an exception because there is still a
* pending transaction. That exception is not handled by the server and
* because of that, all the code necessary to shutdown the server is not
* executed. The next time around, step 5), when we try to bring up the
* server again, it ends up hanging
* 2009-07-09 21:21:28.828 GMT : Invalid reply from network server:
Insufficient data.
* 2009-07-09 21:21:28.843 GMT : Could not listen on port 1527 on host
127.0.0.1: java.net.BindException: Address already in use: JVM_Bind
*
* The patch attached to the jira makes sure that before calling close on
* local XA transaction, we first rollback any transaction active on the
* connection. We should also work on server shutdown code to handle the
* exceptions better so that it does not stop half way.
*
*/
was (Author: mamtas):
I have a standalone repro of the problem which demonstrates the problem
with local XA transaction. I am copying the comments from the program to
descibe what it is doing. Next, I will add a test like this in our regression
suite and put more comments in the Derby code changes.
/**
* This test does following
* 1)Start the network server
* 2)Start a local xa transaction
* 3)Do not commit the local XA transaction
* 4)Shutdown the network server
* 5)Start the server again
*
* Before the fix for DERBY-4180 went in, step 4) would not shutdown the
* server properly because of the pending local XA transaction. During the
* server shutdown, we try to close all the open connections and close on
* the XA connection results into an exception because there is still a
* pending transaction. That exception is not handled by the server and
* because of that, all the code necessary to shutdown the server is not
* executed. The next time around, step 5), when we try to bring up the
* server again, it ends up hanging
* 2009-07-09 21:21:28.828 GMT : Invalid reply from network server:
Insufficient data.
* 2009-07-09 21:21:28.843 GMT : Could not listen on port 1527 on host
127.0.0.1: java.net.BindException: Address already in use: JVM_Bind
*
* The patch attached to the jira makes sure that before calling close on
* local XA transaction, we first rollback any transaction active on the
* connection. We should also work on server shutdown code to handle the
* exceptions better so that it does not stop half way.
*
*/
> suites.All hang with message java.net.BindException: Address already in use:
> NET_Bind in derby.log
> ---------------------------------------------------------------------------------------------------
>
> Key: DERBY-4053
> URL: https://issues.apache.org/jira/browse/DERBY-4053
> Project: Derby
> Issue Type: Bug
> Components: Network Server, Test
> Affects Versions: 10.5.1.1
> Reporter: Kathey Marsden
> Attachments: derby-4053_repro_dont_commit_diff.txt, derby.log,
> DERBY4053_patch1_diff_July092009.txt, javacore-20090420-1735.txt,
> javacore.20090211.123031.4000.0001.txt, suites.All.out
>
>
> Running suites.All with IBM 1.5 on 10.5.0.0 alpha - (743198) I got a hang
> in the test run. The last test to run successfully was
> xtestNestedSavepoints, but I am not sure exactly what test caused the hang.
> I took a thread dump which I will attach, which showed network server up and
> running but no ClientThread and a ping attempt blocked.
> This hang is very similar to the hang that was seen after the fix attempts
> for DERBY-1465 but that change was backed out so it is not related to that
> change. It could be that the change for DERBY-1465 just made this highly
> intermittent problem more likely.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.