Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ReplicaManager : crash if no SE defined #145

Closed
closier opened this issue Jul 8, 2011 · 3 comments
Closed

ReplicaManager : crash if no SE defined #145

closier opened this issue Jul 8, 2011 · 3 comments
Assignees

Comments

@closier
Copy link
Contributor

closier commented Jul 8, 2011

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
Copy link
Contributor

graciani commented Jul 8, 2011

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
Copy link
Contributor Author

closier commented Jul 8, 2011

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:
#145 (comment)

@ghost ghost assigned atsareg and graciani Aug 14, 2011
@graciani
Copy link
Contributor

this is now protected

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants