Patent ID: 8825666

Claim:
A method comprising: associating, by a key management engine of a data processing system, a slot of a key-value map with a plurality of keys; assigning, by the key management engine, a first key-value pair to the slot of the key-value map, the first key-value pair including a first value and a first valid key of the plurality of keys associated with the slot; receiving, by the key management engine, an indication that a first key is to be invalidated and, in response, setting a status of the first key to invalid; in response to the first key becoming invalid, reusing, by the key management engine, the slot of the key-value map by assigning to the slot a second key-value pair including a second value and a second valid key of the plurality of keys associated with the slot, wherein the first key is referenced by one or more entries of a circular buffer, each of the one or more entries of the circular buffer including a reference to the first key and buffered data; in response to setting the status of the first key to invalid, tracking, by the key management engine, progress of the circular buffer; and setting, by the key management engine, the status of the first key to valid when the first key is no longer referenced by the one or more entries of the circular buffer, wherein the first key is no longer referenced by the one or more entries of the circular buffer after a full rotation of the circular buffer.