What I found ? was -it seems (when looking at the log) -that it is only the
BMP-test that has this behavior ? ... and maybe rewriting that would solve
it ? ... the result would then *only* be to hide this feature ? ... not what
We want really ...

/peter_f

on 1-11-29 21.57, David Maplesden at [EMAIL PROTECTED] wrote:

> Ok, I have done some investigation into this and I think I am understanding
> the problem, I'm just not too sure of the best solution.  I would appreciate
> the opinion of someone who has worked with this code before.
> 
> The problem is that when a statement obtained from a given jdbc connection
> throws a SQL exception the connection (through a rather convoluted series of
> method calls) is being closed.  If the client program then tries to create
> another statement using the same connection a null pointer exception results
> because the underlying connection is returning a null, having been closed
> already.  
> 
> Whether this (the connection returning null instead of throwing another SQL
> excpetion, which is what you would expect from a closed connection) is what
> should happen or not is kinda beside the point, it is what is happening, and
> it is happening because our resource and pooling code decides to destroy the
> connection when a statement from the connection throws an error.
> 
> So I guess my question is why do we do this?  Is there some convention with
> jdbc I am unaware of that suggests a connection should become unusuable
> after a statement obtained from that connection throws an error?  Or is
> there some other good reason we are doing this?  If so I can change the code
> so that any attempted use of the connection in this situation will result in
> a SQL exception rather than a NPE.
> 
> If there is no particular reason we are doing this then I will (try) to
> change the code so we don't do this!
> 
> Guidence from someone who is familiar with this code would be appreciated,
> else I am going to bang on by myself and can't guarantee the results :-)
> 
> Thanks
> David.
> 
>> -----Original Message-----
>> From: Peter Fagerlund [mailto:[EMAIL PROTECTED]]
>> Sent: Wednesday, November 28, 2001 12:40 PM
>> To: David Maplesden; JBossDev (E-mail)
>> Subject: Re: [JBoss-dev] NPE when using DefaultDS
>> 
>> 
>> While pooking around i found and :
>> 
>> Uncommented body of deleteObject(pooledObject) - line 71 of
>> 
>> org/jboss/resource/connectionmanager.ManagedConnectionPoolFactory.java
>> 
>> (it seems this is called when the pool shrinks or is shut down.
>> some test -is shrinking the pool to [0/0/10] and as a effect
>> the next test
>> using the DefaultDS do not have a connection ? ... it should
>> probably create
>> one before trying to create a table ? ...)
>> 
>> ***
>> 
>> Now when running run-testsuite I have 169 tests running and 1 error
>> 99.41% Success rate - heh ...
>> 
>> So the xa test is failing above - We knew that - and
>> disabeling it should
>> render a cool 100% of the 169 tests ! ...
>> 
>> /peter_f
>> 
>> on 1-11-26 22.54, David Maplesden at
>> [EMAIL PROTECTED] wrote:
>> 
>>> I have been experiencing a NPE when calling createStatement
>> on a connection
>>> obtained from DefaultDS.
>>> 
>>> java.lang.NullPointerException
>>> at
>>> 
>> org.jboss.resource.adapter.jdbc.local.StatementInPool.<init>(S
>> tatementInPool
>>> .java:35)
>>> at
>>> 
>> org.jboss.resource.adapter.jdbc.local.ConnectionInPool.createS
>> tatement(Conne
>>> ctionInPool.java:606)
>>> 
>>> This doesn't always occur and I have only noticed it in the
>> last week or so,
>>> previously it worked fine.
>>> 
>>> It occurs after a previous statement throws an
>> SQLException.  In other words
>>> if you are using the connections from DefaultDS everything
>> is fine until one
>>> of your SQL queries causes an SQL exception.  After this
>> point you get a NPE
>>> every time you try to create another statement from a connection for
>>> DefaultDS.
>>> 
>>> I think (though I don't know for sure) that it has been
>> caused by a change
>>> to the Object pool code made last week sometime.
>>> 
>>> I hope someone out there can help.
>>> 
>>> Thanks
>>> David.
>>> 
>>> 
>>> ---
>>> Outgoing mail is certified Virus Free.
>>> Checked by AVG anti-virus system (http://www.grisoft.com).
>>> Version: 6.0.298 / Virus Database: 161 - Release Date: 11/13/2001
>>> 
>>> 
>>> _______________________________________________
>>> Jboss-development mailing list
>>> [EMAIL PROTECTED]
>>> https://lists.sourceforge.net/lists/listinfo/jboss-development
>> 
>> 
>> _______________________________________________
>> Jboss-development mailing list
>> [EMAIL PROTECTED]
>> https://lists.sourceforge.net/lists/listinfo/jboss-development
>> 
>> ---
>> Incoming mail is certified Virus Free.
>> Checked by AVG anti-virus system (http://www.grisoft.com).
>> Version: 6.0.298 / Virus Database: 161 - Release Date: 11/13/2001
>> 
>> 
> 
> ---
> Outgoing mail is certified Virus Free.
> Checked by AVG anti-virus system (http://www.grisoft.com).
> Version: 6.0.298 / Virus Database: 161 - Release Date: 11/13/2001
> 
> 
> _______________________________________________
> Jboss-development mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/jboss-development


_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to