diff --git a/Utilities/DataSampling/src/DataSampling.cxx b/Utilities/DataSampling/src/DataSampling.cxx index 09cada920ae78..82faa070d25dd 100644 --- a/Utilities/DataSampling/src/DataSampling.cxx +++ b/Utilities/DataSampling/src/DataSampling.cxx @@ -57,12 +57,17 @@ void DataSampling::GenerateInfrastructure(WorkflowSpec& workflow, const boost::p void DataSampling::DoGenerateInfrastructure(Dispatcher& dispatcher, WorkflowSpec& workflow, const boost::property_tree::ptree& policiesTree, size_t threads, const std::string& host) { LOG(debug) << "Generating Data Sampling infrastructure..."; + std::set ids; // keep track of the ids we have met so far for (auto&& policyConfig : policiesTree) { // We don't want the Dispatcher to exit due to one faulty Policy try { auto policy = DataSamplingPolicy::fromConfiguration(policyConfig.second); + if (ids.count(policy.getName()) == 1) { + LOG(error) << "A policy with the same id has already been encountered (" + policy.getName() + ")"; + } + ids.insert(policy.getName()); std::vector machines; if (policyConfig.second.count("machines") > 0) { for (const auto& machine : policyConfig.second.get_child("machines")) { diff --git a/Utilities/Mergers/src/MergerBuilder.cxx b/Utilities/Mergers/src/MergerBuilder.cxx index 904f2ed4db6e6..34a7db62f33db 100644 --- a/Utilities/Mergers/src/MergerBuilder.cxx +++ b/Utilities/Mergers/src/MergerBuilder.cxx @@ -67,7 +67,7 @@ framework::DataProcessorSpec MergerBuilder::buildSpec() { framework::DataProcessorSpec merger; - merger.name = mergerIdString() + "-" + mName + std::to_string(mLayer) + "l-" + std::to_string(mId); + merger.name = mConfig.detectorName + "-" + mergerIdString() + "-" + mName + std::to_string(mLayer) + "l-" + std::to_string(mId); merger.inputs = mInputSpecs;