diff --git a/catalogue/OracleCatalogue.cpp b/catalogue/OracleCatalogue.cpp index 687d8f53eef26872cc5bd2762663c93768577c5c..76f8fb9e3b164ae24c22b7547ac965574c3667cd 100644 --- a/catalogue/OracleCatalogue.cpp +++ b/catalogue/OracleCatalogue.cpp @@ -377,8 +377,11 @@ void OracleCatalogue::filesWrittenToTape(const std::set<TapeItemWrittenPointer> const TapeItemWritten &lastEvent = **lastEventItor; updateTape(conn, lastEvent.vid, lastEvent.fSeq, totalCompressedBytesWritten, lastEvent.tapeDrive); - // If we had only placeholders and no file recorded, we are done. - if (fileEvents.empty()) return; + // If we had only placeholders and no file recorded, we are done (but we still commit the update of the tape's fSeq). + if (fileEvents.empty()) { + conn.commit(); + return; + } // Create the archive file entries, skipping those that already exist idempotentBatchInsertArchiveFiles(conn, fileEvents);