Skip to content

Commit b78b3e7

Browse files
committed
ACP2E-3387: [Cloud] Magento: queue message has been deleted
1 parent 8cc0fac commit b78b3e7

File tree

1 file changed

+5
-2
lines changed
  • app/code/Magento/MysqlMq/Model/ResourceModel

1 file changed

+5
-2
lines changed

app/code/Magento/MysqlMq/Model/ResourceModel/Queue.php

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -173,9 +173,12 @@ public function deleteMarkedMessages(): void
173173

174174
$select = $connection->select()
175175
->from(['queue_message_status' => $this->getMessageStatusTable()], ['message_id'])
176-
->where('status <> ?', QueueManagement::MESSAGE_STATUS_TO_BE_DELETED)
176+
->where('status = ?', QueueManagement::MESSAGE_STATUS_TO_BE_DELETED)
177177
->distinct();
178-
$connection->delete($this->getMessageTable(), 'id NOT IN (' . $select->assemble() . ')');
178+
$messageIds = $connection->fetchCol($select);
179+
foreach (array_chunk($messageIds, 10000) as $messageIdsChunk) {
180+
$connection->delete($this->getMessageTable(), ['id IN (?)' => $messageIdsChunk]);
181+
}
179182
}
180183

181184
/**

0 commit comments

Comments
 (0)