diff --git a/tapeserver/castor/tape/tapeserver/daemon/RecallTaskInjector.cpp b/tapeserver/castor/tape/tapeserver/daemon/RecallTaskInjector.cpp index f2731602ef43dfd6bb493ba746dc094167376632..92496871b1ac13fca5b292c58360e34d6819c775 100644 --- a/tapeserver/castor/tape/tapeserver/daemon/RecallTaskInjector.cpp +++ b/tapeserver/castor/tape/tapeserver/daemon/RecallTaskInjector.cpp @@ -62,11 +62,6 @@ RecallTaskInjector::~RecallTaskInjector(){ void RecallTaskInjector::finish(){ cta::threading::MutexLocker ml(m_producerProtection); m_queue.push(Request()); - /* Since this is the ending request, the RecallTaskInjector does not need - * to wait to have access to the drive - */ - if (m_useRAO) - setPromise(); } //------------------------------------------------------------------------------ //requestInjection diff --git a/tapeserver/castor/tape/tapeserver/daemon/TapeReadSingleThread.cpp b/tapeserver/castor/tape/tapeserver/daemon/TapeReadSingleThread.cpp index a523f64500ba5ea1baa6597e52bab54c85c3e0ae..f17a567ef1099dbb071087dfb53f3e77223f2c12 100644 --- a/tapeserver/castor/tape/tapeserver/daemon/TapeReadSingleThread.cpp +++ b/tapeserver/castor/tape/tapeserver/daemon/TapeReadSingleThread.cpp @@ -156,12 +156,10 @@ castor::tape::tapeserver::daemon::TapeReadSingleThread::popAndRequestMoreJobs(){ vrp = m_tasks.popGetSize(); // If we just passed (down) the half full limit, ask for more // (the remaining value is after pop) - isLastTask = false; if(0 == vrp.remaining) { // This is a last call: if the task injector comes up empty on this // one, he'll call it the end. m_taskInjector->requestInjection(true); - isLastTask = true; } else if (vrp.remaining + 1 == m_maxFilesRequest/2) { // This is not a last call m_taskInjector->requestInjection(false); @@ -322,11 +320,6 @@ void castor::tape::tapeserver::daemon::TapeReadSingleThread::run() { // This can lead the the session being marked as corrupt, so we test // it in the while loop task->execute(*rs, m_logContext, m_watchdog,m_stats,timer); - if (m_useRAO && isLastTask) { - // After the execution of all recalls, the TapeReadSingleThread - // passes the access to the drive to the RecallTaskInjector - m_taskInjector->setPromise(); - } // Transmit the statistics to the watchdog thread m_watchdog.updateStatsWithoutDeliveryTime(m_stats); // The session could have been corrupted (failed positioning) diff --git a/tapeserver/castor/tape/tapeserver/daemon/TapeReadSingleThread.hpp b/tapeserver/castor/tape/tapeserver/daemon/TapeReadSingleThread.hpp index f9675711ecad23283267890d39553a66f48531d1..f686faa39c849380e6c3a2c97f937255717d94f3 100644 --- a/tapeserver/castor/tape/tapeserver/daemon/TapeReadSingleThread.hpp +++ b/tapeserver/castor/tape/tapeserver/daemon/TapeReadSingleThread.hpp @@ -152,7 +152,6 @@ private: * Access Order */ bool m_useRAO; - bool isLastTask; /// Helper virtual function to access the watchdog from parent class virtual void countTapeLogError(const std::string & error) { m_watchdog.addToErrorCount(error);