|
From: Ronald v. K. <rtv...@xs...> - 2005-07-05 18:20:29
|
Sounds interesting. But with regard to this immediately a second question= comes to mind. There is also a transactionmechanism in place which does a kind of xa over a datab= ase and a filesystem. This makes it almost impossible to use the default JTA for this, which wo= uld make the hermes core even smaller. For our company, storing the messages in a DB as a blob is = not a problem since we require clustering and failover any way. It is in fact even a requirement= unless there would be a JTA compatible filesystem persistency layer (JCA?)). Replacing the DBConnectionPool with a standard based solution can be done= by me, since I've done it before and probably have the code somewhere. DBCP does not have to be = provided then, since all servlet engines and j2ee servers contain one. But regarding the file pers= istency I'd like to get a response from more users since that is another issue. Comments? Patrick Yee probeerde me het volgende duidelijk te maken: > There is no strict reason for using our own implementation. So it would > be good to have some contribution to port Hermes to make use of other > database pool, like DBCP. > Regards, -Patrick > > Regards, -Patrick > > > Mattias J wrote: > >> Yes, why not include for example Jakarta Commons DBCP? >> >> At 2005-06-27 09:29, you wrote: >> >>> I guess the problem is that you have implemented your own >>> databasepool, without sophisticated recovery mechanism. >>> Our own application use javax.sql.DataSource, to get a connection. I >>> guess there is a recovery mechanism in that solution, as our own >>> application runs fine when the connection gets back. >>> Is there anyway to use javax.sql.DataSource instead of your >>> implementation of the connection pool? I guess my question is more to >>> why you are using your own implemtation, are you using some extra >>> stuff, I can't get from javax.sql.DataSource? >>> >>> Regards Kenneth >>> >>>> From: Patrick Yee <kc...@ce...> >>>> To: ebx...@li... >>>> CC: tr...@ho... >>>> Subject: Re: [ebxmlms-general] Problems after lost connection to >>>> database >>>> Date: Sun, 26 Jun 2005 19:19:35 +0800 >>>> >>>> We have not implemented a sophisticated recovery mechanism in the >>>> database connection pool. The only mechanism we have done is, >>>> whenever a connection is proved to be bad, we will not put it back >>>> to the connection pool. Actually there was a suggestion some time >>>> ago that we can do a "select *" on some tables before we use the >>>> pooled database connection. We think that will create certain >>>> performance issue, and so we shelved that idea. Of course, if you >>>> want it, you can just patch the database connection pool classes and >>>> implement any advanced recovery mechanism as you like. :-) >>>> Regards, -Patrick >>>> >>>> >>>> Kenneth Pedersen wrote: >>>> >>>>> Hi >>>>> >>>>> If I loose the connection to my database for a short time >>>>> (1-2minutes), MSH do not operate properly afterwards. >>>>> >>>>> When the connection is lost this occurs in the MSH_client.log: >>>>> >>>>> 2005-06-21 09:13:34,384 DEBUG [Thread-8]: =3D> >>>>> DbConnectionPool.getConnection >>>>> 2005-06-21 09:13:34,384 DEBUG [Thread-8]: <=3D >>>>> DbConnectionPool.getConnection >>>>> 2005-06-21 09:13:34,384 ERROR [Thread-8]: [10002] Unknown error >>>>> Exception: java.sql.SQLException >>>>> Message: I/O Error: Connection reset by peer: socket write error >>>>> 2005-06-21 09:13:34,384 DEBUG [Thread-8]: =3D> Transaction.rollback >>>>> (txID: #2321) >>>>> 2005-06-21 09:13:34,384 ERROR [Thread-8]: [10315] Cannot rollback >>>>> DB changes >>>>> Exception: java.sql.SQLException >>>>> Message: Invalid state, the Connection object is closed. >>>>> 2005-06-21 09:13:34,384 DEBUG [Thread-8]: =3D> >>>>> DbConnectionPool.freeConnection >>>>> 2005-06-21 09:13:34,384 DEBUG [Thread-8]: <=3D >>>>> DbConnectionPool.freeConnection >>>>> 2005-06-21 09:13:34,384 DEBUG [Thread-8]: <=3D Transaction.rollback >>>>> 2005-06-21 09:13:34,384 DEBUG [Thread-8]: =3D> >>>>> MessageServiceHandler.getNextUndeliveredMessage >>>>> 2005-06-21 09:13:34,384 DEBUG [Thread-8]: =3D> >>>>> MessageServer.getUndeliveredMessages >>>>> 2005-06-21 09:13:34,384 DEBUG [Thread-8]: =3D> >>>>> DbConnectionPool.getConnection >>>>> 2005-06-21 09:13:34,384 DEBUG [Thread-8]: =3D> >>>>> DbConnectionPool.createConnection >>>>> 2005-06-21 09:13:35,352 ERROR [Thread-8]: [10306] Cannot create DB >>>>> connection Exception: java.sql.SQLException Message: Network error >>>>> IOException: Connection refused: connect >>>>> 2005-06-21 09:13:35,352 DEBUG [Thread-8]: =3D> Transaction.rollback >>>>> (txID: #2323) >>>>> 2005-06-21 09:13:35,352 DEBUG [Thread-8]: <=3D Transaction.rollback >>>>> 2005-06-21 09:13:35,352 DEBUG [Thread-8]: =3D> >>>>> MessageServiceHandler.getNextUndeliveredMessage >>>>> 2005-06-21 09:13:35,352 DEBUG [Thread-8]: =3D> >>>>> MessageServer.getUndeliveredMessages >>>>> 2005-06-21 09:13:35,352 DEBUG [Thread-8]: =3D> >>>>> DbConnectionPool.getConnection >>>>> 2005-06-21 09:13:35,352 DEBUG [Thread-8]: =3D> >>>>> DbConnectionPool.createConnection >>>>> >>>>> >>>>> After the connection is restored MSH do not seem to get a proper >>>>> connection. >>>>> This occurs then in the MSH_Client.log: >>>>> >>>>> 2005-06-21 09:13:42,384 ERROR [Thread-8]: [10306] Cannot create DB >>>>> connection >>>>> Exception: java.sql.SQLException Message: Network error >>>>> IOException: Connection refused: connect >>>>> 2005-06-21 09:13:42,384 DEBUG [Thread-8]: =3D> Transaction.rollback >>>>> (txID: #2338) >>>>> 2005-06-21 09:13:42,384 DEBUG [Thread-8]: <=3D Transaction.rollback >>>>> 2005-06-21 09:13:42,384 DEBUG [Thread-8]: =3D> >>>>> MessageServiceHandler.getNextUndeliveredMessage >>>>> 2005-06-21 09:13:42,384 DEBUG [Thread-8]: =3D> >>>>> MessageServer.getUndeliveredMessages >>>>> 2005-06-21 09:13:42,384 DEBUG [Thread-8]: =3D> >>>>> DbConnectionPool.getConnection >>>>> 2005-06-21 09:13:42,384 DEBUG [Thread-8]: =3D> >>>>> DbConnectionPool.createConnection >>>>> 2005-06-21 09:13:43,384 ERROR [Thread-8]: [10306] Cannot create DB >>>>> connection >>>>> Exception: java.sql.SQLException >>>>> Message: Network error IOException: Connection refused: connect >>>>> >>>>> >>>>> >>>>> When i try to send a message through MSH i get this: >>>>> hk.hku.cecid.phoenix.message.handler.RequestException: >>>>> Failed to send query to MSH. >>>>> HTTP response code =3D 200 >>>>> HTTP response message =3D OK >>>>> at >>>>> hk.hku.cecid.phoenix.message.handler.Request.expectMapResponse(Unkn= own >>>>> Source) >>>>> at >>>>> hk.hku.cecid.phoenix.message.handler.Request.sendMessageServiceHand= lerConfig(Unknown >>>>> Source) >>>>> at >>>>> hk.hku.cecid.phoenix.message.handler.Request.register(Unknown Sourc= e) >>>>> at hk.hku.cecid.phoenix.message.handler.Request.<init>(Unknown >>>>> Source) >>>>> at hk.hku.cecid.phoenix.message.handler.Request.<init>(Unknown >>>>> Source) >>>>> at >>>>> com.mysupply.ebxi.msh.MessageManager.sendMessage(MessageManager.jav= a:149) >>>>> >>>>> >>>>> And of course I can not receive any messages through MSH either. >>>>> >>>>> Does anybody have the same problems, after a lost database >>>>> connection? The other part of my application that uses MSH, is >>>>> right back in action when the database connection is restored, but >>>>> not MSH. >>>>> >>>>> The app is running on jboss-4.0.1 (Tomcat 5.0.28), Java >>>>> jdk1.5.0_01. The database is Microsofts MSSQL 2000. The driver for >>>>> MSSQL is JTDS 1.0. >>>>> I have added this: >>>>> <check-valid-connection-sql>select * from >>>>> some_table</check-valid-connection-sql> >>>>> to my datasource file: mssql-ds.xml which is deployed along with >>>>> msh.war. >>>>> >>>>> Everything is working fine, for days, until I loose the database >>>>> connection for a few minutes. >>>>> >>>>> _________________________________________________________________ >>>>> Del din verden med MSN Spaces http://spaces.msn.com >>>>> >>>>> >>>>> >>>>> ------------------------------------------------------- >>>>> SF.Net email is sponsored by: Discover Easy Linux Migration Strateg= ies >>>>> from IBM. Find simple to follow Roadmaps, straightforward articles, >>>>> informative Webcasts and more! Get everything you need to get up to >>>>> speed, fast. http://ads.osdn.com/?ad_id=3D7477&alloc_id=3D16492&op=3D= click >>>>> _______________________________________________ >>>>> ebxmlms-general mailing list >>>>> ebx...@li... >>>>> https://lists.sourceforge.net/lists/listinfo/ebxmlms-general >>>> >>>> >>> >>> _________________________________________________________________ >>> Undg=E5 pop-ups med MSN Toolbar - http://toolbar.msn.dk/ hent den gr= atis! >>> >>> >>> >>> ------------------------------------------------------- >>> SF.Net email is sponsored by: Discover Easy Linux Migration Strategie= s >>> from IBM. Find simple to follow Roadmaps, straightforward articles, >>> informative Webcasts and more! Get everything you need to get up to >>> speed, fast. http://ads.osdn.com/?ad_id=3D7477&alloc_id=3D16492&op=3D= click >>> _______________________________________________ >>> ebxmlms-general mailing list >>> ebx...@li... >>> https://lists.sourceforge.net/lists/listinfo/ebxmlms-general >> >> >> >> >> ------------------------------------------------------- >> SF.Net email is sponsored by: Discover Easy Linux Migration Strategies >> from IBM. Find simple to follow Roadmaps, straightforward articles, >> informative Webcasts and more! Get everything you need to get up to >> speed, fast. http://ads.osdn.com/?ad_idt77&alloc_id=16492&op=CCk >> _______________________________________________ >> ebxmlms-general mailing list >> ebx...@li... >> https://lists.sourceforge.net/lists/listinfo/ebxmlms-general >> > > > > ------------------------------------------------------- > SF.Net email is sponsored by: Discover Easy Linux Migration Strategies > from IBM. Find simple to follow Roadmaps, straightforward articles, > informative Webcasts and more! Get everything you need to get up to > speed, fast. http://ads.osdn.com/?ad_idt77&alloc_id=16492&op=CCk > _______________________________________________ > ebxmlms-general mailing list > ebx...@li... > https://lists.sourceforge.net/lists/listinfo/ebxmlms-general > > --=20 Kijk niet terug, maar kijk naar mij Against all odds |