db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Army <qoz...@sbcglobal.net>
Subject Re: [PATCH] (DERBY-230) "Schema already exists" when creating a table
Date Mon, 30 May 2005 16:16:44 GMT
Øystein Grøvlen wrote:
> I have attached a new version of the patch to Derby-230 that should
> address the review comments that I received to the first patch.  Could
> someone review/commit this?

I applied the patch and verified that the test runs successfully against the 
server, with both the JCC client and the Derby Network Client.  And I can see 
that you are using ij.startJBMS() to get all connections in the test, which is 
good (per Dan's review comments).

My one concern is as follows: I tried running the new test withOUT your fix, and 
it actually passed 1 of the 3 times I ran it (against embedded mode).  I also 
ran it three times using the Derby Network Client and it passed twice.

It looks like you're creating 100 threads and running them all in hopes that the 
problem will reproduce--which is _usually_ does.  But it's not guaranteed.

This means that if someone makes a change to break this functionality in the 
future, it's _possible_ (albeit unlikely) that your new test will pass in both 
embedded and server modes, and thus that person's change will get committed and 
we'll end up with DERBY-230 reborn.

Is there any way to guarantee that the test will reproduce?  Bumping the "100" 
up to a higher number might help, but it's still not going to give us the 
guarantee, so that's not really a solution.  Maybe doing something with 
autocommit and having one thread sleep or something...I don't know, I haven't 
thought about it too much, but it'd be nice if something like that could be done...

In short, I approve of the fix, but I'm not sure the corresponding test is fully 
reliable.  Is there any way to guarantee the test will catch a failure in this 
area in the future?


View raw message