Hello,

I'm trying to get help on some problems I'm facing using Firebird DB engine on 
a Linux SMP server.

Firebird is installed on a linux server like this

Linux 3.5.2-030502-generic #201208151151 SMP Wed Aug 15 15:52:12 UTC 2012 
x86_64 x86_64 x86_64 GNU/Linux

with 8 cpu on a VmWare ESXi 4.1 host.

In general  I compile myself Firebird from sources, which I download here
http://web.firebirdsql.org/download/snapshot_builds/linux/fb2.5/

I use this to compile
CFLAGS=-march=native ./configure --prefix=/opt/fb25ss --with-system-editline 
--with-system-icu

Since I saw something stranhe related to memory usage, two days ago
I compiled this sources
http://web.firebirdsql.org/download/snapshot_builds/linux/fb2.5/Firebird-2.5.2.26527-0.tar.bz2

with debug activated like this

CFLAGS=-march=native ./configure --prefix=/opt/fb25ss --enable-debug 
--with-system-editline --with-system-icu

I'm using SuperClassic configuration using this command after 
compiling/installing

/opt/fb25ss/bin/changeMultiConnectMode.sh  ---> thread

Linux server has 8G RAM and 36GB swap space.

The strange thing I noticed is that after some time after starting DB engine, 
VM committer memory used by Firebird is going very very high
ans always increasing... after 8 hours for example typically is like this

  PID    RUID        EUID          THR     SYSCPU      USRCPU     VGROW     
RGROW      RDDSK     WRDSK     ST    EXC    S     CPUNR     CPU     CMD        
1/1
 7502    firebird    firebird       10     13m08s      82m34s     40.8G      
2.2G      11.1G      3.7G     N-      -    S         0      9%     fb_smp_server

with something 40G of committed virtual memory... so huge? and always
increasing?

but not all RAM is used
MEM | tot     7.7G | free    3.2G  | cache   2.4G | dirty   0.1M | buff    0.0M 
|  slab  206.3M 
and not swap space used
SWP | tot    32.0G | free   32.0G  |

So why Linux kernel was reporting about 40G of virt ram used by Firebird?

When started virtual memory is lower

16761    firebird    firebird        9      7.89s      26.90s      5.3G    
204.0M     363.0M    20528K     N-      -    S         0      0%     
fb_smp_server

about 5G.


fb_smp_server is running typically in 10 thread, connected to DB
like this

Database "/var/lib/firebird/2.5/data/h3o.estsesia.fdb"
Database header page information:
        Flags                   0
        Checksum                12345
        Generation              434005
        Page size               16384
        ODS version             11.2
        Oldest transaction      346399
        Oldest active           346400
        Oldest snapshot         346400
        Next transaction        346401
        Bumped transaction      1
        Sequence number         0
        Next attachment ID      87298
        Implementation ID       24
        Shadow count            0
        Page buffers            18000
        Next header page        0
        Clumplet End            102
        Database dialect        3
        Creation date           May 10, 2012 8:48:24
        Attributes              force write

    Variable header data:
        Sweep interval:         0
        *END*


Further, After installing debug version, I saw in log messages like this

root@h3oserver-DB:/home/corrtek# tail -f /opt/fb25ss/firebird.log
        wait_for_request: owner 32752 reposted 550 times for lock 30248


h3oserver-DB    Fri Aug 24 07:49:36 2012
        wait_for_request: owner 32752 reposted 600 times for lock 30248


h3oserver-DB    Fri Aug 24 08:04:54 2012
        wait_for_request: owner 32752 reposted 50 times for lock 30248

What's that?

Please, someone can help me to figure out why FB is using so much virtual 
committed memory and what are those log messages?

Many thanks.

Best regards.

Reply via email to