From 7b69da362fa2f2d53ec5378539195b8a4a7cfa41 Mon Sep 17 00:00:00 2001 From: Kim van der Riet Date: Thu, 14 Nov 2013 20:39:32 +0000 Subject: QPID-4984: Fix for recovery ambiguity issue, other code tidy-ups git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1542066 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/linearstore/jrnl/LinearFileController.cpp | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'cpp/src/qpid/linearstore/jrnl/LinearFileController.cpp') diff --git a/cpp/src/qpid/linearstore/jrnl/LinearFileController.cpp b/cpp/src/qpid/linearstore/jrnl/LinearFileController.cpp index 2c1327d645..9daebaba80 100644 --- a/cpp/src/qpid/linearstore/jrnl/LinearFileController.cpp +++ b/cpp/src/qpid/linearstore/jrnl/LinearFileController.cpp @@ -32,7 +32,8 @@ //#include // DEBUG namespace qpid { -namespace qls_jrnl { +namespace linearstore { +namespace journal { LinearFileController::LinearFileController(jcntl& jcntlRef) : jcntlRef_(jcntlRef), @@ -90,7 +91,7 @@ void LinearFileController::pullEmptyFileFromEfp() { currentJournalFilePtr_->close(); std::string ef = emptyFilePoolPtr_->takeEmptyFile(journalDirectory_); // Moves file from EFP only, returns new file name //std::cout << "*** LinearFileController::pullEmptyFileFromEfp() qn=" << jcntlRef.id() << " ef=" << ef << std::endl; // DEBUG - addJournalFile(ef, getNextFileSeqNum(), emptyFilePoolPtr_->dataSize_kib(), 0); + addJournalFile(ef, emptyFilePoolPtr_->getIdentity(), getNextFileSeqNum(), 0); } void LinearFileController::purgeEmptyFilesToEfp() { @@ -149,6 +150,11 @@ uint64_t LinearFileController::getCurrentFileSeqNum() const { return currentJournalFilePtr_->getFileSeqNum(); } +uint64_t LinearFileController::getCurrentSerial() const { + assertCurrentJournalFileValid("getCurrentSerial"); + return currentJournalFilePtr_->getSerial(); +} + bool LinearFileController::isEmpty() const { assertCurrentJournalFileValid("isEmpty"); return currentJournalFilePtr_->isEmpty(); @@ -173,10 +179,10 @@ const std::string LinearFileController::status(const uint8_t indentDepth) const // --- protected functions --- void LinearFileController::addJournalFile(const std::string& fileName, + const efpIdentity_t& efpIdentity, const uint64_t fileNumber, - const uint32_t fileSize_kib, const uint32_t completedDblkCount) { - JournalFile* jfp = new JournalFile(fileName, fileNumber, fileSize_kib); + JournalFile* jfp = new JournalFile(fileName, efpIdentity, fileNumber); addJournalFile(jfp, completedDblkCount); } @@ -219,4 +225,4 @@ void LinearFileController::purgeEmptyFilesToEfpNoLock() { } } -}} // namespace qpid::qls_jrnl +}}} -- cgit v1.2.1