From 3035a53d76389e42152a2c51269bd0de3a238332 Mon Sep 17 00:00:00 2001
From: Daniele Kruse <dkruse@cern.ch>
Date: Tue, 12 Apr 2016 16:54:42 +0200
Subject: [PATCH] Finished renaming eosid to diskid and move drInstance out of
 drData and renamed to "instance" simply

---
 catalogue/SqliteCatalogue.cpp            |  8 ++---
 catalogue/SqliteCatalogueTest.cpp        |  6 ++--
 common/dataStructures/ArchiveFile.cpp    |  2 ++
 common/dataStructures/ArchiveFile.hpp    |  1 +
 common/dataStructures/ArchiveRequest.cpp |  2 ++
 common/dataStructures/ArchiveRequest.hpp |  1 +
 common/dataStructures/DRData.cpp         |  6 ++--
 common/dataStructures/DRData.hpp         |  1 -
 objectstore/ArchiveRequest.cpp           | 34 ++++++++++++++------
 objectstore/ArchiveRequest.hpp           |  7 ++--
 objectstore/RetrieveRequest.cpp          |  3 --
 objectstore/cta.proto                    |  4 +--
 scheduler/OStoreDB/OStoreDB.cpp          |  2 +-
 scheduler/SchedulerTest.cpp              |  2 +-
 xroot_plugins/XrdCtaFile.cpp             | 41 ++++++++++--------------
 15 files changed, 65 insertions(+), 55 deletions(-)

diff --git a/catalogue/SqliteCatalogue.cpp b/catalogue/SqliteCatalogue.cpp
index 9a001c8416..df4e34558b 100644
--- a/catalogue/SqliteCatalogue.cpp
+++ b/catalogue/SqliteCatalogue.cpp
@@ -1832,7 +1832,7 @@ uint64_t cta::catalogue::SqliteCatalogue::createArchiveFile(
       ":RECOVERY_BLOB);";
   std::unique_ptr<SqliteStmt> stmt(m_conn.createStmt(sql));
 
-  stmt->bind(":DISK_INSTANCE", archiveFile.drData.drInstance);
+  stmt->bind(":DISK_INSTANCE", archiveFile.instance);
   stmt->bind(":DISK_FILE_ID", archiveFile.diskFileID);
   stmt->bind(":FILE_SIZE", archiveFile.fileSize);
   stmt->bind(":CHECKSUM_TYPE", archiveFile.checksumType);
@@ -1847,7 +1847,7 @@ uint64_t cta::catalogue::SqliteCatalogue::createArchiveFile(
 
   stmt->step();
 
-  return getArchiveFileId(archiveFile.drData.drInstance, archiveFile.diskFileID);
+  return getArchiveFileId(archiveFile.instance, archiveFile.diskFileID);
 }
 
 //------------------------------------------------------------------------------
@@ -1923,7 +1923,7 @@ std::list<cta::common::dataStructures::ArchiveFile>
     file.checksumValue = stmt->columnText(nameToIdx["CHECKSUM_VALUE"]);
     file.storageClass = stmt->columnText(nameToIdx["STORAGE_CLASS_NAME"]);
 
-    file.drData.drInstance = stmt->columnText(nameToIdx["DISK_INSTANCE"]);
+    file.instance = stmt->columnText(nameToIdx["DISK_INSTANCE"]);
     file.drData.drPath = stmt->columnText(nameToIdx["RECOVERY_PATH"]);
     file.drData.drOwner = stmt->columnText(nameToIdx["RECOVERY_OWNER"]);
     file.drData.drGroup = stmt->columnText(nameToIdx["RECOVERY_GROUP"]);
@@ -1983,7 +1983,7 @@ cta::common::dataStructures::ArchiveFile cta::catalogue::SqliteCatalogue::
     file.checksumValue = stmt->columnText(nameToIdx["CHECKSUM_VALUE"]);
     file.storageClass = stmt->columnText(nameToIdx["STORAGE_CLASS_NAME"]);
 
-    file.drData.drInstance = stmt->columnText(nameToIdx["DISK_INSTANCE"]);
+    file.instance = stmt->columnText(nameToIdx["DISK_INSTANCE"]);
     file.drData.drPath = stmt->columnText(nameToIdx["RECOVERY_PATH"]);
     file.drData.drOwner = stmt->columnText(nameToIdx["RECOVERY_OWNER"]);
     file.drData.drGroup = stmt->columnText(nameToIdx["RECOVERY_GROUP"]);
diff --git a/catalogue/SqliteCatalogueTest.cpp b/catalogue/SqliteCatalogueTest.cpp
index a6e7912004..409e35a039 100644
--- a/catalogue/SqliteCatalogueTest.cpp
+++ b/catalogue/SqliteCatalogueTest.cpp
@@ -846,7 +846,7 @@ TEST_F(cta_catalogue_SqliteCatalogueTest, createArchiveFile) {
   file.checksumValue = "cheskum_value";
   file.storageClass = storageClassName;
 
-  file.drData.drInstance = "recovery_instance";
+  file.instance = "recovery_instance";
   file.drData.drPath = "recovery_path";
   file.drData.drOwner = "recovery_owner";
   file.drData.drGroup = "recovery_group";
@@ -866,7 +866,7 @@ TEST_F(cta_catalogue_SqliteCatalogueTest, createArchiveFile) {
   ASSERT_EQ(file.checksumValue, frontFile.checksumValue);
   ASSERT_EQ(file.storageClass, frontFile.storageClass);
 
-  ASSERT_EQ(file.drData.drInstance, frontFile.drData.drInstance);
+  ASSERT_EQ(file.instance, frontFile.instance);
   ASSERT_EQ(file.drData.drPath, frontFile.drData.drPath);
   ASSERT_EQ(file.drData.drOwner, frontFile.drData.drOwner);
   ASSERT_EQ(file.drData.drGroup, frontFile.drData.drGroup);
@@ -892,7 +892,7 @@ TEST_F(cta_catalogue_SqliteCatalogueTest, createArchiveFile_same_twice) {
   file.checksumValue = "cheskum_value";
   file.storageClass = storageClassName;
 
-  file.drData.drInstance = "recovery_instance";
+  file.instance = "recovery_instance";
   file.drData.drPath = "recovery_path";
   file.drData.drOwner = "recovery_owner";
   file.drData.drGroup = "recovery_group";
diff --git a/common/dataStructures/ArchiveFile.cpp b/common/dataStructures/ArchiveFile.cpp
index 98822691a5..0d21b4b302 100644
--- a/common/dataStructures/ArchiveFile.cpp
+++ b/common/dataStructures/ArchiveFile.cpp
@@ -34,6 +34,7 @@ cta::common::dataStructures::ArchiveFile::ArchiveFile():
 bool cta::common::dataStructures::ArchiveFile::operator==(const ArchiveFile &rhs) const {
   return archiveFileID==rhs.archiveFileID
       && diskFileID==rhs.diskFileID
+      && instance==rhs.instance
       && fileSize==rhs.fileSize
       && checksumType==rhs.checksumType
       && checksumValue==rhs.checksumValue
@@ -56,6 +57,7 @@ bool cta::common::dataStructures::ArchiveFile::operator!=(const ArchiveFile &rhs
 std::ostream &operator<<(std::ostream &os, const cta::common::dataStructures::ArchiveFile &obj) {
   os << "(archiveFileID=" << obj.archiveFileID
      << " diskFileID=" << obj.diskFileID
+     << " instance=" << obj.instance
      << " fileSize=" << obj.fileSize
      << " checksumType=" << obj.checksumType
      << " checksumValue=" << obj.checksumValue
diff --git a/common/dataStructures/ArchiveFile.hpp b/common/dataStructures/ArchiveFile.hpp
index 35ad7ed64b..91c1739498 100644
--- a/common/dataStructures/ArchiveFile.hpp
+++ b/common/dataStructures/ArchiveFile.hpp
@@ -43,6 +43,7 @@ struct ArchiveFile {
 
   uint64_t archiveFileID;
   std::string diskFileID;
+  std::string instance;
   uint64_t fileSize;
   std::string checksumType;
   std::string checksumValue;
diff --git a/common/dataStructures/ArchiveRequest.cpp b/common/dataStructures/ArchiveRequest.cpp
index 626e8f3151..711a31166c 100644
--- a/common/dataStructures/ArchiveRequest.cpp
+++ b/common/dataStructures/ArchiveRequest.cpp
@@ -33,6 +33,7 @@ cta::common::dataStructures::ArchiveRequest::ArchiveRequest():
 bool cta::common::dataStructures::ArchiveRequest::operator==(const ArchiveRequest &rhs) const {
   return requester==rhs.requester
       && diskFileID==rhs.diskFileID
+      && instance==rhs.instance
       && srcURL==rhs.srcURL
       && fileSize==rhs.fileSize
       && checksumType==rhs.checksumType
@@ -57,6 +58,7 @@ bool cta::common::dataStructures::ArchiveRequest::operator!=(const ArchiveReques
 std::ostream &operator<<(std::ostream &os, const cta::common::dataStructures::ArchiveRequest &obj) {
   os << "(requester=" << obj.requester
      << " diskFileID=" << obj.diskFileID
+     << " instance=" << obj.instance
      << " srcURL=" << obj.srcURL
      << " fileSize=" << obj.fileSize
      << " checksumType=" << obj.checksumType
diff --git a/common/dataStructures/ArchiveRequest.hpp b/common/dataStructures/ArchiveRequest.hpp
index f49a920ad7..da38cc6851 100644
--- a/common/dataStructures/ArchiveRequest.hpp
+++ b/common/dataStructures/ArchiveRequest.hpp
@@ -44,6 +44,7 @@ struct ArchiveRequest {
 
   cta::common::dataStructures::UserIdentity requester;
   std::string diskFileID;
+  std::string instance;
   std::string srcURL;
   uint64_t fileSize;
   std::string checksumType;
diff --git a/common/dataStructures/DRData.cpp b/common/dataStructures/DRData.cpp
index 9823e1df81..9c0b98f2d8 100644
--- a/common/dataStructures/DRData.cpp
+++ b/common/dataStructures/DRData.cpp
@@ -29,8 +29,7 @@ cta::common::dataStructures::DRData::DRData() {}
 // operator==
 //------------------------------------------------------------------------------
 bool cta::common::dataStructures::DRData::operator==(const DRData &rhs) const {
-  return drInstance==rhs.drInstance
-      && drPath==rhs.drPath
+  return drPath==rhs.drPath
       && drOwner==rhs.drOwner
       && drGroup==rhs.drGroup
       && drBlob==rhs.drBlob;
@@ -47,8 +46,7 @@ bool cta::common::dataStructures::DRData::operator!=(const DRData &rhs) const {
 // operator<<
 //------------------------------------------------------------------------------
 std::ostream &operator<<(std::ostream &os, const cta::common::dataStructures::DRData &obj) {
-  os << "(drInstance=" << obj.drInstance
-     << " drPath=" << obj.drPath
+  os << "(drPath=" << obj.drPath
      << " drOwner=" << obj.drOwner
      << " drGroup=" << obj.drGroup
      << " drBlob=" << obj.drBlob << ")";
diff --git a/common/dataStructures/DRData.hpp b/common/dataStructures/DRData.hpp
index 029a676a14..ee16352236 100644
--- a/common/dataStructures/DRData.hpp
+++ b/common/dataStructures/DRData.hpp
@@ -39,7 +39,6 @@ struct DRData {
 
   bool operator!=(const DRData &rhs) const;
 
-  std::string drInstance;
   std::string drPath;
   std::string drOwner;
   std::string drGroup;
diff --git a/objectstore/ArchiveRequest.cpp b/objectstore/ArchiveRequest.cpp
index 06378aecd2..c3eacebab1 100644
--- a/objectstore/ArchiveRequest.cpp
+++ b/objectstore/ArchiveRequest.cpp
@@ -257,7 +257,6 @@ void cta::objectstore::ArchiveRequest::setDrData(const cta::common::dataStructur
   auto payloadDrData = m_payload.mutable_drdata();
   payloadDrData->set_drblob(drData.drBlob);
   payloadDrData->set_drgroup(drData.drGroup);
-  payloadDrData->set_drinstance(drData.drInstance);
   payloadDrData->set_drowner(drData.drOwner);
   payloadDrData->set_drpath(drData.drPath);
 }
@@ -271,26 +270,41 @@ cta::common::dataStructures::DRData cta::objectstore::ArchiveRequest::getDrData(
   auto payloadDrData = m_payload.drdata();
   drData.drBlob=payloadDrData.drblob();
   drData.drGroup=payloadDrData.drgroup();
-  drData.drInstance=payloadDrData.drinstance();
   drData.drOwner=payloadDrData.drowner();
   drData.drPath=payloadDrData.drpath();
   return drData;
 }
 
 //------------------------------------------------------------------------------
-// setEosFileID
+// setDiskFileID
 //------------------------------------------------------------------------------
-void cta::objectstore::ArchiveRequest::setEosFileID(const std::string &eosFileID) {
+void cta::objectstore::ArchiveRequest::setDiskFileID(const std::string &diskFileID) {
   checkPayloadWritable();
-  m_payload.set_eosfileid(eosFileID);
+  m_payload.set_diskfileid(diskFileID);
 }
 
 //------------------------------------------------------------------------------
-// getEosFileID
+// getDiskFileID
 //------------------------------------------------------------------------------
-std::string cta::objectstore::ArchiveRequest::getEosFileID() {
+std::string cta::objectstore::ArchiveRequest::getDiskFileID() {
   checkPayloadReadable();
-  return m_payload.eosfileid();
+  return m_payload.diskfileid();
+}
+
+//------------------------------------------------------------------------------
+// setInstance
+//------------------------------------------------------------------------------
+void cta::objectstore::ArchiveRequest::setInstance(const std::string &instance) {
+  checkPayloadWritable();
+  m_payload.set_instance(instance);
+}
+
+//------------------------------------------------------------------------------
+// getInstance
+//------------------------------------------------------------------------------
+std::string cta::objectstore::ArchiveRequest::getInstance() {
+  checkPayloadReadable();
+  return m_payload.instance();
 }
 
 //------------------------------------------------------------------------------
@@ -535,7 +549,8 @@ std::string cta::objectstore::ArchiveRequest::dump() {
   json_object_object_add(jo, "checksumvalue", json_object_new_string(m_payload.checksumvalue().c_str()));
   json_object_object_add(jo, "diskpoolname", json_object_new_string(m_payload.diskpoolname().c_str()));
   json_object_object_add(jo, "diskpoolthroughput", json_object_new_int64(m_payload.diskpoolthroughput()));
-  json_object_object_add(jo, "eosfileid", json_object_new_string(m_payload.eosfileid().c_str()));
+  json_object_object_add(jo, "diskfileid", json_object_new_string(m_payload.diskfileid().c_str()));
+  json_object_object_add(jo, "instance", json_object_new_string(m_payload.instance().c_str()));
   json_object_object_add(jo, "filesize", json_object_new_int64(m_payload.filesize()));
   json_object_object_add(jo, "srcurl", json_object_new_string(m_payload.srcurl().c_str()));
   json_object_object_add(jo, "storageclass", json_object_new_string(m_payload.storageclass().c_str()));
@@ -569,7 +584,6 @@ std::string cta::objectstore::ArchiveRequest::dump() {
   json_object * jlog = json_object_new_object();
   json_object_object_add(jlog, "drblob", json_object_new_string(m_payload.drdata().drblob().c_str()));
   json_object_object_add(jlog, "drgroup", json_object_new_string(m_payload.drdata().drgroup().c_str()));
-  json_object_object_add(jlog, "drinstance", json_object_new_string(m_payload.drdata().drinstance().c_str()));
   json_object_object_add(jlog, "drowner", json_object_new_string(m_payload.drdata().drowner().c_str()));
   json_object_object_add(jlog, "drpath", json_object_new_string(m_payload.drdata().drpath().c_str()));
   json_object_object_add(jo, "drdata", jlog);
diff --git a/objectstore/ArchiveRequest.hpp b/objectstore/ArchiveRequest.hpp
index 5228688e06..c7028a1074 100644
--- a/objectstore/ArchiveRequest.hpp
+++ b/objectstore/ArchiveRequest.hpp
@@ -84,8 +84,11 @@ public:
   void setDrData(const cta::common::dataStructures::DRData &drData);
   cta::common::dataStructures::DRData getDrData();
 
-  void setEosFileID(const std::string &eosFileID);
-  std::string getEosFileID();
+  void setDiskFileID(const std::string &diskFileID);
+  std::string getDiskFileID();  
+
+  void setInstance(const std::string &instance);
+  std::string getInstance();
 
   void setFileSize(const uint64_t fileSize);
   uint64_t getFileSize();
diff --git a/objectstore/RetrieveRequest.cpp b/objectstore/RetrieveRequest.cpp
index 090a5ed6e6..97b13c31ed 100644
--- a/objectstore/RetrieveRequest.cpp
+++ b/objectstore/RetrieveRequest.cpp
@@ -129,7 +129,6 @@ void cta::objectstore::RetrieveRequest::setDrData(const cta::common::dataStructu
   auto payloadDrData = m_payload.mutable_drdata();
   payloadDrData->set_drblob(drData.drBlob);
   payloadDrData->set_drgroup(drData.drGroup);
-  payloadDrData->set_drinstance(drData.drInstance);
   payloadDrData->set_drowner(drData.drOwner);
   payloadDrData->set_drpath(drData.drPath);
 }
@@ -143,7 +142,6 @@ cta::common::dataStructures::DRData cta::objectstore::RetrieveRequest::getDrData
   auto payloadDrData = m_payload.drdata();
   drData.drBlob=payloadDrData.drblob();
   drData.drGroup=payloadDrData.drgroup();
-  drData.drInstance=payloadDrData.drinstance();
   drData.drOwner=payloadDrData.drowner();
   drData.drPath=payloadDrData.drpath();
   return drData;
@@ -284,7 +282,6 @@ std::string cta::objectstore::RetrieveRequest::dump() {
   json_object * jlog = json_object_new_object();
   json_object_object_add(jlog, "drblob", json_object_new_string(m_payload.drdata().drblob().c_str()));
   json_object_object_add(jlog, "drgroup", json_object_new_string(m_payload.drdata().drgroup().c_str()));
-  json_object_object_add(jlog, "drinstance", json_object_new_string(m_payload.drdata().drinstance().c_str()));
   json_object_object_add(jlog, "drowner", json_object_new_string(m_payload.drdata().drowner().c_str()));
   json_object_object_add(jlog, "drpath", json_object_new_string(m_payload.drdata().drpath().c_str()));
   json_object_object_add(jo, "drdata", jlog);
diff --git a/objectstore/cta.proto b/objectstore/cta.proto
index 9fc78ce5a1..62bcf6bc35 100644
--- a/objectstore/cta.proto
+++ b/objectstore/cta.proto
@@ -432,7 +432,6 @@ message User {
 message DRData {
   required string drBlob = 8900;
   required string drGroup = 8910;
-  required string drInstance = 8920;
   required string drOwner = 8930;
   required string drPath = 8940;
 }
@@ -458,7 +457,8 @@ message ArchiveRequest {
   required string diskpoolName = 9020;
   required uint64 diskpoolThroughput = 9030;
   required DRData drData = 9040;
-  required string eosFileID = 9050;
+  required string diskFileID = 9050;
+  required string instance = 9055;
   required uint64 fileSize = 9060;
   required User requester = 9070;
   required string srcURL = 9080;
diff --git a/scheduler/OStoreDB/OStoreDB.cpp b/scheduler/OStoreDB/OStoreDB.cpp
index f60822674f..c370285359 100644
--- a/scheduler/OStoreDB/OStoreDB.cpp
+++ b/scheduler/OStoreDB/OStoreDB.cpp
@@ -863,7 +863,7 @@ std::unique_ptr<cta::SchedulerDatabase::ArchiveRequestCreation> OStoreDB::queue(
   ar.setDiskpoolName(request.diskpoolName);
   ar.setDiskpoolThroughput(request.diskpoolThroughput);
   ar.setDrData(request.drData);
-  ar.setEosFileID(request.diskFileID);
+  ar.setDiskFileID(request.diskFileID);
   ar.setFileSize(request.fileSize);
   ar.setMountPolicy(mountPolicy);
   ar.setRequester(request.requester);
diff --git a/scheduler/SchedulerTest.cpp b/scheduler/SchedulerTest.cpp
index f44623b588..5898ba1113 100644
--- a/scheduler/SchedulerTest.cpp
+++ b/scheduler/SchedulerTest.cpp
@@ -210,7 +210,6 @@ TEST_P(SchedulerTest, DISABLED_archive_to_new_file) {
   cta::common::dataStructures::DRData drData;
   drData.drBlob="blob";
   drData.drGroup="group2";
-  drData.drInstance="cms";
   drData.drOwner="cms_user";
   drData.drPath="path/to/file";
   cta::common::dataStructures::ArchiveRequest request;
@@ -221,6 +220,7 @@ TEST_P(SchedulerTest, DISABLED_archive_to_new_file) {
   request.diskpoolThroughput=200*1000*1000;
   request.drData=drData;
   request.diskFileID="diskFileID";
+  request.instance="cms";
   request.fileSize=100*1000*1000;
   cta::common::dataStructures::UserIdentity requester;
   requester.name = userName;
diff --git a/xroot_plugins/XrdCtaFile.cpp b/xroot_plugins/XrdCtaFile.cpp
index a446044a87..646b3543cc 100644
--- a/xroot_plugins/XrdCtaFile.cpp
+++ b/xroot_plugins/XrdCtaFile.cpp
@@ -1574,13 +1574,13 @@ void XrdCtaFile::xCom_archivefile(const std::vector<std::string> &tokens, const
             currentRow.push_back(std::to_string((unsigned long long)jt->second.fSeq));
             currentRow.push_back(std::to_string((unsigned long long)jt->second.blockId));
             currentRow.push_back(it->diskFileID);
+            currentRow.push_back(it->instance);
             currentRow.push_back(std::to_string((unsigned long long)it->fileSize));
             currentRow.push_back(it->checksumType);
             currentRow.push_back(it->checksumValue);
             currentRow.push_back(it->storageClass);
             currentRow.push_back(it->drData.drOwner);
             currentRow.push_back(it->drData.drGroup);
-            currentRow.push_back(it->drData.drInstance);
             currentRow.push_back(it->drData.drPath);    
             currentRow.push_back(std::to_string((unsigned long long)it->creationTime));          
             responseTable.push_back(currentRow);
@@ -1742,7 +1742,7 @@ void XrdCtaFile::xCom_reconcile(const std::vector<std::string> &tokens, const ct
   std::list<cta::common::dataStructures::ArchiveFile> list = m_scheduler->reconcile(cliIdentity);  
   if(list.size()>0) {
     std::vector<std::vector<std::string>> responseTable;
-    std::vector<std::string> header = {"id","copy no","vid","fseq","block id","EOS id","size","checksum type","checksum value","storage class","owner","group","instance","path"};
+    std::vector<std::string> header = {"id","copy no","vid","fseq","block id","disk id","instance","size","checksum type","checksum value","storage class","owner","group","path"};
     responseTable.push_back(header);    
     for(auto it = list.cbegin(); it != list.cend(); it++) {
       for(auto jt = it->tapeCopies.cbegin(); jt != it->tapeCopies.cend(); jt++) {
@@ -1753,13 +1753,13 @@ void XrdCtaFile::xCom_reconcile(const std::vector<std::string> &tokens, const ct
         currentRow.push_back(std::to_string((unsigned long long)jt->second.fSeq));
         currentRow.push_back(std::to_string((unsigned long long)jt->second.blockId));
         currentRow.push_back(it->diskFileID);
+        currentRow.push_back(it->instance);
         currentRow.push_back(std::to_string((unsigned long long)it->fileSize));
         currentRow.push_back(it->checksumType);
         currentRow.push_back(it->checksumValue);
         currentRow.push_back(it->storageClass);
         currentRow.push_back(it->drData.drOwner);
         currentRow.push_back(it->drData.drGroup);
-        currentRow.push_back(it->drData.drInstance);
         currentRow.push_back(it->drData.drPath);          
         responseTable.push_back(currentRow);
       }
@@ -1789,7 +1789,7 @@ void XrdCtaFile::xCom_listpendingarchives(const std::vector<std::string> &tokens
   if(result.size()>0) {
     if(extended) {
       std::vector<std::vector<std::string>> responseTable;
-      std::vector<std::string> header = {"tapepool","id","storage class","copy no.","EOS id","checksum type","checksum value","size","user","group","instance","path","diskpool","diskpool throughput"};
+      std::vector<std::string> header = {"tapepool","id","storage class","copy no.","disk id","instance","checksum type","checksum value","size","user","group","path","diskpool","diskpool throughput"};
       if(hasOption(tokens, "-h", "--header")) responseTable.push_back(header);    
       for(auto it = result.cbegin(); it != result.cend(); it++) {
         for(auto jt = it->second.cbegin(); jt != it->second.cend(); jt++) {
@@ -1799,12 +1799,12 @@ void XrdCtaFile::xCom_listpendingarchives(const std::vector<std::string> &tokens
           currentRow.push_back(jt->request.storageClass);
           currentRow.push_back(std::to_string((unsigned long long)jt->copyNumber));
           currentRow.push_back(jt->request.diskFileID);
+          currentRow.push_back(jt->request.instance);
           currentRow.push_back(jt->request.checksumType);
           currentRow.push_back(jt->request.checksumValue);         
           currentRow.push_back(std::to_string((unsigned long long)jt->request.fileSize));
           currentRow.push_back(jt->request.requester.name);
           currentRow.push_back(jt->request.requester.group);
-          currentRow.push_back(jt->request.drData.drInstance);
           currentRow.push_back(jt->request.drData.drPath);
           currentRow.push_back(jt->request.diskpoolName);
           currentRow.push_back(std::to_string((unsigned long long)jt->request.diskpoolThroughput));
@@ -1854,7 +1854,7 @@ void XrdCtaFile::xCom_listpendingretrieves(const std::vector<std::string> &token
   if(result.size()>0) {
     if(extended) {
       std::vector<std::vector<std::string>> responseTable;
-      std::vector<std::string> header = {"vid","id","copy no.","fseq","block id","size","user","group","instance","path","diskpool","diskpool throughput"};
+      std::vector<std::string> header = {"vid","id","copy no.","fseq","block id","size","user","group","path","diskpool","diskpool throughput"};
       if(hasOption(tokens, "-h", "--header")) responseTable.push_back(header);    
       for(auto it = result.cbegin(); it != result.cend(); it++) {
         for(auto jt = it->second.cbegin(); jt != it->second.cend(); jt++) {
@@ -1868,7 +1868,6 @@ void XrdCtaFile::xCom_listpendingretrieves(const std::vector<std::string> &token
           currentRow.push_back(std::to_string((unsigned long long)file.fileSize));
           currentRow.push_back(jt->request.requester.name);
           currentRow.push_back(jt->request.requester.group);
-          currentRow.push_back(jt->request.drData.drInstance);
           currentRow.push_back(jt->request.drData.drPath);
           currentRow.push_back(jt->request.diskpoolName);
           currentRow.push_back(std::to_string((unsigned long long)jt->request.diskpoolThroughput));
@@ -1935,8 +1934,8 @@ void XrdCtaFile::xCom_listdrivestates(const std::vector<std::string> &tokens, co
 //------------------------------------------------------------------------------
 void XrdCtaFile::xCom_archive(const std::vector<std::string> &tokens, const cta::common::dataStructures::SecurityIdentity &cliIdentity) {
   std::stringstream help;
-  help << tokens[0] << " a/archive --encoded <\"true\" or \"false\"> --user <user> --group <group> --eosid <EOS_unique_id> --srcurl <src_URL> --size <size> --checksumtype <checksum_type>" << std::endl
-                    << "\t--checksumvalue <checksum_value> --storageclass <storage_class> --dr_instance <DR_instance> --dr_path <DR_path> --dr_owner <DR_owner>" << std::endl
+  help << tokens[0] << " a/archive --encoded <\"true\" or \"false\"> --user <user> --group <group> --diskid <disk_id> --instance <instance> --srcurl <src_URL> --size <size> --checksumtype <checksum_type>" << std::endl
+                    << "\t--checksumvalue <checksum_value> --storageclass <storage_class> --dr_path <DR_path> --dr_owner <DR_owner>" << std::endl
                     << "\t--dr_ownergroup <DR_group> --dr_blob <DR_blob> --diskpool <diskpool_name> --throughput <diskpool_throughput>" << std::endl;
   std::string encoded_s = getOptionValue(tokens, "", "--encoded", false);
   if(encoded_s!="true" && encoded_s!="false") {
@@ -1946,21 +1945,21 @@ void XrdCtaFile::xCom_archive(const std::vector<std::string> &tokens, const cta:
   bool encoded = encoded_s=="true"?true:false;
   std::string user = getOptionValue(tokens, "", "--user", encoded);
   std::string group = getOptionValue(tokens, "", "--group", encoded);
-  std::string eosid = getOptionValue(tokens, "", "--eosid", encoded);
+  std::string diskid = getOptionValue(tokens, "", "--diskid", encoded);
+  std::string instance = getOptionValue(tokens, "", "--instance", encoded);
   std::string srcurl = getOptionValue(tokens, "", "--srcurl", encoded);
   std::string size_s = getOptionValue(tokens, "", "--size", encoded);
   std::string checksumtype = getOptionValue(tokens, "", "--checksumtype", encoded);
   std::string checksumvalue = getOptionValue(tokens, "", "--checksumvalue", encoded);
   std::string storageclass = getOptionValue(tokens, "", "--storageclass", encoded);
-  std::string dr_instance = getOptionValue(tokens, "", "--dr_instance", encoded);
   std::string dr_path = getOptionValue(tokens, "", "--dr_path", encoded);
   std::string dr_owner = getOptionValue(tokens, "", "--dr_owner", encoded);
   std::string dr_ownergroup = getOptionValue(tokens, "", "--dr_ownergroup", encoded);
   std::string dr_blob = getOptionValue(tokens, "", "--dr_blob", encoded);
   std::string diskpool = getOptionValue(tokens, "", "--diskpool", encoded);
   std::string throughput_s = getOptionValue(tokens, "", "--throughput", encoded);
-  if(user.empty() || group.empty() || eosid.empty() || srcurl.empty() || size_s.empty() || checksumtype.empty() || checksumvalue.empty()
-          || storageclass.empty() || dr_instance.empty() || dr_path.empty() || dr_owner.empty() || dr_ownergroup.empty() || dr_blob.empty() || diskpool.empty() || throughput_s.empty()) {
+  if(user.empty() || group.empty() || diskid.empty() || srcurl.empty() || size_s.empty() || checksumtype.empty() || checksumvalue.empty()
+          || storageclass.empty() || instance.empty() || dr_path.empty() || dr_owner.empty() || dr_ownergroup.empty() || dr_blob.empty() || diskpool.empty() || throughput_s.empty()) {
     m_data = help.str();
     return;
   }
@@ -1972,7 +1971,6 @@ void XrdCtaFile::xCom_archive(const std::vector<std::string> &tokens, const cta:
   cta::common::dataStructures::DRData drData;
   drData.drBlob=dr_blob;
   drData.drGroup=dr_ownergroup;
-  drData.drInstance=dr_instance;
   drData.drOwner=dr_owner;
   drData.drPath=dr_path;
   cta::common::dataStructures::ArchiveRequest request;
@@ -1981,7 +1979,8 @@ void XrdCtaFile::xCom_archive(const std::vector<std::string> &tokens, const cta:
   request.diskpoolName=diskpool;
   request.diskpoolThroughput=throughput;
   request.drData=drData;
-  request.diskFileID=eosid;
+  request.diskFileID=diskid;
+  request.instance=instance;
   request.fileSize=size;
   request.requester=originator;
   request.srcURL=srcurl;
@@ -2009,14 +2008,13 @@ void XrdCtaFile::xCom_retrieve(const std::vector<std::string> &tokens, const cta
   std::string group = getOptionValue(tokens, "", "--group", encoded);
   std::string id_s = getOptionValue(tokens, "", "--id", encoded);
   std::string dsturl = getOptionValue(tokens, "", "--dsturl", encoded);
-  std::string dr_instance = getOptionValue(tokens, "", "--dr_instance", encoded);
   std::string dr_path = getOptionValue(tokens, "", "--dr_path", encoded);
   std::string dr_owner = getOptionValue(tokens, "", "--dr_owner", encoded);
   std::string dr_ownergroup = getOptionValue(tokens, "", "--dr_ownergroup", encoded);
   std::string dr_blob = getOptionValue(tokens, "", "--dr_blob", encoded);
   std::string diskpool = getOptionValue(tokens, "", "--diskpool", encoded);
   std::string throughput_s = getOptionValue(tokens, "", "--throughput", encoded);
-  if(user.empty() || group.empty() || id_s.empty() || dsturl.empty() || dr_instance.empty() || dr_path.empty() || dr_owner.empty() || dr_ownergroup.empty() || dr_blob.empty() || diskpool.empty() || throughput_s.empty()) {
+  if(user.empty() || group.empty() || id_s.empty() || dsturl.empty() || dr_path.empty() || dr_owner.empty() || dr_ownergroup.empty() || dr_blob.empty() || diskpool.empty() || throughput_s.empty()) {
     m_data = help.str();
     return;
   }
@@ -2028,7 +2026,6 @@ void XrdCtaFile::xCom_retrieve(const std::vector<std::string> &tokens, const cta
   cta::common::dataStructures::DRData drData;
   drData.drBlob=dr_blob;
   drData.drGroup=dr_ownergroup;
-  drData.drInstance=dr_instance;
   drData.drOwner=dr_owner;
   drData.drPath=dr_path;
   cta::common::dataStructures::RetrieveRequest request;
@@ -2087,12 +2084,11 @@ void XrdCtaFile::xCom_cancelretrieve(const std::vector<std::string> &tokens, con
   std::string group = getOptionValue(tokens, "", "--group", encoded);
   std::string id_s = getOptionValue(tokens, "", "--id", encoded);
   std::string dsturl = getOptionValue(tokens, "", "--dsturl", encoded);
-  std::string dr_instance = getOptionValue(tokens, "", "--dr_instance", encoded);
   std::string dr_path = getOptionValue(tokens, "", "--dr_path", encoded);
   std::string dr_owner = getOptionValue(tokens, "", "--dr_owner", encoded);
   std::string dr_ownergroup = getOptionValue(tokens, "", "--dr_ownergroup", encoded);
   std::string dr_blob = getOptionValue(tokens, "", "--dr_blob", encoded);
-  if(user.empty() || group.empty() || id_s.empty() || dsturl.empty() || dr_instance.empty() || dr_path.empty() || dr_owner.empty() || dr_ownergroup.empty() || dr_blob.empty()) {
+  if(user.empty() || group.empty() || id_s.empty() || dsturl.empty() || dr_path.empty() || dr_owner.empty() || dr_ownergroup.empty() || dr_blob.empty()) {
     m_data = help.str();
     return;
   }
@@ -2103,7 +2099,6 @@ void XrdCtaFile::xCom_cancelretrieve(const std::vector<std::string> &tokens, con
   cta::common::dataStructures::DRData drData;
   drData.drBlob=dr_blob;
   drData.drGroup=dr_ownergroup;
-  drData.drInstance=dr_instance;
   drData.drOwner=dr_owner;
   drData.drPath=dr_path;
   cta::common::dataStructures::CancelRetrieveRequest request;
@@ -2131,12 +2126,11 @@ void XrdCtaFile::xCom_updatefileinfo(const std::vector<std::string> &tokens, con
   std::string group = getOptionValue(tokens, "", "--group", encoded);
   std::string id_s = getOptionValue(tokens, "", "--id", encoded);
   std::string storageclass = getOptionValue(tokens, "", "--storageclass", encoded);
-  std::string dr_instance = getOptionValue(tokens, "", "--dr_instance", encoded);
   std::string dr_path = getOptionValue(tokens, "", "--dr_path", encoded);
   std::string dr_owner = getOptionValue(tokens, "", "--dr_owner", encoded);
   std::string dr_ownergroup = getOptionValue(tokens, "", "--dr_ownergroup", encoded);
   std::string dr_blob = getOptionValue(tokens, "", "--dr_blob", encoded);
-  if(user.empty() || group.empty() || id_s.empty() || storageclass.empty() || dr_instance.empty() || dr_path.empty() || dr_owner.empty() || dr_ownergroup.empty() || dr_blob.empty()) {
+  if(user.empty() || group.empty() || id_s.empty() || storageclass.empty() || dr_path.empty() || dr_owner.empty() || dr_ownergroup.empty() || dr_blob.empty()) {
     m_data = help.str();
     return;
   }
@@ -2147,7 +2141,6 @@ void XrdCtaFile::xCom_updatefileinfo(const std::vector<std::string> &tokens, con
   cta::common::dataStructures::DRData drData;
   drData.drBlob=dr_blob;
   drData.drGroup=dr_ownergroup;
-  drData.drInstance=dr_instance;
   drData.drOwner=dr_owner;
   drData.drPath=dr_path;
   cta::common::dataStructures::UpdateFileInfoRequest request;
-- 
GitLab