Skip to content

Modify EOS to fill new fields passed to CTA

For reference check: #86 (comment 5832864)

Previously, these fields were passed to CTA as part of the extended attributes xattr:

  • disk_file_id
  • archive_file_id
  • storage_class

As the result of the collaboration with dCache, it was decided that these would be promoted to first class citizen fields: #86 (comment 5832864)

message Metadata {
   uint64 fid                  =  1;      //< file/container id
   uint64 pid                  =  2;      //< parent id
   cta.common.Clock ctime      =  3;      //< change time
   cta.common.Clock mtime      =  4;      //< modification time
   cta.common.Clock btime      =  5;      //< birth time
   cta.common.Clock ttime      =  6;      //< tree modification time
   cta.common.OwnerId owner    =  7;      //< ownership
   uint64 size                 =  8;      //< size 
   sint32 mode                 = 10;      //< mode
   string lpath                = 11;      //< logical path
   map<string, string> xattr   = 12;      //< xattribute map
   cta.common.ChecksumBlob csb = 13;      //< array of checksums
+
+  // Additions for dCache integration
+
+  string disk_file_id         = 14;      //< String identifier for Disk File ID (= fid above)
+  uint64 archive_file_id      = 15;      //< CTA Archive File ID
+  string storage_class        = 16;      //< CTA Storage Class
 };

Therefore, we need to update EOS to fill in these new fields.


In addition to these fields, we will also update EOS to pass cta.common.Clock btime to CTA. This is required by #86.


Corresponding EOS issue: https://its.cern.ch/jira/projects/EOS/issues/EOS-5394

Edited by Joao Afonso