1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
|
Notes for Grid File Catalog
1) Database schema
It is described in Cns_oracle_tbl.sql or Cns_mysql_tbl.sql.
Compared to the CASTOR production Name Server, the following
columns have been added to the Cns_file_metadata table: acl
and guid. The tables Cns_symlinks and Cns_file_replica have
been added. The tables for tape information Cns_tp_pool and
Cns_seg_metadata have been removed.
2) New methods
Cns_starttrans() to start transaction mode
Cns_endtrans() to commit the transaction
Cns_aborttrans() to rollback. Please note that automatic rollback
is done in case of failure of any individual request.
Cns_addreplica() to add a replica to a guid or an lfn
Cns_delreplica() to remove a replica for a guid or an lfn
Cns_listreplica() to list the replicas for a guid or an lfn
Cns_readdirg() gives the same information as Cns_readdirx() + guid
Cns_statr() to get system information for a file having a given replica
3) New entry points for action on guid instead of lfn
The usual names are simply postfixed by the letter 'g'.
Cns_creatg() to create a file with a given lfn and guid
Cns_mkdirg() to create a directory with a given lfn and guid
Cns_opendirg() to open for list a directory with a given lfn or guid
Cns_setfsizeg() to set the size for a file with a given lfn or guid
Cns_statg() to get system information about a file/directory
having a specified lfn or guid.
4) Aliases and symlinks
Cns_listlinks() to list all symbolic links pointing at a given lfn or guid
Cns_lstat() to list symbolic link properties
Cns_symlink() can be used to add an alias to a primary LFN.
Cns_unlink() can be used to remove an alias.
5) ACLs
Cns_getacl() to list the ACLs attached to a file/directory
Cns_setacl() to specify ACLs attached to a file/directory
6) Setup
For the moment, clients should define the environment variable
CNS_HOST to the hostname of the machine where the File Catalog
server runs.
On the File Catalog server machine, there should be a file
/etc/NSCONFIG to specify the DB CONNECT parms (please see man nsdaemon).
The top directory (/) is created automatically at daemon startup
if it does not exist yet.
7) Code repository
Everything is in my AFS workspace ~baud/w0/DPM
James has read-access to it.
To compile, it is enough to do
make
in the 'ns' sub-directory.
To use MySQL instead of Oracle, change config/site.def to say
UseMySQL YES
instead of
UseOracle YES
and in the ns sub-directory
../imake/imake -I../config
make clobber
make
8) Startup/Shutdown
To start the daemon:
nsdaemon
To shutdown
nsshutdown -h hostname
where hostname is the host where the daemon runs.
|