FileManagerBase

FileManagerBase is a base class for all the specific File Managers

class DIRAC.DataManagementSystem.DB.FileCatalogComponents.FileManager.FileManagerBase.FileManagerBase(database=None)

Bases: object

Base class for all the specific File Managers

__init__(database=None)
addFile(lfns, credDict, connection=False)

Add files to the catalog

Parameters:

lfns (dict) – dict{ lfn : info}. ‘info’ is a dict containing PFN, SE, Size and Checksum the SE parameter can be a list if we have several replicas to register

addFileAncestors(lfns, connection=False)

Add file ancestors to the catalog

addReplica(lfns, connection=False)

Add replica to the catalog

changeFileGroup(lfns)

Get set the group for the supplied files

Parameters:
  • lfns – dictionary < lfn : group >

  • newGroup (int/str) – optional new group/groupID the same for all the supplied lfns

changeFileMode(lfns)

“ Set the mode for the supplied files

Parameters:
  • lfns – dictionary < lfn : mode >

  • newMode (int) – optional new mode the same for all the supplied lfns

changeFileOwner(lfns)

Set the owner for the supplied files

Parameters:
  • lfns – dictionary < lfn : owner >

  • newOwner (int/str) – optional new user/userID the same for all the supplied lfns

countFilesInDir(dirId)

Count how many files there is in a given Directory

Parameters:

dirID (int) – directory id

Returns:

S_OK(value) or S_ERROR

exists(lfns, connection=False)

Determine whether a file exists in the catalog

getDirectoryReplicas(dirID, path, allStatus=False, connection=False)

Get the replicas for all the Files in the given Directory

Parameters:
  • dirID (int) – ID of the directory

  • path (unused) – useless

  • allStatus (bool) – whether all replicas and file status are considered If False, take the visibleFileStatus and visibleReplicaStatus values from the configuration

getFileAncestors(lfns, depths, connection=False)
getFileCounters(connection=False)

Get a number of counters to verify the sanity of the Files in the catalog

getFileDescendents(lfns, depths, connection=False)
getFileIDsInDirectory(dirID, requestString=False)
Get a list of IDs for all the files stored in given directories or their

subdirectories

Parameters:
  • dirID (int or list[int]) – single directory ID or a list of directory IDs

  • requestString (bool) – if True return result as a SQL SELECT string

Returns:

list of file IDs or SELECT string

getFileMetadata(lfns, connection=False)

Get file metadata from the catalog

getFileSize(lfns, connection=False)

Get file size from the catalog

getFilesInDirectory(dirID, verbose=False, connection=False)
getLFNForGUID(guids, connection=False)

Returns the LFN matching a given GUID

getPathPermissions(paths, credDict, connection=False)

Get the permissions for the supplied paths

getReplicaCounters(connection=False)

Get a number of counters to verify the sanity of the Replicas in the catalog

getReplicaStatus(lfns, connection=False)

Get replica status from the catalog

getReplicas(lfns, allStatus, connection=False)

Get file replicas from the catalog

getReplicasByMetadata(metaDict, path, allStatus, credDict, connection=False)

Get file replicas for files corresponding to the given metadata

getSEDump(seNames)

Return all the files at a given SE, together with checksum and size

Parameters:

seName – list of storageElement names

Returns:

S_OK with list of tuples (SEName, lfn, checksum, size)

isFile(lfns, connection=False)

Determine whether a path is a file in the catalog

removeFile(lfns, connection=False)
removeReplica(lfns, connection=False)

Remove replica from catalog

setDatabase(database)
setFileGroup(path, gname)

Set the file group

Parameters:
  • path (str, int or list[int]) – file path as a string or int or list of ints or select statement

  • gname (str or int) – new group as a string or int gid

setFileMode(path, mode)

Set the file mode

Parameters:
  • path (str, int or list[int]) – file path as a string or int or list of ints or select statement

  • mode (int) – new mode

setFileOwner(path, owner)

Set the file owner

Parameters:
  • path (str, int or list[int]) – file path as a string or int or list of ints or select statement

  • owner (str or int) – new user as a string or int uid

setFileStatus(lfns, connection=False)

Get set the group for the supplied files

setReplicaHost(lfns, connection=False)

Set replica host in the catalog

setReplicaStatus(lfns, connection=False)

Set replica status in the catalog