mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-11-03 12:53:35 +08:00
When a data manager job is submitted via POST /api/jobs (async path), the Celery task reconstructs the tool from raw XML without a data_manager_id, causing DataManagerJobAssociation to store the tool XML id instead of the conf id when those differ. exec_after_process then fails with "Invalid data manager requested" because DataManagers registry is keyed by conf id. Fix by preferring self.data_manager_id (always set correctly at toolbox load time) over job.data_manager_association.data_manager_id in exec_after_process. Add a regression test using the "data_manager" test tool (tool XML id) which is registered in sample_data_manager_conf.xml as id="test_data_manager", replicating the exact id mismatch seen in production (e.g. bowtie2).