@@ -283,6 +283,9 @@ TObject* CcdbDatabase::retrieveTObject(std::string path, std::map<std::string, s
283283 auto * object = ccdbApi->retrieveFromTFileAny <TObject>(path, metadata, timestamp, headers);
284284 if (object == nullptr ) {
285285 ILOG (Warning, Support) << " We could NOT retrieve the object " << path << " with timestamp " << timestamp << " ." << ENDM;
286+ for (auto [metaKey, metaVal] : metadata) {
287+ ILOG (Debug, Support) << " and with metadata: [" << metaKey << " , " << metaVal << " ]" << ENDM;
288+ }
286289 return nullptr ;
287290 }
288291 ILOG (Debug, Support) << " Retrieved object " << path << " with timestamp " << timestamp << ENDM;
@@ -307,11 +310,14 @@ void* CcdbDatabase::retrieveAny(const type_info& tinfo, const string& path, cons
307310 return object;
308311}
309312
310- std::shared_ptr<o2::quality_control::core::MonitorObject> CcdbDatabase::retrieveMO (std::string objectPath, std::string objectName, long timestamp, const core::Activity& activity)
313+ std::shared_ptr<o2::quality_control::core::MonitorObject> CcdbDatabase::retrieveMO (std::string objectPath, std::string objectName,
314+ long timestamp, const core::Activity& activity,
315+ const std::map<std::string, std::string>& metadataToRetrieve)
311316{
312317 string fullPath = activity.mProvenance + " /" + objectPath + " /" + objectName;
313318 map<string, string> headers;
314319 map<string, string> metadata = activity_helpers::asDatabaseMetadata (activity, false );
320+ metadata.insert (metadataToRetrieve.begin (), metadataToRetrieve.end ());
315321 TObject* obj = retrieveTObject (fullPath, metadata, timestamp, &headers);
316322
317323 // no object found
@@ -348,10 +354,13 @@ std::shared_ptr<o2::quality_control::core::MonitorObject> CcdbDatabase::retrieve
348354 return mo;
349355}
350356
351- std::shared_ptr<o2::quality_control::core::QualityObject> CcdbDatabase::retrieveQO (std::string qoPath, long timestamp, const core::Activity& activity)
357+ std::shared_ptr<o2::quality_control::core::QualityObject> CcdbDatabase::retrieveQO (std::string qoPath, long timestamp,
358+ const core::Activity& activity,
359+ const std::map<std::string, std::string>& metadataToRetrieve)
352360{
353361 map<string, string> headers;
354362 map<string, string> metadata = activity_helpers::asDatabaseMetadata (activity, false );
363+ metadata.insert (metadataToRetrieve.begin (), metadataToRetrieve.end ());
355364 auto fullPath = activity.mProvenance + " /" + qoPath;
356365 TObject* obj = retrieveTObject (fullPath, metadata, timestamp, &headers);
357366 if (obj == nullptr ) {
0 commit comments