You seem to be absolutely right.

We're using a slightly different version of SQLTransformer (the one Sven
Beauprez was working on), and he assured me that he had followed the
evolutions SQLTransformer in C2 and made all relevant patches on our
version. Now Sven is on a holiday (which is the reason I got involved in
it), so I'll have to wait a few weeks more before I can strangle him ;)

There's still one problem though: if the pool of connections is empty when
you arrive at line 827, the thing just explodes (you'll only notice this
under load). 

I've tried to loop there until I get a connection, but this of course leads
to a deadlock (almost all our queries are nested 2 deep, so if 20 requests
arrive at the same time for a pool of 10 connections, all nested queries are
deadlocked)

I'm now trying to get a hold on all necessary connections before trying to
execute the queries. Wish me luck, because it looks like a bee's nest to
me...

Thanks for your reaction, and my excuses for the misunderstanding
tomK


-----Original Message-----
From: Vadim Gritsenko [mailto:[EMAIL PROTECTED]]
Sent: woensdag 8 augustus 2001 15:14
To: [EMAIL PROTECTED]
Subject: RE: [C2] SQLTransformer


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: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
> Sent: Tuesday, August 07, 2001 2:41 PM
> To: [EMAIL PROTECTED]
> 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: [EMAIL PROTECTED]
> For additional commands, email: [EMAIL PROTECTED]
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to