Hello list,
I am stuck trying to figure out an issue with using the Bitronix JTA
Transaction Manager with Derby (v10.3.2.1). Here's the details:
I'm running Derby as a network server on the standard port. I have a unit test
which uses the ClientXADatasource to connect to my Derby database, and this
succeeds.
The client code looks like this:
ClientXADataSource ds = new ClientXADataSource();
ds.setDatabaseName("ziptie"); ds.setPortNumber(1527);
ds.setServerName("localhost"); Connection connection =
ds.getConnection();
As I said, this client connects successfully, and the derby.log records this:
Connection number: 2.
2008-03-16 11:45:05.302 GMT Thread[DRDAConnThread_6,5,derby.daemons] (DATABASE
= ziptie), (DRDAID = {2}), Apache Derby Network Server connected to database
ziptie
Then, I try to start an application which uses the Bitronix TM to perform a
similar connection to Derby. However, this connection fails as recorded by the
derby.log as well:
Connection number: 3.
2008-03-16 11:45:10.817 GMT Thread[DRDAConnThread_6,5,derby.daemons] (DATABASE
= ziptie), (DRDAID = {3}), Database not available
The properties for Bitronix look like this:
resource.ds.className=org.apache.derby.jdbc.ClientXADataSource
resource.ds.uniqueName=ziptie
resource.ds.driverProperties.databaseName=ziptie
resource.ds.driverProperties.serverName=localhost
resource.ds.driverProperties.portNumber=1527
When the connection fails, I get a network client trace that looks like this:
(snip)
derby] BEGIN TRACE_DIAGNOSTICS
[EMAIL PROTECTED] java.sql.SQLException
[EMAIL PROTECTED]@ecf7fa] DERBY SQLCA from server
[EMAIL PROTECTED]@ecf7fa] SqlCode = -1
[EMAIL PROTECTED]@ecf7fa] SqlErrd = { 0, 0, 0, 0, 0, 0 }
[EMAIL PROTECTED]@ecf7fa] SqlErrmc = Database not available
[EMAIL PROTECTED]@ecf7fa] SqlErrp = CSS10030
[EMAIL PROTECTED]@ecf7fa] SqlState = 08006
[EMAIL PROTECTED]@ecf7fa] SqlWarn =
[EMAIL PROTECTED] SQL state = 08006
[EMAIL PROTECTED] Error code = -1
[EMAIL PROTECTED] Tokens = Database not available
[EMAIL PROTECTED] Stack trace follows
org.apache.derby.client.am.SqlException: DERBY SQL error: SQLCODE: -1,
SQLSTATE: 08006, SQLERRMC: Database not available
at org.apache.derby.client.am.Connection.completeSqlca(Unknown Source)
(snip)
I have enabled derby.drda.traceAll on the server and here is what I get for the
SUCCESSFUL connection:
(2008.3.16 11:58:53) Request fill DRDAConnThread_6 5
RECEIVE BUFFER: EXCSAT (ASCII) (EBCDIC)
0 1 2 3 4 5 6 7 8 9 A B C D E F 0123456789ABCDEF 0123456789ABCDEF
0000 0065D0410001005F 10410010115E8485 .e.A..._.A...^.. ..}..........;de
0010 9982A88495839481 89950009116DC485 .............m.. rbydncmain..._De
0020 9982A80020115AC4 D5C3F1F0F0F3F061 .... .Z........a rby...!DNC10030/
0030 F1F04BF34BF14BF4 4060404DF5F6F1F7 [EMAIL PROTECTED]@M.... 10.3.1.4 -
(5617
0040 F9F45D0014140414 0300072407000724 ..]........$...$ 94).............
0050 0F00071440000700 0E1147D8C4C5D9C2 [EMAIL PROTECTED] .... ......QDERB
0060 E861D1E5D40026D0 0100020020106D00 .a....&..... .m. Y/JVM..}......_.
0070 0611A20004001621 10A98997A3898540 .......!.......@ ..s......ziptie
0080 4040404040404040 404040 @@@@@@@@@@@
(2008.3.16 11:58:53) Reply flush DRDAConnThread_6 5
SEND BUFFER: EXCSATRD (ASCII) (EBCDIC)
0 1 2 3 4 5 6 7 8 9 A B C D E F 0123456789ABCDEF 0123456789ABCDEF
0000 009BD04200010095 14430035115ED585 ...B.....C.5.^.. ..}....n.....;Ne
0010 A3A6969992E28599 A58599C39695A399 ................ tworkServerContr
0020 969340E2A38199A3 40D385A5859340C5 [EMAIL PROTECTED]@[EMAIL PROTECTED]
ol Start Level E
0030 A58595A340C489A2 9781A38388859900 [EMAIL PROTECTED] vent Dispatcher.
0040 1414041403000724 070007240F000714 .......$...$.... ................
0050 40000700101147C1 978183888540C485 @[EMAIL PROTECTED] ......Apache De
0060 9982A80018116DD5 85A3A6969992E285 ......m......... rby..._NetworkSe
0070 99A58599C39695A3 9996930020115AC3 ............ .Z. rverControl...!C
0080 E2E2F1F0F0F3F061 F1F04BF34BF24BF1 .......a..K.K.K. SS10030/10.3.2.1
0090 4060404DF5F9F9F1 F1F05D0010D00200 @[EMAIL PROTECTED] - (599110)..}..
00A0 02000A14AC000611 A20004 ........... ........s..
(2008.3.16 11:58:53) Request fill DRDAConnThread_6 5
RECEIVE BUFFER: SECCHK (ASCII) (EBCDIC)
0 1 2 3 4 5 6 7 8 9 A B C D E F 0123456789ABCDEF 0123456789ABCDEF
0000 002DD04100010027 106E000611A20004 .-.A...'.n...... ..}......>...s..
0010 00162110A98997A3 8985404040404040 ..!.......@@@@@@ ....ziptie
0020 4040404040400007 11A0C1D7D700A8D0 @@@@@@.......... ....APP.y}
0030 01000200A2200100 162110A98997A389 ..... ...!...... ....s......zipti
0040 8540404040404040 4040404040000621 .@@@@@@@@@@@@..! e ...
0050 0F2407000C112EC4 D5C3F1F0F0F3F000 .$.............. .......DNC10030.
0060 3C210437C4D5C3F1 F0F0F3F0D1E5D440 <!.7...........@ ....DNC10030JVM
0070 4040404040404040 4040404040408485 @@@@@@@@@@@@@@.. de
0080 9982A88495839481 8995404040404040 ..........@@@@@@ rbydncmain
0090 4040C1D7D7404040 404000000D002FD8 @@...@@@@@..../. APP .....Q
00A0 E3C4E2D8D3C1E2C3 00172135D5C6F0F0 ..........!5.... TDSQLASC....NF00
00B0 F0F0F0F14BC6F2F6 F60118B774E40200 ....K.......t... 0001.F266....U..
00C0 1600350006119C04 B80006119D04B000 ..5............. ................
00D0 06119E04B8 ..... .....
(2008.3.16 11:58:53) Reply flush DRDAConnThread_6 5
SEND BUFFER: SECCHKRM (ASCII) (EBCDIC)
0 1 2 3 4 5 6 7 8 9 A B C D E F 0123456789ABCDEF 0123456789ABCDEF
0000 0015D0420001000F 1219000611490000 ...B.........I.. ..}.............
0010 000511A4000039D0 0200020033220100 ......9.....3".. ...u...}........
0020 0611490000000C11 2EC3E2E2F1F0F0F3 ..I............. .........CSS1003
0030 F0000D002FD8E3C4 E2D8D3C1E2C30010 ..../........... 0....QTDSQLASC..
0040 00350006119C04B8 0006119E04B8 .5............ ..............
(2008.3.16 11:58:53) Request fill DRDAConnThread_6 5
RECEIVE BUFFER: (ASCII) (EBCDIC)
0 1 2 3 4 5 6 7 8 9 A B C D E F 0123456789ABCDEF 0123456789ABCDEF
0000 00
------------------------
And here is what I get for the UNSUCCESSFUL connection (initiated by Bitronix's
connection pool):
(2008.3.16 11:58:57) Request fill DRDAConnThread_6 5
RECEIVE BUFFER: EXCSAT (ASCII) (EBCDIC)
0 1 2 3 4 5 6 7 8 9 A B C D E F 0123456789ABCDEF 0123456789ABCDEF
0000 0081D0410001007B 10410028115E8485 ...A...{.A.(.^.. .a}....#.....;de
0010 9982A8849583E2A3 8199A340D385A585 [EMAIL PROTECTED] rbydncStart Leve
0020 9340C5A58595A340 C489A29781A38388 [EMAIL PROTECTED]@........ l Event
Dispatch
0030 85990009116DC485 9982A80020115AC4 .....m...... .Z. er..._Derby...!D
0040 D5C3F1F0F0F3F061 F1F04BF34BF14BF4 .......a..K.K.K. NC10030/10.3.1.4
0050 4060404DF5F6F1F7 F9F45D0018140414 @[EMAIL PROTECTED] - (561794).....
0060 0300072407000724 0F0007144000071C [EMAIL PROTECTED] ............ ...
0070 010007000E1147D8 C4C5D9C2E861D1E5 ......G......a.. .......QDERBY/JV
0080 D40026D001000200 20106D000611A200 ..&..... .m..... M..}......_...s.
0090 0400162110A98997 A389854040404040 ...!.......@@@@@ .....ziptie
00A0 40404040404040 @@@@@@@
(2008.3.16 11:58:57) Reply flush DRDAConnThread_6 5
SEND BUFFER: EXCSATRD (ASCII) (EBCDIC)
0 1 2 3 4 5 6 7 8 9 A B C D E F 0123456789ABCDEF 0123456789ABCDEF
0000 009FD04200010099 14430035115ED585 ...B.....C.5.^.. ..}....r.....;Ne
0010 A3A6969992E28599 A58599C39695A399 ................ tworkServerContr
0020 969340E2A38199A3 40D385A5859340C5 [EMAIL PROTECTED]@[EMAIL PROTECTED]
ol Start Level E
0030 A58595A340C489A2 9781A38388859900 [EMAIL PROTECTED] vent Dispatcher.
0040 1814041403000724 070007240F000714 .......$...$.... ................
0050 4000071C01000700 101147C197818388 @.........G..... ..........Apach
0060 8540C4859982A800 18116DD585A3A696 [EMAIL PROTECTED] e Derby..._Netwo
0070 9992E28599A58599 C39695A399969300 ................ rkServerControl.
0080 20115AC3E2E2F1F0 F0F3F061F1F04BF3 .Z........a..K. ..!CSS10030/10.3
0090 4BF24BF14060404D F5F9F9F1F1F05D00 [EMAIL PROTECTED]@M......]. .2.1 -
(599110).
00A0 10D0020002000A14 AC000611A20004 ............... .}..........s..
(2008.3.16 11:58:57) Request fill DRDAConnThread_6 5
RECEIVE BUFFER: SECCHK (ASCII) (EBCDIC)
0 1 2 3 4 5 6 7 8 9 A B C D E F 0123456789ABCDEF 0123456789ABCDEF
0000 002DD04100010027 106E000611A20004 .-.A...'.n...... ..}......>...s..
0010 00162110A98997A3 8985404040404040 ..!.......@@@@@@ ....ziptie
0020 4040404040400007 11A0C1D7D700A8D0 @@@@@@.......... ....APP.y}
0030 01000200A2200100 162110A98997A389 ..... ...!...... ....s......zipti
0040 8540404040404040 4040404040000621 .@@@@@@@@@@@@..! e ...
0050 0F2407000C112EC4 D5C3F1F0F0F3F000 .$.............. .......DNC10030.
0060 3C210437C4D5C3F1 F0F0F3F0D1E5D440 <!.7...........@ ....DNC10030JVM
0070 4040404040404040 4040404040408485 @@@@@@@@@@@@@@.. de
0080 9982A8849583E2A3 8199A340D385A585 [EMAIL PROTECTED] rbydncStart Leve
0090 9340C1D7D7404040 404000000D002FD8 [EMAIL PROTECTED]@@@@@..../. l APP
.....Q
00A0 E3C4E2D8D3C1E2C3 00172135D5C6F0F0 ..........!5.... TDSQLASC....NF00
00B0 F0F0F0F14BC6F2F6 F70118B774F2DE00 ....K.......t... 0001.F267....2..
00C0 1600350006119C04 B80006119D04B000 ..5............. ................
00D0 06119E04B8 ..... .....
(2008.3.16 11:58:57) Reply flush DRDAConnThread_6 5
SEND BUFFER: SECCHKRM (ASCII) (EBCDIC)
0 1 2 3 4 5 6 7 8 9 A B C D E F 0123456789ABCDEF 0123456789ABCDEF
0000 0015D0420001000F 1219000611490000 ...B.........I.. ..}.............
0010 000511A4000026D0 5200020020221A00 ......&.R... ".. ...u...}........
0020 0611490008001621 107A697074696520 ..I....!.ziptie .........:......
0030 2020202020202020 2020200023D05300 .#.S. .............}..
0040 02000D002FD8E3C4 E2D8D3C1E2C30010 ..../........... .....QTDSQLASC..
0050 00350006119C04B8 0006119E04B8005D .5.............] ...............)
0060 D003000200572408 00FFFFFFFF303830 .....W$......080 }...............
0070 3036435353313030 3330000000000000 06CSS10030...... ................
0080 0000000000000000 0000000000000000 ................ ................
0090 0000002020202020 2020202020200000 ... .. ................
00A0 0016446174616261 7365206E6F742061 ..Database not a .../././...>?../
00B0 7661696C61626C65 0000FF vailable... ./.%/.%....
(2008.3.16 11:58:57) Request fill DRDAConnThread_6 5
RECEIVE BUFFER: (ASCII) (EBCDIC)
0 1 2 3 4 5 6 7 8 9 A B C D E F 0123456789ABCDEF 0123456789ABCDEF
0000 00
I can't really read these DRDA traces that well, so I can't figure out what the
difference is between the successful connection and the failure. Any help from
one of the developers would be greatly appreciated.
-Brett