tilequeue
tilequeue copied to clipboard
Add automatic expiry to in-flight tiles
Sqs drops messages after some time. When this occurs, nothing removes the corresponding tile from the in-flight set. This is problematic because once we get into this state we would never re-enqueue that tile.
If we modeled the in-flight set as individual keys, we could set an expires on them to match the sqs ttl, or be slightly more conservative.
Doesn't affect the API, moving to v1.1
From a root cause analysis this week (dev and prod):
We could also modify update procedure check the queue lengths (visible, delayed, notvisible) and if they're all zero then to wipe the in-flight list.