Kevin,

The whole method of figuring out if the DB is being used by another HSQLDB
process needs a revamp in the very new future.

But in the meantime, re. connection pool with 20 connections? If these
connections are to an HSQLDB server, they wouldn't be a problem, but if they
are standalone database connections, they definitely are THE problem.

Your original message had:

at org.hsqldb.jdbcConnection.openStandalone(jdbcConnection.java:926)

I suspect the connection pool is trying to open the same database 20 times.
What is the connection URL?

Fred Toussi

----- Original Message -----
From: "Kevin A. Burton" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, March 07, 2002 9:35 PM
Subject: [Hsqldb-developers] MORE The database is already in use by another
process


> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
>
> OK...
>
> I spent some type patching isAlreadyOpen and distributing updates .jar
files to
> my users.
>
> Here is what I learned.
>
> - - it isn't a synchronization issue in isAlreadyOpen.  I created a
synchronized
>   block around Log.class and it still fails.
>
> - - the file DOES exist.
>
> - - the delete() == false call is what is causing this.
>
> - - canRead and canWrite both return true :(
>
> I think the problem is the way that the file is opened.  Java states that
on
> some systems an open file is exclusive.
>
> I think the problem is that on Windows, file operations in Java under
Windows
> are exclusive.
>
> Maybe we should rewrite (make sense) Log.java to make sure that we don't
try to
> load the properties file while we are trying to save it.  Looking at the
current
> code, it appears that someone could call open in one thread (DBConnection)
while
> isAlreadyOpen is trying to be called in another thread.
>
> Under UNIX/Linux... these are not exclusive and at least from Java, there
is no
> way to make them operate so.
>
> So... my thinking (no suggestion yet) is that we just use a static
synchronizer
> so that the properties file is not written to during another write/read
> operation.
>
> Does that make sense?  It looks like we only have to modify isAlreadyOpen,
> loadProperties and saveProperties...
>
> As an aside.  Could a DB connection pool raise this issue?  It seems that
it
> might.  I am using Turbine's DB connection pool with 20 connections.  This
> seems to work fine under Linux... obviously not find under Windows :)
>
> Kevin
>
> - --
> Kevin A. Burton ( [EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED] )
>              Location - San Francisco, CA, Cell - 415.595.9965
>         Jabber - [EMAIL PROTECTED],  Web - http://relativity.yi.org/
>
> Without enlightenment, there is only ignorance.
>   -- famous Zen Koan
>
>
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.0.6 (GNU/Linux)
> Comment: Get my public key at: http://relativity.yi.org/pgpkey.txt
>
> iD8DBQE8h904AwM6xb2dfE0RAnKhAJ9Ax19sY6WNvumO9ct1iW/hGBb/sACaA/BF
> kUio7UiJm1BHcXvaYOW33Y0=
> =NzDY
> -----END PGP SIGNATURE-----
>
> _______________________________________________
> hsqldb-developers mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/hsqldb-developers


_______________________________________________
hsqldb-developers mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/hsqldb-developers

Reply via email to