Loading
Issue #3611089: Prevent duplicate items in the node_revision_delete_requeue queue
The requeue queue had no deduplication: every processing round of a node whose old revisions are exclusively time-protected appended a new requeue item while the already pending item waited for its requeue time. Frequently saved nodes (e.g. feed imports) accumulated hundreds of duplicates per node.
Mirror the semaphore-table approach the module already uses for the main queue: a queue_node_revision_delete_requeue map table, checked before creating a requeue item and released when the item leaves the requeue queue. An update hook creates the table, drops existing duplicate items and backfills the map from the surviving items.
Closes #3611089