Subject Re: [firebird-support] Re: Update: CPU Pegged on Firebird v2
Author Ann W. Harrison
slalom91 wrote:
> Thanks to everyone for their responses. So.. with all this being said,
> everyone is comfortable that the problem with not committing a
> transaction and waiting on garbage collection should max out the CPU
> and degrade performance indefinitely?
>

No of course not. I missed the fact that you're running with no
reserved space for back versions. If your application modifies
or deletes records you should reserve space for back versions to
make garbage collection faster.


In version 2, try changing the settings for the garbage collection.

# ----------------------------
# Garbage collection policy
#
# Defines how engine does garbage collection. Valid values are :
# cooperative
# background
# combined
#
# Superserver has by default "combined" policy
# Classic has by default "cooperative" policy.
# Other values are ignored by classic server build
#
# Type: string (special format)
#
#GCPolicy = combined

The V2 default is combined. The earlier SuperServer default is
background. The classic default is cooperative. I have built
special copies of V1.0 and V1.5 servers that do cooperative
garbage collection for applications that got stuck in the
background garbage collector. They seem to work. Since V1.5
works OK for you, I'd try background first. If that doesn't
help, then try cooperative. But first rebuild the database
with reserved space.


What we are saying is that there's something unusually about your
application because others have been running V2 successfully for
many months without seeing what your seeing.


Regards,


Ann