Export setup
The Delivery Endpoint serves cached items from the plugin_datahub_productsup_cache_item table (see
Basic Configuration). Depending on the Save Hook, that cache needs to be filled by
running the datahub:export:productsup command:
Save Hook = Direct Export: every object save already writes to the cache table. Running the command is optional, but useful to refresh the entries the configuration currently matches, for example after a schema or workspace change. It is not a complete reset, see the note below.Save Hook = QueueorDisabled: the command is required to move data into the cache table. Set it up as a recurring cron job.
There is no Pimcore Studio button or Symfony Messenger transport involved. The command runs synchronously and, via the webmozarts/console-parallelization package, can fan out work across multiple child processes.
Earlier, Admin Classic-based versions of this bundle offered a "Save, reset and clear queue" action that cleared the
cache table and repopulated the queue in one click. The underlying mechanism (ResetConfigEvent) still exists and is
reachable through the Studio Backend API by saving the configuration with saveType: reset, but the current Pimcore
Studio configuration panel does not expose a button for it. Deleting a configuration triggers the same reset.
A full run of datahub:export:productsup is not an exact substitute. It only visits items that the configuration
still matches (right class, inside a workspace path, published), so it drops cache entries for items that fail
export validation but leaves entries for items that no longer match the configuration at all. A reset deletes every
cache entry of the configuration before refilling the queue.
Export modes
- Full export: recomputes and writes every relevant item of a configuration, regardless of the queue. Items that no longer pass export validation are removed from the cache table.
- Queue-only export (
--only-queue-items): only processes items currently in theplugin_datahub_queue_itemtable, whichSave Hook = Queuepopulates on object save. Processed queue entries are deleted afterwards.
Command usage
# Full export of every active `productsup` configuration
bin/console datahub:export:productsup
# Full export of a single configuration
bin/console datahub:export:productsup --config-id=products-marketplace
# Only process items currently in the queue
bin/console datahub:export:productsup --only-queue-items
Without --config-id, the command runs for every active Datahub configuration of type productsup. See
bin/console datahub:export:productsup --help for the parallelization options (for example, the number of child
processes) inherited from the webmozarts/console-parallelization package.
Schedule the command as a regular cron job on your infrastructure. See Crontab Guru to build a cron expression.