[
https://issues.apache.org/jira/browse/GEODE-9148?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17459566#comment-17459566
]
ASF subversion and git services commented on GEODE-9148:
--------------------------------------------------------
Commit 9359388972ca6a8d842e4601682025ee1a7bd6be in geode's branch
refs/heads/develop from Darrel Schneider
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=9359388 ]
GEODE-9148: prevent expiration reschedules (#6514)
When expiration compares timestamps it will now
add half a second to "now" to allow expiration if
we are close to the scheduled second.
This prevents an unneeded reschedule.
> expiration may be rescheduled when it is not needed
> ---------------------------------------------------
>
> Key: GEODE-9148
> URL: https://issues.apache.org/jira/browse/GEODE-9148
> Project: Geode
> Issue Type: Improvement
> Components: expiration
> Reporter: Darrel Schneider
> Assignee: Darrel Schneider
> Priority: Major
> Labels: GeodeOperationAPI, pull-request-available
> Fix For: 1.15.0
>
>
> Geode expiration is configured with timeouts whose units are seconds. But the
> internal implementation uses milliseconds. I noticed recently that for
> whatever reason, the Timer was firing scheduled events a few milliseconds
> early. This caused the expiration code to reschedule it for just a few
> milliseconds and then do all the expiration checking again. It has also been
> noticed that last-access-time expiration may find a timestamp on another
> member that is just a few milliseconds away from expiration. Once again this
> causes a reschedule.
> It seems like if the millisecond time is within 500 millis of expiring then
> we could go ahead and expire without rescheduling.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)