From a9a8adbbbca420752f729fb9afaafdbe6fd7be3b Mon Sep 17 00:00:00 2001 From: serfon Date: Mon, 23 Feb 2026 18:12:07 +0100 Subject: [PATCH] fix: RucioFileCatalogClient.setMetadata returns empty result on success --- src/DIRAC/Resources/Catalog/RucioFileCatalogClient.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/DIRAC/Resources/Catalog/RucioFileCatalogClient.py b/src/DIRAC/Resources/Catalog/RucioFileCatalogClient.py index 2e30afd24d0..895ecc65809 100644 --- a/src/DIRAC/Resources/Catalog/RucioFileCatalogClient.py +++ b/src/DIRAC/Resources/Catalog/RucioFileCatalogClient.py @@ -751,7 +751,9 @@ def setMetadataBulk(self, pathMetadataDict): """Add metadata for the given paths""" resDict = {"Successful": {}, "Failed": {}} dids = [] + paths = [] for path, metadataDict in pathMetadataDict.items(): + paths.append(path) try: did = self.__getDidsFromLfn(path) did["meta"] = metadataDict @@ -760,8 +762,10 @@ def setMetadataBulk(self, pathMetadataDict): return S_ERROR(str(err)) try: self.client.set_dids_metadata_bulk(dids=dids, recursive=False) + resDict["Successful"] = {path: True for path in paths} except Exception as err: - return S_ERROR(str(err)) + resDict["Failed"] = {path: str(err) for path in paths} + return S_ERROR(resDict) return S_OK(resDict) @checkCatalogArguments