[Glass] gc settings
dale.henrichs at gemtalksystems.com
Fri Feb 14 11:44:39 PST 2014
I talked this over with one of the guys here and he suggests that the trick
is to not create shadow pages faster than the gc gem can handle them ...
the gcgems are pretty aggreessive by default ...
He suggests that you commit frequently and the monitor the
PagesNeedsReclaiming stat in your migration loop and when it gets above a
certain threshold (a couple thousand pages?) stop migrating and go into an
"idle loop" where you abort (to avoid CR backlog and allow pages to run
through their normal life cycle) and check for the stat to drop below
another threshold (250 pages? once it's below your threshold get going
regarding the epoch gc. the become operation does not itself generate a lot
of dead if you dow a become between a persistent object and a temp object
and commit, the temp object will be written as the persist object and no
garbage will be produced ... you will however create shadowpages as the new
versions of the objects are copied to new pages (page reclaim is why the
gcgems get revved up) ... now if you are creating short-lived persist
objects as some other part of your migration process then an epoch will
help keep those dead boys in check ...
On Fri, Feb 14, 2014 at 4:07 AM, Otto Behrens <otto at finworks.biz> wrote:
> Do you have a set of GcUser settings that we can use for aggressive
> garbage collection during a migration process? We would like to do the
> garbage collection (epoch and reclaim) while the migration process is
> generating a lot of dead stuff. We don't mind if the migration takes a
> bit longer. We do mind if the migration generates a lot of free space
> in the extent.
> Glass mailing list
> Glass at lists.gemtalksystems.com
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Glass