From 55f888621804f6b826c78756c72d1b7a33146a45 Mon Sep 17 00:00:00 2001 From: Jan Fiete Date: Wed, 23 Jun 2021 11:17:13 +0200 Subject: [PATCH 1/2] adding meta data to aod merger --- Analysis/Core/src/AODMerger.cxx | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/Analysis/Core/src/AODMerger.cxx b/Analysis/Core/src/AODMerger.cxx index 13d71784753d2..36e0a0ed2f81f 100644 --- a/Analysis/Core/src/AODMerger.cxx +++ b/Analysis/Core/src/AODMerger.cxx @@ -73,6 +73,7 @@ int main(int argc, char* argv[]) in.open(inputCollection); TString line; bool connectedToAliEn = false; + TMap* metaData = nullptr; int mergedDFs = 0; while (in.good()) { in >> line; @@ -94,6 +95,30 @@ int main(int argc, char* argv[]) keyList->Sort(); for (auto key1 : *keyList) { + if (((TObjString*)key1)->GetString().EqualTo("metaData")) { + auto metaDataCurrentFile = (TMap*)inputFile->Get("metaData"); + if (metaData == nullptr) { + metaData = metaDataCurrentFile; + // outputFile->WriteObject(&metaData, "metaData"); + outputFile->cd(); + metaData->Write("metaData", TObject::kSingleKey); + } else { + for (auto metaDataPair : *metaData) { + auto metaDataKey = ((TPair*)metaDataPair)->Key(); + if (metaDataCurrentFile->Contains(((TObjString*)metaDataKey)->GetString())) { + auto value = (TObjString*)metaData->GetValue(((TObjString*)metaDataKey)->GetString()); + auto valueCurrentFile = (TObjString*)metaDataCurrentFile->GetValue(((TObjString*)metaDataKey)->GetString()); + if (!value->GetString().EqualTo(valueCurrentFile->GetString())) { + printf("WARNING: Metadata differs between input files. Key %s : %s vs. %s\n", ((TObjString*)metaDataKey)->GetString().Data(), + value->GetString().Data(), valueCurrentFile->GetString().Data()); + } + } else { + printf("WARNING: Metadata differs between input files. Key %s is not present in current file\n", ((TObjString*)metaDataKey)->GetString().Data()); + } + } + } + } + if (!((TObjString*)key1)->GetString().BeginsWith("DF_")) { continue; } From fea22f1594129c366431fdb1998542c921e66096 Mon Sep 17 00:00:00 2001 From: jgrosseo Date: Thu, 24 Jun 2021 09:24:02 +0200 Subject: [PATCH 2/2] Update AODMerger.cxx --- Analysis/Core/src/AODMerger.cxx | 1 - 1 file changed, 1 deletion(-) diff --git a/Analysis/Core/src/AODMerger.cxx b/Analysis/Core/src/AODMerger.cxx index 36e0a0ed2f81f..c26b0119e9cb7 100644 --- a/Analysis/Core/src/AODMerger.cxx +++ b/Analysis/Core/src/AODMerger.cxx @@ -99,7 +99,6 @@ int main(int argc, char* argv[]) auto metaDataCurrentFile = (TMap*)inputFile->Get("metaData"); if (metaData == nullptr) { metaData = metaDataCurrentFile; - // outputFile->WriteObject(&metaData, "metaData"); outputFile->cd(); metaData->Write("metaData", TObject::kSingleKey); } else {