Publish "messages persisted" events when unlocking queues after a persistence run

This commit is contained in:
Jon Chambers
2024-11-07 17:19:55 -05:00
committed by Jon Chambers
parent 084607f359
commit 562b495a18
13 changed files with 63 additions and 78 deletions

View File

@@ -0,0 +1,9 @@
-- Unlocks a message queue when a persist-to-DynamoDB run has finished and publishes an event notifying listeners that
-- messages have been persisted
local persistInProgressKey = KEYS[1] -- simple string key whose presence indicates a lock
local eventChannelKey = KEYS[2] -- the channel on which to publish the "messages persisted" event
local eventPayload = ARGV[1] -- [bytes] a protobuf payload for a "message persisted" pub/sub event
redis.call("DEL", persistInProgressKey)
redis.call("SPUBLISH", eventChannelKey, eventPayload)