Yes, there is definitely the possibility of multiple threads trying to boot the database. I'll look into that.
This appears to be happening on 64-bit Windows machines only, but that could be a machine-related timing, or it could be the 64-bit VM.
On 12.08.10 01:07, David Van Couvering wrote:Since the problem is intermittent, could it be caused by multiple threads trying to boot the database?Looks like it was a slash/forward-slash issue. I changed my code to use File.separator and this very strange bug (it would only happen sometimes, and only on some machines) looks like it has gone away.
And in case somebody wants to pursue this issue later, do you know if it happened across a range of different JVMs?
On Tue, Aug 10, 2010 at 1:48 AM, Kristian Waagan <email@example.com> wrote:
On 09.08.10 23:55, David Van Couvering wrote:Hi David,I am getting these intermittent errors that I can't reproduce on my machine:
I read the docs, and there is no discussion about whether a mixed "\" "/" path is a problem on some systems. Could it be? Do I need to normalize the path to all forward slashes?
I guess there can be problems related to mixing different path separators, but testing on OpenSolaris does suggest that the monitor and the in-memory back end are capable of handling it:
java -Dderby.system.home="C:\VontuDev\main\dist\scan\incremental_index" -cp classes org.apache.derby.tools.ij
ij version 10.7
ij> connect 'jdbc:derby:memory:MONITOR/INCREMENTAL_INFO;create=true';
Then, from derby.log:
However, trying this with an on-disk database fails. My guess is because I'm on UNIX, and then the colon from c:\ shows up in a place it's not supposed to be.
In general, I think your mileage depends on what java.io.File is capable of, but there might be problems in the explicit path handling within Derby.
Do you get an assert failure if you run with a sane build when you try to boot the database?
David W. Van Couvering