Subject Re: [firebird-support] Sweep in progress?
Author Ann W. Harrison
Kjell,
>
>
> It has happened a couple of times that a usually rather quick query took
> two hours to execute, during which I could see memory usage go up, up,
> up, slowly but steadily.
>
> Is this a sweep going on? Or a garbage collect?
>
> How can I see what's going on?
>

First, a sophisticated user will have already turned off automatic
sweep and schedule sweeps for a low-usage time. So you should know
whether you're sweeping or not.

Then two suggestions, neither of which is going to improve performance
while you're testing. The crude way is to run a gstat -a -r when
things are going badly (which will take a long long time) and look for
the number of old record versions. Lots of old record versions => lots
of garbage collection. Few old records => little garbage collection.
A less crude way is to build a debugging version of Firebird and break
into the process when its slow and see what it's doing. That will tell
you and the developers a lot more than just looking for old versions.


Good luck,

Ann