Github user wy96f commented on the issue:
https://github.com/apache/activemq-artemis/pull/2481
We add a pending counter to count enterCritical calls. If left time is less
than enter time and pending counter equals to 0, we don't expire component as
all threads have called leaveCritical and it maybe caused by clock drift.
When a clock jumps backwards, to avoid the edge case that enterCritical
is called during isExpired, we need to compare current time to latest timeEnter.
---
