During the test phase of Firebird 2.1, I played with two new features : global temporary table and monitoring tables.

I never stressed Firebird on MacOs X before, and when I tried to do 300 concurrent connections each one using a temporary table and a select from monitoring tables, my Firebird Classic get into trouble with bad messages in the firebird.log :

Can't load INTL module'/Library/Frameworks/Firebird.framework/Resources/English.lproj/var/intl/fbintl.dylib'

Fatal lock manager error: inconsistent lock table version number; found 144,expected 16, errno: 35

In fact, as Paul Beach suggested, it was not Firebird that have problem,but I did not have enough ressources for Firebird and Launchd

So digging Internet, I found advices for other RDBMS, and I change somesystem value by creating two new configurations files :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
$ cat /etc/sysctl.conf
kern.sysv.shmmax=10485760
kern.sysv.shmmin=1
kern.sysv.shmmni=32
kern.sysv.shmseg=8
kern.sysv.shmall=4096
kern.maxproc=2068
kern.maxprocperuid=2068
$ cat /etc/launchd.conf
limit maxproc 2068 2068
limit maxfiles 10240 10240

With these values, no problem, all tests were ok.

I think that we can use lowest values.