1512db43ec
This patch changes markers so that they are generated using a per-queue side counter. A heuristic is used to mitigate a race condition. Due to the new semantics, partial inserts are no longer possible due to collisions, which ended up simplifying the retry logic for posting messages. As a consequence of this patch, the last message posted no longer needs to remain in the queue indefinitely, rendering marconi-gc unnecessary, and so it has been removed. Also, since the mongod GC worker runs once a minute, the queries no longer filter out expired-but-not-yet-gc'd messages; on average, a message may live more than 30 seconds passed it's expected lifetime, but I do not think that this will harm or complicate any application building on top of Marconi, practically speaking. That being said, it is worth calling out in documentation. Closes-Bug: #1218602 Change-Id: I34e24e7dd7c4e017c84eb5929ce37ad4c9e5266a