diff --git a/catalogue/1.1/mysql_catalogue_schema.sql b/catalogue/1.1/mysql_catalogue_schema.sql
index 6e349a23a7292457759afa511b834467d1a38a9b..3d7ca86a10cf5ab113668aa5fb939ee38a03f323 100644
--- a/catalogue/1.1/mysql_catalogue_schema.sql
+++ b/catalogue/1.1/mysql_catalogue_schema.sql
@@ -128,12 +128,15 @@ CREATE TABLE TAPE(
   CAPACITY_IN_BYTES       BIGINT UNSIGNED      CONSTRAINT TAPE_CIB_NN  NOT NULL,
   DATA_IN_BYTES           BIGINT UNSIGNED      CONSTRAINT TAPE_DIB_NN  NOT NULL,
   LAST_FSEQ               BIGINT UNSIGNED      CONSTRAINT TAPE_LF_NN   NOT NULL,
+  NB_MASTER_FILES         BIGINT UNSIGNED      DEFAULT 0 CONSTRAINT TAPE_NB_MASTER_FILES_NN NOT NULL,
+  MASTER_DATA_IN_BYTES    BIGINT UNSIGNED      DEFAULT 0 CONSTRAINT TAPE_MASTER_DATA_IN_BYTES_NN NOT NULL,
   IS_DISABLED             CHAR(1)         CONSTRAINT TAPE_ID_NN   NOT NULL,
   IS_FULL                 CHAR(1)         CONSTRAINT TAPE_IF_NN   NOT NULL,
   IS_READ_ONLY            CHAR(1)         CONSTRAINT TAPE_IRO_NN  NOT NULL,
   IS_FROM_CASTOR          CHAR(1)         CONSTRAINT TAPE_IFC_NN  NOT NULL,
   IS_ARCHIVED             CHAR(1)         DEFAULT '0' CONSTRAINT TAPE_IA_NN   NOT NULL,
   IS_EXPORTED             CHAR(1)         DEFAULT '0' CONSTRAINT TAPE_IE_NN   NOT NULL,
+  DIRTY                   CHAR(1)         DEFAULT '1' CONSTRAINT TAPE_DIRTY_NN NOT NULL,
   LABEL_DRIVE             VARCHAR(100),
   LABEL_TIME              BIGINT UNSIGNED    ,
   LAST_READ_DRIVE         VARCHAR(100),
@@ -294,6 +297,6 @@ INSERT INTO CTA_CATALOGUE(
 VALUES(
   1,
   1,
-  'COMPLETE');
+  'PRODUCTION');
 ALTER TABLE CTA_CATALOGUE ADD CONSTRAINT 
-  CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='COMPLETE') OR (STATUS='UPGRADING'));
\ No newline at end of file
+  CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='PRODUCTION') OR (STATUS='UPGRADING'));
\ No newline at end of file
diff --git a/catalogue/1.1/oracle_catalogue_schema.sql b/catalogue/1.1/oracle_catalogue_schema.sql
index d4fad39fe9a1e4ca77670d46682db429007f42f4..ae093d3958d053684ad61a112942ba8a41b110d7 100644
--- a/catalogue/1.1/oracle_catalogue_schema.sql
+++ b/catalogue/1.1/oracle_catalogue_schema.sql
@@ -150,12 +150,15 @@ CREATE TABLE TAPE(
   CAPACITY_IN_BYTES       NUMERIC(20, 0)      CONSTRAINT TAPE_CIB_NN  NOT NULL,
   DATA_IN_BYTES           NUMERIC(20, 0)      CONSTRAINT TAPE_DIB_NN  NOT NULL,
   LAST_FSEQ               NUMERIC(20, 0)      CONSTRAINT TAPE_LF_NN   NOT NULL,
+  NB_MASTER_FILES         NUMERIC(20, 0)      DEFAULT 0 CONSTRAINT TAPE_NB_MASTER_FILES_NN NOT NULL,
+  MASTER_DATA_IN_BYTES    NUMERIC(20, 0)      DEFAULT 0 CONSTRAINT TAPE_MASTER_DATA_IN_BYTES_NN NOT NULL,
   IS_DISABLED             CHAR(1)         CONSTRAINT TAPE_ID_NN   NOT NULL,
   IS_FULL                 CHAR(1)         CONSTRAINT TAPE_IF_NN   NOT NULL,
   IS_READ_ONLY            CHAR(1)         CONSTRAINT TAPE_IRO_NN  NOT NULL,
   IS_FROM_CASTOR          CHAR(1)         CONSTRAINT TAPE_IFC_NN  NOT NULL,
   IS_ARCHIVED             CHAR(1)         DEFAULT '0' CONSTRAINT TAPE_IA_NN   NOT NULL,
   IS_EXPORTED             CHAR(1)         DEFAULT '0' CONSTRAINT TAPE_IE_NN   NOT NULL,
+  DIRTY                   CHAR(1)         DEFAULT '1' CONSTRAINT TAPE_DIRTY_NN NOT NULL,
   LABEL_DRIVE             VARCHAR2(100),
   LABEL_TIME              NUMERIC(20, 0)    ,
   LAST_READ_DRIVE         VARCHAR2(100),
@@ -316,7 +319,7 @@ INSERT INTO CTA_CATALOGUE(
 VALUES(
   1,
   1,
-  'COMPLETE');
-ALTER TABLE CTA_CATALOGUE ADD CONSTRAINT CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='COMPLETE') OR (NEXT_SCHEMA_VERSION_MAJOR IS NOT NULL AND NEXT_SCHEMA_VERSION_MINOR IS NOT NULL AND STATUS='UPGRADING')) INITIALLY DEFERRED;
+  'PRODUCTION');
+ALTER TABLE CTA_CATALOGUE ADD CONSTRAINT CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='PRODUCTION') OR (NEXT_SCHEMA_VERSION_MAJOR IS NOT NULL AND NEXT_SCHEMA_VERSION_MINOR IS NOT NULL AND STATUS='UPGRADING')) INITIALLY DEFERRED;
 
 COMMIT;
diff --git a/catalogue/1.1/postgres_catalogue_schema.sql b/catalogue/1.1/postgres_catalogue_schema.sql
index 8afaa5ed841545d41d611e5535382c8400eded90..b3d02e65ce639e4d0675cd5fc3054e5748edc645 100644
--- a/catalogue/1.1/postgres_catalogue_schema.sql
+++ b/catalogue/1.1/postgres_catalogue_schema.sql
@@ -135,12 +135,15 @@ CREATE TABLE TAPE(
   CAPACITY_IN_BYTES       NUMERIC(20, 0)      CONSTRAINT TAPE_CIB_NN  NOT NULL,
   DATA_IN_BYTES           NUMERIC(20, 0)      CONSTRAINT TAPE_DIB_NN  NOT NULL,
   LAST_FSEQ               NUMERIC(20, 0)      CONSTRAINT TAPE_LF_NN   NOT NULL,
+  NB_MASTER_FILES         NUMERIC(20, 0)      DEFAULT 0 CONSTRAINT TAPE_NB_MASTER_FILES_NN NOT NULL,
+  MASTER_DATA_IN_BYTES    NUMERIC(20, 0)      DEFAULT 0 CONSTRAINT TAPE_MASTER_DATA_IN_BYTES_NN NOT NULL,
   IS_DISABLED             CHAR(1)         CONSTRAINT TAPE_ID_NN   NOT NULL,
   IS_FULL                 CHAR(1)         CONSTRAINT TAPE_IF_NN   NOT NULL,
   IS_READ_ONLY            CHAR(1)         CONSTRAINT TAPE_IRO_NN  NOT NULL,
   IS_FROM_CASTOR          CHAR(1)         CONSTRAINT TAPE_IFC_NN  NOT NULL,
   IS_ARCHIVED             CHAR(1)         DEFAULT '0' CONSTRAINT TAPE_IA_NN   NOT NULL,
   IS_EXPORTED             CHAR(1)         DEFAULT '0' CONSTRAINT TAPE_IE_NN   NOT NULL,
+  DIRTY                   CHAR(1)         DEFAULT '1' CONSTRAINT TAPE_DIRTY_NN NOT NULL,
   LABEL_DRIVE             VARCHAR(100),
   LABEL_TIME              NUMERIC(20, 0)    ,
   LAST_READ_DRIVE         VARCHAR(100),
@@ -301,10 +304,10 @@ INSERT INTO CTA_CATALOGUE(
 VALUES(
   1,
   1,
-  'COMPLETE');
+  'PRODUCTION');
 ALTER TABLE ARCHIVE_FILE DROP CONSTRAINT
   ARCHIVE_FILE_DIN_DFI_UN;
 ALTER TABLE ARCHIVE_FILE ADD CONSTRAINT
   ARCHIVE_FILE_DIN_DFI_UN UNIQUE(DISK_INSTANCE_NAME, DISK_FILE_ID) DEFERRABLE INITIALLY IMMEDIATE;
 ALTER TABLE CTA_CATALOGUE ADD CONSTRAINT 
-  CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='COMPLETE') OR (STATUS='UPGRADING'));
+  CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='PRODUCTION') OR (STATUS='UPGRADING'));
diff --git a/catalogue/1.1/sqlite_catalogue_schema.sql b/catalogue/1.1/sqlite_catalogue_schema.sql
index c6de9282321afd3a3ccc4b95da4e60277585e398..638bbc4db74568a3aec54d50a8fc656865be9cb7 100644
--- a/catalogue/1.1/sqlite_catalogue_schema.sql
+++ b/catalogue/1.1/sqlite_catalogue_schema.sql
@@ -119,12 +119,15 @@ CREATE TABLE TAPE(
   CAPACITY_IN_BYTES       INTEGER      CONSTRAINT TAPE_CIB_NN  NOT NULL,
   DATA_IN_BYTES           INTEGER      CONSTRAINT TAPE_DIB_NN  NOT NULL,
   LAST_FSEQ               INTEGER      CONSTRAINT TAPE_LF_NN   NOT NULL,
+  NB_MASTER_FILES         INTEGER      DEFAULT 0 CONSTRAINT TAPE_NB_MASTER_FILES_NN NOT NULL,
+  MASTER_DATA_IN_BYTES    INTEGER      DEFAULT 0 CONSTRAINT TAPE_MASTER_DATA_IN_BYTES_NN NOT NULL,
   IS_DISABLED             CHAR(1)         CONSTRAINT TAPE_ID_NN   NOT NULL,
   IS_FULL                 CHAR(1)         CONSTRAINT TAPE_IF_NN   NOT NULL,
   IS_READ_ONLY            CHAR(1)         CONSTRAINT TAPE_IRO_NN  NOT NULL,
   IS_FROM_CASTOR          CHAR(1)         CONSTRAINT TAPE_IFC_NN  NOT NULL,
   IS_ARCHIVED             CHAR(1)         DEFAULT '0' CONSTRAINT TAPE_IA_NN   NOT NULL,
   IS_EXPORTED             CHAR(1)         DEFAULT '0' CONSTRAINT TAPE_IE_NN   NOT NULL,
+  DIRTY                   CHAR(1)         DEFAULT '1' CONSTRAINT TAPE_DIRTY_NN NOT NULL,
   LABEL_DRIVE             VARCHAR(100),
   LABEL_TIME              INTEGER    ,
   LAST_READ_DRIVE         VARCHAR(100),
@@ -285,4 +288,4 @@ INSERT INTO CTA_CATALOGUE(
 VALUES(
   1,
   1,
-  'COMPLETE');
+  'PRODUCTION');
diff --git a/catalogue/AllCatalogueSchema.hpp b/catalogue/AllCatalogueSchema.hpp
index 8e02355016b7e61c4f2d8de7461d620008e21b90..2254a20ecf5ce853bff147886338c92766048ef9 100644
--- a/catalogue/AllCatalogueSchema.hpp
+++ b/catalogue/AllCatalogueSchema.hpp
@@ -1376,12 +1376,15 @@ namespace catalogue{
   "  CAPACITY_IN_BYTES       NUMERIC(20, 0)      CONSTRAINT TAPE_CIB_NN  NOT NULL,"
   "  DATA_IN_BYTES           NUMERIC(20, 0)      CONSTRAINT TAPE_DIB_NN  NOT NULL,"
   "  LAST_FSEQ               NUMERIC(20, 0)      CONSTRAINT TAPE_LF_NN   NOT NULL,"
+  "  NB_MASTER_FILES         NUMERIC(20, 0)      DEFAULT 0 CONSTRAINT TAPE_NB_MASTER_FILES_NN NOT NULL,"
+  "  MASTER_DATA_IN_BYTES    NUMERIC(20, 0)      DEFAULT 0 CONSTRAINT TAPE_MASTER_DATA_IN_BYTES_NN NOT NULL,"
   "  IS_DISABLED             CHAR(1)         CONSTRAINT TAPE_ID_NN   NOT NULL,"
   "  IS_FULL                 CHAR(1)         CONSTRAINT TAPE_IF_NN   NOT NULL,"
   "  IS_READ_ONLY            CHAR(1)         CONSTRAINT TAPE_IRO_NN  NOT NULL,"
   "  IS_FROM_CASTOR          CHAR(1)         CONSTRAINT TAPE_IFC_NN  NOT NULL,"
   "  IS_ARCHIVED             CHAR(1)         DEFAULT '0' CONSTRAINT TAPE_IA_NN   NOT NULL,"
   "  IS_EXPORTED             CHAR(1)         DEFAULT '0' CONSTRAINT TAPE_IE_NN   NOT NULL,"
+  "  DIRTY                   CHAR(1)         DEFAULT '1' CONSTRAINT TAPE_DIRTY_NN NOT NULL,"
   "  LABEL_DRIVE             VARCHAR2(100),"
   "  LABEL_TIME              NUMERIC(20, 0)    ,"
   "  LAST_READ_DRIVE         VARCHAR2(100),"
@@ -1542,8 +1545,8 @@ namespace catalogue{
   "VALUES("
   "  1,"
   "  1,"
-  "  'COMPLETE');"
-  "ALTER TABLE CTA_CATALOGUE ADD CONSTRAINT CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='COMPLETE') OR (NEXT_SCHEMA_VERSION_MAJOR IS NOT NULL AND NEXT_SCHEMA_VERSION_MINOR IS NOT NULL AND STATUS='UPGRADING')) INITIALLY DEFERRED;"
+  "  'PRODUCTION');"
+  "ALTER TABLE CTA_CATALOGUE ADD CONSTRAINT CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='PRODUCTION') OR (NEXT_SCHEMA_VERSION_MAJOR IS NOT NULL AND NEXT_SCHEMA_VERSION_MINOR IS NOT NULL AND STATUS='UPGRADING')) INITIALLY DEFERRED;"
   ""
   "COMMIT;"
       },
@@ -1677,12 +1680,15 @@ namespace catalogue{
   "  CAPACITY_IN_BYTES       BIGINT UNSIGNED      CONSTRAINT TAPE_CIB_NN  NOT NULL,"
   "  DATA_IN_BYTES           BIGINT UNSIGNED      CONSTRAINT TAPE_DIB_NN  NOT NULL,"
   "  LAST_FSEQ               BIGINT UNSIGNED      CONSTRAINT TAPE_LF_NN   NOT NULL,"
+  "  NB_MASTER_FILES         BIGINT UNSIGNED      DEFAULT 0 CONSTRAINT TAPE_NB_MASTER_FILES_NN NOT NULL,"
+  "  MASTER_DATA_IN_BYTES    BIGINT UNSIGNED      DEFAULT 0 CONSTRAINT TAPE_MASTER_DATA_IN_BYTES_NN NOT NULL,"
   "  IS_DISABLED             CHAR(1)         CONSTRAINT TAPE_ID_NN   NOT NULL,"
   "  IS_FULL                 CHAR(1)         CONSTRAINT TAPE_IF_NN   NOT NULL,"
   "  IS_READ_ONLY            CHAR(1)         CONSTRAINT TAPE_IRO_NN  NOT NULL,"
   "  IS_FROM_CASTOR          CHAR(1)         CONSTRAINT TAPE_IFC_NN  NOT NULL,"
   "  IS_ARCHIVED             CHAR(1)         DEFAULT '0' CONSTRAINT TAPE_IA_NN   NOT NULL,"
   "  IS_EXPORTED             CHAR(1)         DEFAULT '0' CONSTRAINT TAPE_IE_NN   NOT NULL,"
+  "  DIRTY                   CHAR(1)         DEFAULT '1' CONSTRAINT TAPE_DIRTY_NN NOT NULL,"
   "  LABEL_DRIVE             VARCHAR(100),"
   "  LABEL_TIME              BIGINT UNSIGNED    ,"
   "  LAST_READ_DRIVE         VARCHAR(100),"
@@ -1843,9 +1849,9 @@ namespace catalogue{
   "VALUES("
   "  1,"
   "  1,"
-  "  'COMPLETE');"
+  "  'PRODUCTION');"
   "ALTER TABLE CTA_CATALOGUE ADD CONSTRAINT "
-  "  CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='COMPLETE') OR (STATUS='UPGRADING'));"
+  "  CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='PRODUCTION') OR (STATUS='UPGRADING'));"
       },
   {"sqlite",  "CREATE TABLE ARCHIVE_FILE_ID("
   "  ID INTEGER PRIMARY KEY AUTOINCREMENT"
@@ -1968,12 +1974,15 @@ namespace catalogue{
   "  CAPACITY_IN_BYTES       INTEGER      CONSTRAINT TAPE_CIB_NN  NOT NULL,"
   "  DATA_IN_BYTES           INTEGER      CONSTRAINT TAPE_DIB_NN  NOT NULL,"
   "  LAST_FSEQ               INTEGER      CONSTRAINT TAPE_LF_NN   NOT NULL,"
+  "  NB_MASTER_FILES         INTEGER      DEFAULT 0 CONSTRAINT TAPE_NB_MASTER_FILES_NN NOT NULL,"
+  "  MASTER_DATA_IN_BYTES    INTEGER      DEFAULT 0 CONSTRAINT TAPE_MASTER_DATA_IN_BYTES_NN NOT NULL,"
   "  IS_DISABLED             CHAR(1)         CONSTRAINT TAPE_ID_NN   NOT NULL,"
   "  IS_FULL                 CHAR(1)         CONSTRAINT TAPE_IF_NN   NOT NULL,"
   "  IS_READ_ONLY            CHAR(1)         CONSTRAINT TAPE_IRO_NN  NOT NULL,"
   "  IS_FROM_CASTOR          CHAR(1)         CONSTRAINT TAPE_IFC_NN  NOT NULL,"
   "  IS_ARCHIVED             CHAR(1)         DEFAULT '0' CONSTRAINT TAPE_IA_NN   NOT NULL,"
   "  IS_EXPORTED             CHAR(1)         DEFAULT '0' CONSTRAINT TAPE_IE_NN   NOT NULL,"
+  "  DIRTY                   CHAR(1)         DEFAULT '1' CONSTRAINT TAPE_DIRTY_NN NOT NULL,"
   "  LABEL_DRIVE             VARCHAR(100),"
   "  LABEL_TIME              INTEGER    ,"
   "  LAST_READ_DRIVE         VARCHAR(100),"
@@ -2134,7 +2143,7 @@ namespace catalogue{
   "VALUES("
   "  1,"
   "  1,"
-  "  'COMPLETE');"
+  "  'PRODUCTION');"
       },
   {"postgres",  "CREATE SEQUENCE ARCHIVE_FILE_ID_SEQ"
   "  INCREMENT BY 1"
@@ -2273,12 +2282,15 @@ namespace catalogue{
   "  CAPACITY_IN_BYTES       NUMERIC(20, 0)      CONSTRAINT TAPE_CIB_NN  NOT NULL,"
   "  DATA_IN_BYTES           NUMERIC(20, 0)      CONSTRAINT TAPE_DIB_NN  NOT NULL,"
   "  LAST_FSEQ               NUMERIC(20, 0)      CONSTRAINT TAPE_LF_NN   NOT NULL,"
+  "  NB_MASTER_FILES         NUMERIC(20, 0)      DEFAULT 0 CONSTRAINT TAPE_NB_MASTER_FILES_NN NOT NULL,"
+  "  MASTER_DATA_IN_BYTES    NUMERIC(20, 0)      DEFAULT 0 CONSTRAINT TAPE_MASTER_DATA_IN_BYTES_NN NOT NULL,"
   "  IS_DISABLED             CHAR(1)         CONSTRAINT TAPE_ID_NN   NOT NULL,"
   "  IS_FULL                 CHAR(1)         CONSTRAINT TAPE_IF_NN   NOT NULL,"
   "  IS_READ_ONLY            CHAR(1)         CONSTRAINT TAPE_IRO_NN  NOT NULL,"
   "  IS_FROM_CASTOR          CHAR(1)         CONSTRAINT TAPE_IFC_NN  NOT NULL,"
   "  IS_ARCHIVED             CHAR(1)         DEFAULT '0' CONSTRAINT TAPE_IA_NN   NOT NULL,"
   "  IS_EXPORTED             CHAR(1)         DEFAULT '0' CONSTRAINT TAPE_IE_NN   NOT NULL,"
+  "  DIRTY                   CHAR(1)         DEFAULT '1' CONSTRAINT TAPE_DIRTY_NN NOT NULL,"
   "  LABEL_DRIVE             VARCHAR(100),"
   "  LABEL_TIME              NUMERIC(20, 0)    ,"
   "  LAST_READ_DRIVE         VARCHAR(100),"
@@ -2439,13 +2451,13 @@ namespace catalogue{
   "VALUES("
   "  1,"
   "  1,"
-  "  'COMPLETE');"
+  "  'PRODUCTION');"
   "ALTER TABLE ARCHIVE_FILE DROP CONSTRAINT"
   "  ARCHIVE_FILE_DIN_DFI_UN;"
   "ALTER TABLE ARCHIVE_FILE ADD CONSTRAINT"
   "  ARCHIVE_FILE_DIN_DFI_UN UNIQUE(DISK_INSTANCE_NAME, DISK_FILE_ID) DEFERRABLE INITIALLY IMMEDIATE;"
   "ALTER TABLE CTA_CATALOGUE ADD CONSTRAINT "
-  "  CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='COMPLETE') OR (STATUS='UPGRADING'));"
+  "  CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='PRODUCTION') OR (STATUS='UPGRADING'));"
       },
     }  },
 };
diff --git a/catalogue/Catalogue.hpp b/catalogue/Catalogue.hpp
index d2c7d17d1894ec5316a3400031941cabcb7f25cc..e55440a33352bb7905d4fc2e8e4b79754283075e 100644
--- a/catalogue/Catalogue.hpp
+++ b/catalogue/Catalogue.hpp
@@ -753,7 +753,7 @@ public:
    * - SCHEMA_VERSION_MINOR
    * - SCHEMA_VERSION_MAJOR_NEXT (future major version number of the schema in case of upgrade)
    * - SCHEMA_VERSION_MINOR_NEXT (future minor version number of the schema in case of upgrade)
-   * - STATUS (UPGRADING or COMPLETE)	
+   * - STATUS (UPGRADING or PRODUCTION)	
    * 
    * @return The SchemaVersion object corresponding to the catalogue schema version
    */
diff --git a/catalogue/CatalogueMetadataGetter.cpp b/catalogue/CatalogueMetadataGetter.cpp
index 53f0f1cc509728c605c04f974fe783a528bceb52..6c4cd9dc2ac695ae71201a6d181caa5f62652247 100644
--- a/catalogue/CatalogueMetadataGetter.cpp
+++ b/catalogue/CatalogueMetadataGetter.cpp
@@ -70,8 +70,8 @@ SchemaVersion CatalogueMetadataGetter::getCatalogueVersion(){
     SchemaVersion::Builder schemaVersionBuilder;
     schemaVersionBuilder.schemaVersionMajor(rset.columnUint64("SCHEMA_VERSION_MAJOR"))
                         .schemaVersionMinor(rset.columnUint64("SCHEMA_VERSION_MINOR"))
-                        //By default, the status is set as COMPLETE (to be backward-compatible with version 1.0 of the schema)
-                        .status(SchemaVersion::Status::COMPLETE);
+                        //By default, the status is set as PRODUCTION (to be backward-compatible with version 1.0 of the schema)
+                        .status(SchemaVersion::Status::PRODUCTION);
 
     //The cta-catalogue-schema-verify tool has to be backward-compatible with version 1.0
     //of the schema that does not have the NEXT_SCHEMA_VERSION_MAJOR, NEXT_SCHEMA_VERSION_MINOR and the STATUS column
diff --git a/catalogue/RdbmsCatalogue.hpp b/catalogue/RdbmsCatalogue.hpp
index 948b43eb17881c690d696cdce863c9ace835c25b..cd4863683ddef28e4661cba76a4325e5a298c7ab 100644
--- a/catalogue/RdbmsCatalogue.hpp
+++ b/catalogue/RdbmsCatalogue.hpp
@@ -757,7 +757,7 @@ public:
    * - SCHEMA_VERSION_MINOR
    * - SCHEMA_VERSION_MAJOR_NEXT (future major version number of the schema in case of upgrade)
    * - SCHEMA_VERSION_MINOR_NEXT (future minor version number of the schema in case of upgrade)
-   * - STATUS (UPGRADING or COMPLETE)	
+   * - STATUS (UPGRADING or PRODUCTION)	
    * 
    * @return The SchemaVersion object corresponding to the catalogue schema version
    */
diff --git a/catalogue/SchemaVersion.cpp b/catalogue/SchemaVersion.cpp
index ab4e65c79bf8d23aa3cfeb445ba9889ea379e595..a4eca8333e0a2a72fb3d069874b8faa7ce9d236d 100644
--- a/catalogue/SchemaVersion.cpp
+++ b/catalogue/SchemaVersion.cpp
@@ -79,8 +79,8 @@ SchemaVersion::MajorMinor SchemaVersion::getSchemaVersionNext() const {
 template<>
 std::string SchemaVersion::getStatus() const {
   switch(m_status){
-    case COMPLETE:
-      return "COMPLETE";
+    case PRODUCTION:
+      return "PRODUCTION";
     case UPGRADING:
       return "UPGRADING";
     default:
@@ -147,7 +147,7 @@ SchemaVersion::Builder& SchemaVersion::Builder::status(const SchemaVersion::Stat
 }
 
 std::map<std::string,SchemaVersion::Status> SchemaVersion::Builder::s_mapStringStatus {
-  {"COMPLETE",Status::COMPLETE},
+  {"PRODUCTION",Status::PRODUCTION},
   {"UPGRADING",Status::UPGRADING}
 };
 
@@ -155,7 +155,7 @@ void SchemaVersion::Builder::validate() const {
   if(!m_schemaVersionMajorSet || !m_schemaVersionMinorSet){
     throw cta::exception::Exception("In SchemaVersion::Builder::validate(), schemaVersionMajor or schemaVersionMinor have not been set.");
   }
-  if(m_schemaVersion.m_nextSchemaVersionMajor && m_schemaVersion.m_nextSchemaVersionMinor && m_schemaVersion.m_status == SchemaVersion::Status::COMPLETE){
+  if(m_schemaVersion.m_nextSchemaVersionMajor && m_schemaVersion.m_nextSchemaVersionMinor && m_schemaVersion.m_status == SchemaVersion::Status::PRODUCTION){
     throw cta::exception::Exception("In SchemaVersion::Builder::validate(), status is "+m_schemaVersion.getStatus<std::string>()+" but nextSchemaVersionMajor and nextSchemaVersionMinor are defined");
   }
   if(!m_schemaVersion.m_nextSchemaVersionMajor && !m_schemaVersion.m_nextSchemaVersionMinor && m_schemaVersion.m_status == SchemaVersion::Status::UPGRADING){
diff --git a/catalogue/SchemaVersion.hpp b/catalogue/SchemaVersion.hpp
index 7884515a847b154c3e0388bf1e04f8e93aeb27f1..6536a3f1109a2b15811c203e2b67e88f05345a10 100644
--- a/catalogue/SchemaVersion.hpp
+++ b/catalogue/SchemaVersion.hpp
@@ -33,7 +33,7 @@ public:
   
   enum Status{
     UPGRADING,
-    COMPLETE
+    PRODUCTION
   };
   
   SchemaVersion(const SchemaVersion& orig);
diff --git a/catalogue/common_catalogue_schema.sql b/catalogue/common_catalogue_schema.sql
index 838f4efdee18106f011b20865797d22cfbda44d9..63fedd4f31372e38e2f10f63d1ca3d6a7edf18f6 100644
--- a/catalogue/common_catalogue_schema.sql
+++ b/catalogue/common_catalogue_schema.sql
@@ -107,12 +107,15 @@ CREATE TABLE TAPE(
   CAPACITY_IN_BYTES       UINT64TYPE      CONSTRAINT TAPE_CIB_NN  NOT NULL,
   DATA_IN_BYTES           UINT64TYPE      CONSTRAINT TAPE_DIB_NN  NOT NULL,
   LAST_FSEQ               UINT64TYPE      CONSTRAINT TAPE_LF_NN   NOT NULL,
+  NB_MASTER_FILES         UINT64TYPE      DEFAULT 0 CONSTRAINT TAPE_NB_MASTER_FILES_NN NOT NULL,
+  MASTER_DATA_IN_BYTES    UINT64TYPE      DEFAULT 0 CONSTRAINT TAPE_MASTER_DATA_IN_BYTES_NN NOT NULL,
   IS_DISABLED             CHAR(1)         CONSTRAINT TAPE_ID_NN   NOT NULL,
   IS_FULL                 CHAR(1)         CONSTRAINT TAPE_IF_NN   NOT NULL,
   IS_READ_ONLY            CHAR(1)         CONSTRAINT TAPE_IRO_NN  NOT NULL,
   IS_FROM_CASTOR          CHAR(1)         CONSTRAINT TAPE_IFC_NN  NOT NULL,
   IS_ARCHIVED             CHAR(1)         DEFAULT '0' CONSTRAINT TAPE_IA_NN   NOT NULL,
   IS_EXPORTED             CHAR(1)         DEFAULT '0' CONSTRAINT TAPE_IE_NN   NOT NULL,
+  DIRTY                   CHAR(1)         DEFAULT '1' CONSTRAINT TAPE_DIRTY_NN NOT NULL,
   LABEL_DRIVE             VARCHAR(100),
   LABEL_TIME              UINT64TYPE    ,
   LAST_READ_DRIVE         VARCHAR(100),
diff --git a/catalogue/insert_cta_catalogue_version.sql.in b/catalogue/insert_cta_catalogue_version.sql.in
index 644a112b425e765a4791a1aeaeb83a72e9b0116d..011d5bf7b0615fba1bc02b5f80e4f3ecd5220887 100644
--- a/catalogue/insert_cta_catalogue_version.sql.in
+++ b/catalogue/insert_cta_catalogue_version.sql.in
@@ -5,4 +5,4 @@ INSERT INTO CTA_CATALOGUE(
 VALUES(
   @CTA_CATALOGUE_SCHEMA_VERSION_MAJOR@,
   @CTA_CATALOGUE_SCHEMA_VERSION_MINOR@,
-  'COMPLETE');
\ No newline at end of file
+  'PRODUCTION');
\ No newline at end of file
diff --git a/catalogue/migrations/liquibase/oracle/1.0to1.1.sql b/catalogue/migrations/liquibase/oracle/1.0to1.1.sql
index bdddfdd9aa7afa6dab2a5849ac15cae498234142..3414b8ad79ca552c4f8b81d1ca7ca7d532771678 100644
--- a/catalogue/migrations/liquibase/oracle/1.0to1.1.sql
+++ b/catalogue/migrations/liquibase/oracle/1.0to1.1.sql
@@ -17,7 +17,7 @@ ADD (
 --changeset ccaffy:2 failOnError:true dbms:oracle
 --preconditions onFail:HALT onError:HALT
 --precondition-sql-check expectedResult:"1.0" SELECT CONCAT(CONCAT(CAST(SCHEMA_VERSION_MAJOR as VARCHAR(10)),'.'), CAST(SCHEMA_VERSION_MINOR AS VARCHAR(10))) AS CATALOGUE_VERSION FROM CTA_CATALOGUE;
-ALTER TABLE CTA_CATALOGUE ADD CONSTRAINT CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='COMPLETE') OR (NEXT_SCHEMA_VERSION_MAJOR IS NOT NULL AND NEXT_SCHEMA_VERSION_MINOR IS NOT NULL AND STATUS='UPGRADING')) INITIALLY DEFERRED;
+ALTER TABLE CTA_CATALOGUE ADD CONSTRAINT CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='PRODUCTION') OR (NEXT_SCHEMA_VERSION_MAJOR IS NOT NULL AND NEXT_SCHEMA_VERSION_MINOR IS NOT NULL AND STATUS='UPGRADING')) INITIALLY DEFERRED;
 --rollback ALTER TABLE CTA_CATALOGUE DROP CONSTRAINT CATALOGUE_STATUS_CONTENT_CK;
 
 --changeset ccaffy:3 failOnError:true dbms:oracle
@@ -30,7 +30,7 @@ UPDATE CTA_CATALOGUE SET NEXT_SCHEMA_VERSION_MINOR=1;
 
 --rollback UPDATE CTA_CATALOGUE SET NEXT_SCHEMA_VERSION_MAJOR=NULL;
 --rollback UPDATE CTA_CATALOGUE SET NEXT_SCHEMA_VERSION_MINOR=NULL;
---rollback UPDATE CTA_CATALOGUE SET STATUS='COMPLETE';
+--rollback UPDATE CTA_CATALOGUE SET STATUS='PRODUCTION';
 
 --changeset ccaffy:4 failOnError:true dbms:oracle
 --preconditions onFail:HALT onError:HALT
@@ -89,16 +89,29 @@ CREATE INDEX ARCHIVE_FILE_DFI_IDX ON ARCHIVE_FILE(DISK_FILE_ID);
 --changeset ccaffy:13 failOnError:true dbms:oracle
 --preconditions onFail:HALT onError:HALT
 --precondition-sql-check expectedResult:"1.0" SELECT CONCAT(CONCAT(CAST(SCHEMA_VERSION_MAJOR as VARCHAR(10)),'.'), CAST(SCHEMA_VERSION_MINOR AS VARCHAR(10))) AS CATALOGUE_VERSION FROM CTA_CATALOGUE;
+ALTER TABLE TAPE
+ADD (
+  NB_MASTER_FILES         NUMERIC(20, 0) DEFAULT 0 CONSTRAINT TAPE_NB_MASTER_FILES_NN NOT NULL,
+  MASTER_DATA_IN_BYTES    NUMERIC(20, 0) DEFAULT 0 CONSTRAINT TAPE_MASTER_DATA_IN_BYTES_NN NOT NULL,
+  DIRTY                   CHAR(1)        DEFAULT '1' CONSTRAINT TAPE_DIRTY_NN NOT NULL
+);
+--rollback ALTER TABLE TAPE
+--rollback DROP (
+--rollback   NB_MASTER_FILES, MASTER_DATA_IN_BYTES, DIRTY
+--rollback );
+
+--changeset ccaffy:14 failOnError:true dbms:oracle
+--preconditions onFail:HALT onError:HALT
+--precondition-sql-check expectedResult:"1.0" SELECT CONCAT(CONCAT(CAST(SCHEMA_VERSION_MAJOR as VARCHAR(10)),'.'), CAST(SCHEMA_VERSION_MINOR AS VARCHAR(10))) AS CATALOGUE_VERSION FROM CTA_CATALOGUE;
 UPDATE CTA_CATALOGUE SET SCHEMA_VERSION_MINOR=1;
 --rollback UPDATE CTA_CATALOGUE SET SCHEMA_VERSION_MINOR=0
 
---changeset ccaffy:14 failOnError:true dbms:oracle
+--changeset ccaffy:15 failOnError:true dbms:oracle
 --preconditions onFail:HALT onError:HALT
 --precondition-sql-check expectedResult:"1.1" SELECT CONCAT(CONCAT(CAST(SCHEMA_VERSION_MAJOR as VARCHAR(10)),'.'), CAST(SCHEMA_VERSION_MINOR AS VARCHAR(10))) AS CATALOGUE_VERSION FROM CTA_CATALOGUE;
 UPDATE CTA_CATALOGUE SET NEXT_SCHEMA_VERSION_MAJOR=NULL;
 UPDATE CTA_CATALOGUE SET NEXT_SCHEMA_VERSION_MINOR=NULL;
-UPDATE CTA_CATALOGUE SET STATUS='COMPLETE';
-
+UPDATE CTA_CATALOGUE SET STATUS='PRODUCTION';
 --rollback UPDATE CTA_CATALOGUE SET STATUS='UPGRADING';
 --rollback UPDATE CTA_CATALOGUE SET NEXT_SCHEMA_VERSION_MAJOR=1;
 --rollback UPDATE CTA_CATALOGUE SET NEXT_SCHEMA_VERSION_MINOR=1;
diff --git a/catalogue/mysql_catalogue_schema_trailer.sql b/catalogue/mysql_catalogue_schema_trailer.sql
index 297849c8f7d84dc42ff17bd10764272988ddd96c..de3efc6ffc9f5ed62ba6801445ea95ffdc75a437 100644
--- a/catalogue/mysql_catalogue_schema_trailer.sql
+++ b/catalogue/mysql_catalogue_schema_trailer.sql
@@ -1,2 +1,2 @@
 ALTER TABLE CTA_CATALOGUE ADD CONSTRAINT 
-  CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='COMPLETE') OR (STATUS='UPGRADING'));
\ No newline at end of file
+  CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='PRODUCTION') OR (STATUS='UPGRADING'));
\ No newline at end of file
diff --git a/catalogue/oracle_catalogue_schema_trailer.sql b/catalogue/oracle_catalogue_schema_trailer.sql
index 1ae83ac443f2aa82e7b105c8ba63c3dd5eab1230..da1a196278bf0e3c6de618c66cee30febd134500 100644
--- a/catalogue/oracle_catalogue_schema_trailer.sql
+++ b/catalogue/oracle_catalogue_schema_trailer.sql
@@ -1,3 +1,3 @@
-ALTER TABLE CTA_CATALOGUE ADD CONSTRAINT CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='COMPLETE') OR (NEXT_SCHEMA_VERSION_MAJOR IS NOT NULL AND NEXT_SCHEMA_VERSION_MINOR IS NOT NULL AND STATUS='UPGRADING')) INITIALLY DEFERRED;
+ALTER TABLE CTA_CATALOGUE ADD CONSTRAINT CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='PRODUCTION') OR (NEXT_SCHEMA_VERSION_MAJOR IS NOT NULL AND NEXT_SCHEMA_VERSION_MINOR IS NOT NULL AND STATUS='UPGRADING')) INITIALLY DEFERRED;
 
 COMMIT;
diff --git a/catalogue/postgres_catalogue_schema_trailer.sql b/catalogue/postgres_catalogue_schema_trailer.sql
index 991527176c55bba4f1236aeef1592e580cadb6f0..8ed899707a71489a4689bd602a7e63d413782c91 100644
--- a/catalogue/postgres_catalogue_schema_trailer.sql
+++ b/catalogue/postgres_catalogue_schema_trailer.sql
@@ -3,4 +3,4 @@ ALTER TABLE ARCHIVE_FILE DROP CONSTRAINT
 ALTER TABLE ARCHIVE_FILE ADD CONSTRAINT
   ARCHIVE_FILE_DIN_DFI_UN UNIQUE(DISK_INSTANCE_NAME, DISK_FILE_ID) DEFERRABLE INITIALLY IMMEDIATE;
 ALTER TABLE CTA_CATALOGUE ADD CONSTRAINT 
-  CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='COMPLETE') OR (STATUS='UPGRADING'));
+  CATALOGUE_STATUS_CONTENT_CK CHECK((NEXT_SCHEMA_VERSION_MAJOR IS NULL AND NEXT_SCHEMA_VERSION_MINOR IS NULL AND STATUS='PRODUCTION') OR (STATUS='UPGRADING'));