attempts to prevent
two JVMs from accessing a database at one time (and potentially corrupting it)
with the use of a file called db.lck in the database directory. On some
operating systems, the use of a lock file does not guarantee single access, and
so only issues
a warning and might allow multiple JVM access even when the file is present.
(For more information, see "Double-booting system behavior" in the
.)
provides the
property derby.database.forceDatabaseLock for use on platforms that do
not provide the ability for
to guarantee single
JVM access. By default, this property is set to false. When this property is
set to true, if finds
the db.lck file when it attempts to boot the database, it throws an
exception and does not boot the database.
This situation can occur even when no other JVMs are accessing the
database; in that case, remove the db.lck file by hand in order to boot
the database. If the db.lck file is removed by hand while a JVM is still
accessing a database,
there is no way for to
prevent a second VM from starting up and possibly corrupting the database.
In this situation no warning message is logged to the error log.