Re: Can I avoid bouncing app when database goes down? (struts 1.0 .2) (try poolman) (use validationQuery)

2002-10-30 Thread Dan Tran
Question:

Do you keep your connection all the time?  If you
do, it is not adviced to do so.  Close it when ever
 you can.

 Do you use connection pooling?

-D
- Original Message -
From: Ian Hunter [EMAIL PROTECTED]
To: Struts Users Mailing List [EMAIL PROTECTED]
Sent: Wednesday, October 30, 2002 10:56 AM
Subject: Re: Can I avoid bouncing app when database goes down? (struts 1.0
.2) (try poolman) (use validationQuery)


 OK, I implemented that throughout my app and it worked so long as I kept
the
 database up, but if I logged into my app, dropped the database and brought
 it back up, I would get this:

 java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for
JDBC]Connection
 reset by peer: socket write error
  at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
  at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
  at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
  at com.microsoft.jdbc.sqlserver.tds.TDSRPCRequest.submitRequest(Unknown
 Source)
  at com.microsoft.jdbc.sqlserver.tds.TDSCursorRequest.openCursor(Unknown
 Source)
  at com.microsoft.jdbc.sqlserver.SQLServerImplStatement.execute(Unknown
 Source)
  at com.microsoft.jdbc.base.BaseStatement.commonExecute(Unknown Source)
  at com.microsoft.jdbc.base.BaseStatement.executeQueryInternal(Unknown
 Source)
  at com.microsoft.jdbc.base.BaseStatement.executeQuery(Unknown Source)
  at

com.codestudio.sql.PoolManStatement.executeQuery(PoolManStatement.java:105)

 So I implemented a validationQuery (I used select 0) to ensure that
 connections were up.  I imagine this will slow things down a hair, but I
 think I have a workable solution.

 Comments?

 - Original Message -
 From: Zeltser, Mark [EMAIL PROTECTED]
 To: 'Struts Users Mailing List' [EMAIL PROTECTED]
 Sent: Wednesday, October 30, 2002 11:26 AM
 Subject: RE: Can I avoid bouncing app when database goes down? (struts 1.0
 .2) (try poolman)


  Ian,
 
  You will need to configure poolman.xml and put it in your
  app/WEB-INF/classes directory.
 
  Then you can do the following:
 
  DataSource dataSource =  PoolMan.findDataSource(
 Constants.DATASOURCE_KEY );
  Connection connection =  dataSource.getConnection();
 
  Take a look at docs included with Poolman for configuration options.
 
  Mark.
 
  -Original Message-
  From: Ian Hunter [mailto:ihunter;hunterweb.net]
  Sent: Wednesday, October 30, 2002 11:18 AM
  To: Struts Users Mailing List
  Subject: Re: Can I avoid bouncing app when database goes down? (struts
  1.0 .2) (try poolman)
 
 
  http://www.codestudio.com/index.shtml allowed me to download it.  That's
 so
  weird.
 
  Anyway, is there any way to implement this just by specifying the class
in
  struts-config.xml, so I wind up with code like this?
 
  ds = (PoolmanConnection)
  servlet.getServletContext().getAttribute(Constants.DATABASE_KEY);
  conn = ds.getConnection();
 
  Or do I have to jump through all kinds of hoops?
 
  - Original Message -
  From: Ian Hunter [EMAIL PROTECTED]
  To: Struts Users Mailing List [EMAIL PROTECTED]
  Sent: Wednesday, October 30, 2002 11:04 AM
  Subject: Re: Can I avoid bouncing app when database goes down? (struts
1.0
  .2) (try poolman)
 
 
   http://www.codestudio.com says it is no longer supported.  I'll keep
   looking, but if you have any suggestions...
  
   - Original Message -
   From: Zeltser, Mark [EMAIL PROTECTED]
   To: 'Struts Users Mailing List' [EMAIL PROTECTED]
   Sent: Wednesday, October 30, 2002 9:49 AM
   Subject: RE: Can I avoid bouncing app when database goes down? (struts
 1.0
   .2)
  
  
I had the same problem. Try using poolman (I had to patch it since
it
  was
running in endless loop whenever sybase server was rebooted)
   
-Original Message-
From: Ian Hunter [mailto:ihunter;hunterweb.net]
Sent: Wednesday, October 30, 2002 8:39 AM
To: Struts Users Mailing List
Subject: Re: Can I avoid bouncing app when database goes down?
(struts
1.0.2)
   
   
1.0.2; kinda old, I guess...
   
- Original Message -
From: James Mitchell [EMAIL PROTECTED]
To: Struts Users Mailing List [EMAIL PROTECTED]
Sent: Wednesday, October 30, 2002 12:14 AM
Subject: RE: Can I avoid bouncing app when database goes down?
   
   
 What version of Struts are you using?

 There were some changes made in DBCP a few weeks ago that might
help
   with
 that, but I could be wrong.

 James Mitchell
 Software Engineer/Struts Evangelist
 http://www.open-tools.org

 Only two things are infinite, the universe and human stupidity,
and
  I'm
not
 sure about the former.
 - Albert Einstein (1879-1955)


  -Original Message-
  From: Ian Hunter [mailto:ihunter;hunterweb.net]
  Sent: Tuesday, October 29, 2002 11:29 PM
  To: [EMAIL PROTECTED]
  Subject: Can I avoid bouncing app when

Re: Can I avoid bouncing app when database goes down? (struts 1.0 .2) (try poolman) (use validationQuery)

2002-10-30 Thread Ian Hunter
The socket connection from the servlet container to the database itself is
always open.  The application itself closes each connection at the end of
each page.  I have been implementing connection pooling from the
beginning, and all that was fine -- the only problem was when the database
itself went down; the connection pool I was using (struts 1.0.2 default one)
wasn't able to recover.  Poolman is once I configured a validationQuery.
I've tested by logging in, using the app, killing the database, bringing it
back up, and resuming in the app.  I get one error and then the application
recovers nicely now.

- Original Message -
From: Dan Tran [EMAIL PROTECTED]
To: Struts Users Mailing List [EMAIL PROTECTED]
Sent: Wednesday, October 30, 2002 2:31 PM
Subject: Re: Can I avoid bouncing app when database goes down? (struts 1.0
.2) (try poolman) (use validationQuery)


 Question:

 Do you keep your connection all the time?  If you
 do, it is not adviced to do so.  Close it when ever
  you can.

  Do you use connection pooling?

 -D
 - Original Message -
 From: Ian Hunter [EMAIL PROTECTED]
 To: Struts Users Mailing List [EMAIL PROTECTED]
 Sent: Wednesday, October 30, 2002 10:56 AM
 Subject: Re: Can I avoid bouncing app when database goes down? (struts 1.0
 .2) (try poolman) (use validationQuery)


  OK, I implemented that throughout my app and it worked so long as I kept
 the
  database up, but if I logged into my app, dropped the database and
brought
  it back up, I would get this:
 
  java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for
 JDBC]Connection
  reset by peer: socket write error
   at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown
Source)
   at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
   at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
   at com.microsoft.jdbc.sqlserver.tds.TDSRPCRequest.submitRequest(Unknown
  Source)
   at com.microsoft.jdbc.sqlserver.tds.TDSCursorRequest.openCursor(Unknown
  Source)
   at com.microsoft.jdbc.sqlserver.SQLServerImplStatement.execute(Unknown
  Source)
   at com.microsoft.jdbc.base.BaseStatement.commonExecute(Unknown Source)
   at com.microsoft.jdbc.base.BaseStatement.executeQueryInternal(Unknown
  Source)
   at com.microsoft.jdbc.base.BaseStatement.executeQuery(Unknown Source)
   at
 

com.codestudio.sql.PoolManStatement.executeQuery(PoolManStatement.java:105)
 
  So I implemented a validationQuery (I used select 0) to ensure that
  connections were up.  I imagine this will slow things down a hair, but I
  think I have a workable solution.
 
  Comments?
 
  - Original Message -
  From: Zeltser, Mark [EMAIL PROTECTED]
  To: 'Struts Users Mailing List' [EMAIL PROTECTED]
  Sent: Wednesday, October 30, 2002 11:26 AM
  Subject: RE: Can I avoid bouncing app when database goes down? (struts
1.0
  .2) (try poolman)
 
 
   Ian,
  
   You will need to configure poolman.xml and put it in your
   app/WEB-INF/classes directory.
  
   Then you can do the following:
  
   DataSource dataSource =  PoolMan.findDataSource(
  Constants.DATASOURCE_KEY );
   Connection connection =  dataSource.getConnection();
  
   Take a look at docs included with Poolman for configuration options.
  
   Mark.
  
   -Original Message-
   From: Ian Hunter [mailto:ihunter;hunterweb.net]
   Sent: Wednesday, October 30, 2002 11:18 AM
   To: Struts Users Mailing List
   Subject: Re: Can I avoid bouncing app when database goes down? (struts
   1.0 .2) (try poolman)
  
  
   http://www.codestudio.com/index.shtml allowed me to download it.
That's
  so
   weird.
  
   Anyway, is there any way to implement this just by specifying the
class
 in
   struts-config.xml, so I wind up with code like this?
  
   ds = (PoolmanConnection)
   servlet.getServletContext().getAttribute(Constants.DATABASE_KEY);
   conn = ds.getConnection();
  
   Or do I have to jump through all kinds of hoops?
  
   - Original Message -
   From: Ian Hunter [EMAIL PROTECTED]
   To: Struts Users Mailing List [EMAIL PROTECTED]
   Sent: Wednesday, October 30, 2002 11:04 AM
   Subject: Re: Can I avoid bouncing app when database goes down? (struts
 1.0
   .2) (try poolman)
  
  
http://www.codestudio.com says it is no longer supported.  I'll keep
looking, but if you have any suggestions...
   
- Original Message -
From: Zeltser, Mark [EMAIL PROTECTED]
To: 'Struts Users Mailing List' [EMAIL PROTECTED]
Sent: Wednesday, October 30, 2002 9:49 AM
Subject: RE: Can I avoid bouncing app when database goes down?
(struts
  1.0
.2)
   
   
 I had the same problem. Try using poolman (I had to patch it since
 it
   was
 running in endless loop whenever sybase server was rebooted)

 -Original Message-
 From: Ian Hunter [mailto:ihunter;hunterweb.net]
 Sent: Wednesday, October 30, 2002 8:39 AM
 To: Struts Users Mailing List
 Subject: Re

Re: Can I avoid bouncing app when database goes down? (struts 1.0 .2) (try poolman) (use validationQuery)

2002-10-30 Thread Ian Hunter
Where did you find 2.1?  2.0.3 is current according to
http://www.codestudio.com/index.shtml

- Original Message -
From: Zeltser, Mark [EMAIL PROTECTED]
To: 'Struts Users Mailing List' [EMAIL PROTECTED]
Sent: Wednesday, October 30, 2002 2:48 PM
Subject: RE: Can I avoid bouncing app when database goes down? (struts 1.0
.2) (try poolman) (use validationQuery)


 I am using poolman 2.1 with Sybase jconnect driver and don't have this
 problem.

 Mark.

 -Original Message-
 From: Ian Hunter [mailto:ihunter;hunterweb.net]
 Sent: Wednesday, October 30, 2002 2:42 PM
 To: Struts Users Mailing List
 Subject: Re: Can I avoid bouncing app when database goes down? (struts
 1.0 .2) (try poolman) (use validationQuery)


 The socket connection from the servlet container to the database itself is
 always open.  The application itself closes each connection at the end of
 each page.  I have been implementing connection pooling from the
 beginning, and all that was fine -- the only problem was when the database
 itself went down; the connection pool I was using (struts 1.0.2 default
one)
 wasn't able to recover.  Poolman is once I configured a validationQuery.
 I've tested by logging in, using the app, killing the database, bringing
it
 back up, and resuming in the app.  I get one error and then the
application
 recovers nicely now.

 - Original Message -
 From: Dan Tran [EMAIL PROTECTED]
 To: Struts Users Mailing List [EMAIL PROTECTED]
 Sent: Wednesday, October 30, 2002 2:31 PM
 Subject: Re: Can I avoid bouncing app when database goes down? (struts 1.0
 .2) (try poolman) (use validationQuery)


  Question:
 
  Do you keep your connection all the time?  If you
  do, it is not adviced to do so.  Close it when ever
   you can.
 
   Do you use connection pooling?
 
  -D
  - Original Message -
  From: Ian Hunter [EMAIL PROTECTED]
  To: Struts Users Mailing List [EMAIL PROTECTED]
  Sent: Wednesday, October 30, 2002 10:56 AM
  Subject: Re: Can I avoid bouncing app when database goes down? (struts
1.0
  .2) (try poolman) (use validationQuery)
 
 
   OK, I implemented that throughout my app and it worked so long as I
kept
  the
   database up, but if I logged into my app, dropped the database and
 brought
   it back up, I would get this:
  
   java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for
  JDBC]Connection
   reset by peer: socket write error
at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown
 Source)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown
Source)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown
Source)
at
com.microsoft.jdbc.sqlserver.tds.TDSRPCRequest.submitRequest(Unknown
   Source)
at
com.microsoft.jdbc.sqlserver.tds.TDSCursorRequest.openCursor(Unknown
   Source)
at
com.microsoft.jdbc.sqlserver.SQLServerImplStatement.execute(Unknown
   Source)
at com.microsoft.jdbc.base.BaseStatement.commonExecute(Unknown
Source)
at com.microsoft.jdbc.base.BaseStatement.executeQueryInternal(Unknown
   Source)
at com.microsoft.jdbc.base.BaseStatement.executeQuery(Unknown Source)
at
  
 

com.codestudio.sql.PoolManStatement.executeQuery(PoolManStatement.java:105)
  
   So I implemented a validationQuery (I used select 0) to ensure
that
   connections were up.  I imagine this will slow things down a hair, but
I
   think I have a workable solution.
  
   Comments?
  
   - Original Message -
   From: Zeltser, Mark [EMAIL PROTECTED]
   To: 'Struts Users Mailing List' [EMAIL PROTECTED]
   Sent: Wednesday, October 30, 2002 11:26 AM
   Subject: RE: Can I avoid bouncing app when database goes down? (struts
 1.0
   .2) (try poolman)
  
  
Ian,
   
You will need to configure poolman.xml and put it in your
app/WEB-INF/classes directory.
   
Then you can do the following:
   
DataSource dataSource =  PoolMan.findDataSource(
   Constants.DATASOURCE_KEY );
Connection connection =  dataSource.getConnection();
   
Take a look at docs included with Poolman for configuration options.
   
Mark.
   
-Original Message-
From: Ian Hunter [mailto:ihunter;hunterweb.net]
Sent: Wednesday, October 30, 2002 11:18 AM
To: Struts Users Mailing List
Subject: Re: Can I avoid bouncing app when database goes down?
(struts
1.0 .2) (try poolman)
   
   
http://www.codestudio.com/index.shtml allowed me to download it.
 That's
   so
weird.
   
Anyway, is there any way to implement this just by specifying the
 class
  in
struts-config.xml, so I wind up with code like this?
   
ds = (PoolmanConnection)
servlet.getServletContext().getAttribute(Constants.DATABASE_KEY);
conn = ds.getConnection();
   
Or do I have to jump through all kinds of hoops?
   
- Original Message -
From: Ian Hunter [EMAIL PROTECTED]
To: Struts Users Mailing List [EMAIL PROTECTED]
Sent: Wednesday, October 30, 2002