...
BugZero found this defect 2785 days ago.
Imagine the scenario of the node1 that is a primary becomes secondary while the node2 becomes a new primary. If the key expiration coincides with the transition its possible that node1 writes a new key just before it stops being primary and node2 reads the stale cache and adds another key. As a result the system.keys collection will have two different keys with the close expiresAt values. This can lead to the scenario when the key is not available to a secondary when 2 keys with close expiration just expired but the new key is not added by a KeyUpdater because the node has a clock skew.
misha.tyulenev commented on Tue, 13 Jun 2017 19:32:25 +0000: The fix for SERVER-28972 will make this scenario unfeasible.