Unlimited value is supported for dirty pages limit. Update of dirtyPagesTs was fixed.
@@ -2561,29 +2561,26 @@ public final class OWOWCache extends OAbstractWriteCache implements OWriteCache,
} else {
dirtyPagesLimit -= (int) (hardDirtyPagesLimit * 0.1);
- dirtyPageUpdateTs = ts;
-
if (dirtyPagesLimit <= 0) {
dirtyPagesLimit = 1;
}
}
+ dirtyPageUpdateTs = ts;
} else if (dirtyPageUpdateTs < 0 || dirtyPageUpdateTs - ts >= 5L * 60L * 1_000_000_000L) {
if (dirtyPagesLimit > 0) {
assert dirtyPagesLimit <= hardDirtyPagesLimit;
-
if (dirtyPagesLimit == hardDirtyPagesLimit) {
dirtyPagesLimit = -1;
} else {
dirtyPagesLimit += (int) (hardDirtyPagesLimit * 0.1);
-
- dirtyPageUpdateTs = ts;
-
if (dirtyPagesLimit > hardDirtyPagesLimit) {
dirtyPagesLimit = hardDirtyPagesLimit;
}
}
}
+
+ dirtyPageUpdateTs = ts;
}
if (localDirtyPagesBySegment.size() > 1) {
