Fixed triple flushing of meta information at the checkpoint.
@@ -267,15 +267,12 @@ public class GridCacheOffheapManager extends IgniteCacheOffheapManagerImpl imple
assert grp.dataRegion().pageMemory() instanceof PageMemoryEx;
syncMetadata(ctx);
-
- // Double flushing memory buckets for decrease a time on write lock.
- syncMetadata(ctx, ctx.executor(), false);
}
/** {@inheritDoc} */
@Override public void beforeCheckpointBegin(Context ctx) throws IgniteCheckedException {
- if (!ctx.nextSnapshot())
- syncMetadata(ctx);
+ // Optimization: reducing the holding time of checkpoint write lock.
+ syncMetadata(ctx, ctx.executor(), false);
}
/** {@inheritDoc} */
