Improve cmrf_webform queueing functionality

Created on 2 December 2024, 21 days ago

Problem/Motivation

The queueing functionality provided by the cmrf_webform submodule has a couple of limitations:

  • It doesn't use a QueueWorker plugin. A bunch of custom code could be removed if we added that instead. It would also integrate better with the Drupal queue ecosystem, modules like Queue UI and Dead Letter Queue . That last one is the main motivation for me to open this issue: now, when a submission is rejected by Civi, it gets stuck in the loop and is being retried forever, wasting a lot of resources.
  • It stores two complete entity objects in the queue. This wastes database space and will also possibly pass outdated entity objects to the queue worker. Instead, just the ID's should be stored in the queue item and the entities should be loaded inside the queue worker.

Proposed resolution

Rewrite the queueing code to use a QueueWorker and to store only ID's in queue items.

📌 Task
Status

Active

Version

2.1

Component

Code

Created by

🇧🇪Belgium dieterholvoet Brussels

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

Merge Requests

Comments & Activities

Production build 0.71.5 2024