Implement queue synchronization for keywords

Created on 25 April 2024, 2 months ago

Problem/Motivation

Due to the way OrangeDamQueueSubscriber implements `itemPreDeleteSynchronize()` only content items can be synchronized between the deletion queue and import queue. Keywords do not have a `deletionDate` property nor do they have a SystemIdentifier, so the logic fails for keywords (without damaging anything).

It would be good to minimize race conditions between keyword migration/creation queue and keyword deletion queue.

Steps to reproduce

Queue some deleted keywords:

`drush orange-dam:queue-deleted-keywords-since-time "long enough ago to have some deleted keywords"`

Then process the deletion queue:

`drush orange-dam:migration-process-deletion-queue `

You will notice that the code in itemPreDeleteSynchronize() never checks for queued keywords in the migration/import queue.

Proposed resolution

Find a way to synchronize keyword deletion and importation queues

Remaining tasks

Design a fix and implement it in a merge request.

User interface changes

none

API changes

none

Data model changes

We might need to add a property to OrangeDamKeyword objects.

✨ Feature request
Status

Active

Version

1.0

Component

Code

Created by

πŸ‡ΊπŸ‡ΈUnited States apotek

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

Production build 0.69.0 2024