Subject FireBird CS locking on FreeBSD?
Author onganet
Hi there,

I am setting up a firebird CS server on FreeBSD for a client to use
some software provided by a company that will only support linux and
not FreeBSD.

Now, They also only support one specific version of Firebird, and that
is 1.0.0.796-0.

So I've installed that, and I believe it is working (to some extent).
I can use isql and connect to any database locally and remotely and
thats all fine.

Now, here's the problem. If I try to connect to the SAME database file
at the time that someone else is using that file, it just hangs
forever until that person either stops using that database file all
together (say, deciding to connect to a different database) or they
quit all together.

For example:

Client 1
[root@blizzard /opt/interbase/examples]#../bin/isql
Use CONNECT or CREATE DATABASE to specify a database
SQL> connect employee.gdb;
Database: employee.gdb
SQL>
(Client 1 does nothing more, just sits there or selects something,
whatever really)

Client 2 (say 10 mins later)[root@blizzard
/opt/interbase/examples]#../bin/isql
Use CONNECT or CREATE DATABASE to specify a database
SQL> connect employee.gdb;
(Pause forever)


Then say client 1 decides to disconnect
SQL> exit;
[root@blizzard /opt/interbase/examples]#

Now client 2:
Database: employee.gdb
SQL>

Gets access straight away.

Now, to me that seems to be whoever uses the database actually locks
the entire database file and it cannot be used until it is released by
that client.

Now, I also decided to install firebird (same version) on Windows XP
*cringe*. And I performed the exact same thing as above. The
difference is, it worked. Both clients could use employee.gdb at the
same time, no problems.

If anyone could help me with this that would be great!

PS.
Just FYI: It is a FreeBSD 4.8-RELEASE server that is showing this issue.