You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cocoon.apache.org by to...@the-ecorp.com on 2001/08/07 20:41:13 UTC

[C2] SQLTransformer

Hi all,

There's a serious bug in the SQLTransformer: a query gets executed, and
after that the results are sucked out of it. Now, the moment the query is
executed, its Connection is given back to the Pool it belongs is (which is
good). But, if this Connection is reused before the results are sucked out
of it, serious problems arise (genre NullPointerException).

The problem does not arise ATM with the Excalibur that is in C2 now, because
that also has a serious bug in it (which I will report and patch tomorrow to
the Avalon people).

I'm working on a solution for the SQLTransformer, but I need one piece of
information: can I trust C2 to execute recycle() or dispose() as soon as the
pipeline has ended executing? This would allow me to allocate a Connection
in the setup(), and throw it back in the Pool in the recycle() resp.
dispose().

Once this is solved, I will of course send the patch to the list, but I need
this information to be able to patch it.

Thanks a lot,
tomK

---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
For additional commands, email: cocoon-dev-help@xml.apache.org


RE: [C2] SQLTransformer

Posted by Vadim Gritsenko <vg...@hns.com>.
Hi,

I don't know what version of SQLTransformer you are talking about,
IIRC this was fixed in CVS a weeks ago. If not, please show these 
lines of code.

Right now ($Revision: 1.5.2.6 from cocoon_20_branch), query is executed
in method "executeQuery(int index)", and it also extracts all results in
"while (query.next())" loop, and then connection is closed in "finally" statement.

Regards,
Vadim

> -----Original Message-----
> From: tom.klaasen@the-ecorp.com [mailto:tom.klaasen@the-ecorp.com]
> Sent: Tuesday, August 07, 2001 2:41 PM
> To: cocoon-dev@xml.apache.org
> Subject: [C2] SQLTransformer
> 
> 
> Hi all,
> 
> There's a serious bug in the SQLTransformer: a query gets executed, and
> after that the results are sucked out of it. Now, the moment the query is
> executed, its Connection is given back to the Pool it belongs is (which is
> good). But, if this Connection is reused before the results are sucked out
> of it, serious problems arise (genre NullPointerException).
> 
> The problem does not arise ATM with the Excalibur that is in C2 now, because
> that also has a serious bug in it (which I will report and patch tomorrow to
> the Avalon people).
> 
> I'm working on a solution for the SQLTransformer, but I need one piece of
> information: can I trust C2 to execute recycle() or dispose() as soon as the
> pipeline has ended executing? This would allow me to allocate a Connection
> in the setup(), and throw it back in the Pool in the recycle() resp.
> dispose().
> 
> Once this is solved, I will of course send the patch to the list, but I need
> this information to be able to patch it.
> 
> Thanks a lot,
> tomK
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
> For additional commands, email: cocoon-dev-help@xml.apache.org
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
For additional commands, email: cocoon-dev-help@xml.apache.org