Skip to content

_state.py: Use separate task identifier

Jürg Billeter requested to merge juerg/duplicate-artifact-job into master

State.add_task() required the job name to be unique in the session. However, the tuple (action_name, full_name) is not guaranteed to be unique. E.g., multiple ArtifactElement objects with the same element name may participate in a single session. Use a separate task identifier to fix this.

This fixes errors such as the following:

BUG     Trying to add task 'Pull:target' to 'OrderedDict([(('Pull', 'compose-all'), <buildstream._state._Task object at 0x7f0de34b94f0>), (('Pull', 'import-bin'), <buildstream._state._Task object at 0x7f0de34b9820>), (('Pull', 'import-dev'), <buildstream._state._Task object at 0x7f0de34b9af0>), (('Pull', 'target'), <buildstream._state._Task object at 0x7f0de34b9d60>)])'
Edited by Jürg Billeter

Merge request reports

Loading