Skip to content

Fix garbage collection for keys registered with SetEX

Timo Furrer requested to merge fix-gc-for-expiring-set into master
  • Fix garbage collection for keys registered with SetEX

The new SetEX() method to register expiring keys in a hash doesn't use the internal data baking map which was the one used by GC(). For the new SetEX() (and agent registrar) the garbage collection only worked because there was ScanAndGC which operated directly on the Redis data to retrieve keys.

This change set implements yet another baking "set" for keys registered with SetEX(). The GC() method also obtains keys from that "set" in addition to the already existing data map.

The garbage collection code and how the baking data structures work will be refactored with #415 so this change set doesn't clean up the mix between the new and old way of registering data and doing garbage collection.

Edited by Timo Furrer

Merge request reports