DIRACGrid / DIRAC

DIRAC Grid
http://diracgrid.org
GNU General Public License v3.0
112 stars 174 forks source link

ReplicaManager : crash if no SE defined #145

Closed closier closed 12 years ago

closier commented 13 years ago

If th ereplicamanager try to handle a SE which does not exist it crashes. SOm eprotection are need I think:

StorageFactory._getConfigStorageName: Failed to get storage options Path /Resources/StorageElements/CERN_Sandbox does not exist or it's not a section Traceback (most recent call last): File "/afs/cern.ch/lhcb/software/releases/DIRAC/DIRAC_v5r13p15/InstallArea/scripts/dirac-dms-remove-files", line 40, in res = rm.removeFile( lfnList ) File "/afs/cern.ch/lhcb/software/releases/DIRAC/DIRAC_v5r13p15/InstallArea/python/DIRAC/DataManagementSystem/Client/ReplicaManager.py", line 1803, in removeFile res = self.removeFile( lfnDict ) File "/afs/cern.ch/lhcb/software/releases/DIRAC/DIRAC_v5r13p15/InstallArea/python/DIRAC/DataManagementSystem/Client/ReplicaManager.py", line 1823, in removeFile res = self.removeReplica( storageElementName, fileTuple ) File "/afs/cern.ch/lhcb/software/releases/DIRAC/DIRAC_v5r13p15/InstallArea/python/DIRAC/DataManagementSystem/Client/ReplicaManager.py", line 1908, in removeReplica res = self.removePhysicalReplica( storageElementName, pfnDict.keys() ) File "/afs/cern.ch/lhcb/software/releases/DIRAC/DIRAC_v5r13p15/InstallArea/python/DIRAC/DataManagementSystem/Client/ReplicaManager.py", line 2072, in __removePhysicalReplica res = storageElement.removeFile( pfnsToRemove ) File "/afs/cern.ch/lhcb/software/releases/DIRAC/DIRAC_v5r13p15/InstallArea/python/DIRAC/Resources/Storage/StorageElement.py", line 421, in removeFile return self.executeFunction( pfn, 'removeFile' ) File "/afs/cern.ch/lhcb/software/releases/DIRAC/DIRAC_v5r13p15/InstallArea/python/DIRAC/Resources/Storage/StorageElement.py", line 544, in __executeFunction for storage in self.storages: AttributeError: StorageElement instance has no attribute 'storages'

graciani commented 13 years ago

dirac-dms-remove-files tries to remove all replicas of an existing LFN. what happens here (with the little info I get) is that there are replicas on SE that are not defined, thus the files can never get removed. I agree that we will have to add a protection, but the command will failed. From my point of view this is an internal inconsistency in your LFC entries, against which we can protect, but with deeper implications.

closier commented 13 years ago

The point is to put a protection to avoid a crash. But I agree it will not fix the fact that some files are registered with a info which do not exist anymore and it is an other story.

Regards

[cid:CCD358DD-C168-4467-A4DA-82C4EBDCB221@cern.ch]Joel Closier LHCb Experiment

Le 8 juil. 2011 14:31, graciani a crit :

dirac-dms-remove-files tries to remove all replicas of an existing LFN. what happens here (with the little info I get) is that there are replicas on SE that are not defined, thus the files can never get removed. I agree that we will have to add a protection, but the command will failed. From my point of view this is an internal inconsistency in your LFC entries, against which we can protect, but with deeper implications.

Reply to this email directly or view it on GitHub: https://github.com/DIRACGrid/DIRAC/issues/145#issuecomment-1532052

graciani commented 12 years ago

this is now protected