Topic: Sweep / Garbage collector, the garbage is removed, but the basis grows
Server Firebird 2.5, basis in the size 5GB, for days grows approximately on 1GB.
The useful data which are necessary and remain in basis very little, we admit 100MB a day.
Growth of the size of basis directly depends on the table with the variable data. During the day millions records are written to it and from it are deleted (INSERT/DELETE). UPDATE - is not present.
In a config:
#GCPolicy = combined
I.e. it turns out so - for the morning basis 5GB, by the evening 6GB.
If I do so:
I receive basis 5.1GB.
If I do only sweep the basis continues to grow, and by next evening its size 7GB.
As I to myself understand the operation mechanism:
1) the garbage collector, after not strong a considerable quantity (by default) transactions, should clean itself garbage (the size of basis does not decrease), and new happen in earlier selected and released place of basis. That that happens during the day.
2) sweep - manual cleaning after which the size of basis does not decrease and it is similar to a garbage collector, record begins happens in earlier led out place.
As though the basis should (figuratively) for first days grow 1GB, and then on the sly grow, on the 100MB a day. But cleaning becomes, and the basis continues to grow.
Where an error, what not so?