diff --git a/CMakeLists.txt b/CMakeLists.txt index 1b17823566d5f878c2549dce761ed8d9233480c0..6a99f6b4df5008e9d9d6734ecb6dae6dd396ba10 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -139,7 +139,7 @@ ELSE(DEFINED PackageOnly) add_subdirectory(catalogue) add_subdirectory(common) - add_subdirectory(eos) + add_subdirectory(disk) add_subdirectory(mediachanger) add_subdirectory(objectstore) add_subdirectory(python) diff --git a/cta.spec.in b/cta.spec.in index 4a7933ec1ef15948ed17d91a4692aafc8b49830c..0b7a6e073b9b56e73bedc8618d8b7e9e1daa431b 100644 --- a/cta.spec.in +++ b/cta.spec.in @@ -246,6 +246,7 @@ The shared libraries %{_libdir}/libctamessagesutils.so* %{_libdir}/libctardbms.so* %{_libdir}/libctardbmswrapper.so* +%{_libdir}/libdisk.so* %attr(0644,root,root) %config(noreplace) %{_sysconfdir}/cta/cta-catalogue.conf.example #CTA-lib installs libraries so we need ldconfig. diff --git a/eos/CMakeLists.txt b/disk/CMakeLists.txt similarity index 57% rename from eos/CMakeLists.txt rename to disk/CMakeLists.txt index 3a9e4224214e08e889c57d4633aa9288a7a33437..e0b0891f8b93de8bdd20a45534e7f06381bae566 100644 --- a/eos/CMakeLists.txt +++ b/disk/CMakeLists.txt @@ -16,11 +16,30 @@ cmake_minimum_required (VERSION 2.6) +find_package (xrootd REQUIRED) find_package (xrootdclient REQUIRED) + include_directories (${XROOTD_INCLUDE_DIR} ${CMAKE_SOURCE_DIR}) -add_library (ctaeos +add_library(disk SHARED DiskReporter.cpp DiskReporterFactory.cpp - EOSReporter.cpp) + EOSReporter.cpp + DiskFile.cpp + RadosStriperPool.cpp +) + +target_link_libraries (disk XrdCl cryptopp radosstriper) + +set_property(TARGET disk PROPERTY SOVERSION "${CTA_SOVERSION}") +set_property(TARGET disk PROPERTY VERSION "${CTA_LIBVERSION}") + +add_library(ctadiskunittests SHARED + CryptoPPTest.cpp +) + +set_property(TARGET ctadiskunittests PROPERTY SOVERSION "${CTA_SOVERSION}") +set_property(TARGET ctadiskunittests PROPERTY VERSION "${CTA_LIBVERSION}") +install(TARGETS disk DESTINATION usr/${CMAKE_INSTALL_LIBDIR}) +install(TARGETS ctadiskunittests DESTINATION usr/${CMAKE_INSTALL_LIBDIR}) \ No newline at end of file diff --git a/tapeserver/castor/tape/tapeserver/file/CryptoPPTest.cpp b/disk/CryptoPPTest.cpp similarity index 98% rename from tapeserver/castor/tape/tapeserver/file/CryptoPPTest.cpp rename to disk/CryptoPPTest.cpp index 7ab487297746d230849963f215cce59de9e4c622..b138ab44106c52dfb701a5c06bd6fb35580ae58b 100644 --- a/tapeserver/castor/tape/tapeserver/file/CryptoPPTest.cpp +++ b/disk/CryptoPPTest.cpp @@ -23,9 +23,9 @@ #include <gtest/gtest.h> #include "common/threading/Thread.hpp" -#include "castor/tape/tapeserver/file/DiskFileImplementations.hpp" -#include "castor/tape/tapeserver/file/DiskFile.hpp" -#include "castor/tape/tapeserver/file/RadosStriperPool.hpp" +#include "disk/DiskFileImplementations.hpp" +#include "disk/DiskFile.hpp" +#include "disk/RadosStriperPool.hpp" #include <cryptopp/base64.h> #include <cryptopp/osrng.h> diff --git a/tapeserver/castor/tape/tapeserver/file/DiskFile.cpp b/disk/DiskFile.cpp similarity index 99% rename from tapeserver/castor/tape/tapeserver/file/DiskFile.cpp rename to disk/DiskFile.cpp index 7d11cb26a7701ea678224cc1677d2e9c5747ab1a..3dc01e8fdb6aa696d020edb0a3fad7909b49d386 100644 --- a/tapeserver/castor/tape/tapeserver/file/DiskFile.cpp +++ b/disk/DiskFile.cpp @@ -23,8 +23,8 @@ #include <sys/types.h> #include <sys/stat.h> -#include "castor/tape/tapeserver/file/DiskFileImplementations.hpp" -#include "castor/tape/tapeserver/file/RadosStriperPool.hpp" +#include "disk/DiskFileImplementations.hpp" +#include "disk/RadosStriperPool.hpp" #include "common/exception/Errnum.hpp" #include "common/threading/MutexLocker.hpp" #include "common/utils/utils.hpp" diff --git a/tapeserver/castor/tape/tapeserver/file/DiskFile.hpp b/disk/DiskFile.hpp similarity index 100% rename from tapeserver/castor/tape/tapeserver/file/DiskFile.hpp rename to disk/DiskFile.hpp diff --git a/tapeserver/castor/tape/tapeserver/file/DiskFileImplementations.hpp b/disk/DiskFileImplementations.hpp similarity index 99% rename from tapeserver/castor/tape/tapeserver/file/DiskFileImplementations.hpp rename to disk/DiskFileImplementations.hpp index a95b7b9a192b803d5e6c302b8dad188e3ee06e48..eb799a2b39f89816d81a41a2359630db88704af5 100644 --- a/tapeserver/castor/tape/tapeserver/file/DiskFileImplementations.hpp +++ b/disk/DiskFileImplementations.hpp @@ -23,7 +23,7 @@ #pragma once -#include "tapeserver/castor/tape/tapeserver/file/DiskFile.hpp" +#include "disk/DiskFile.hpp" #include "tapeserver/castor/tape/tapeserver/file/Structures.hpp" #include "tapeserver/castor/tape/tapeserver/daemon/VolumeInfo.hpp" #include "common/exception/XrootCl.hpp" diff --git a/eos/DiskReporter.cpp b/disk/DiskReporter.cpp similarity index 100% rename from eos/DiskReporter.cpp rename to disk/DiskReporter.cpp diff --git a/eos/DiskReporter.hpp b/disk/DiskReporter.hpp similarity index 100% rename from eos/DiskReporter.hpp rename to disk/DiskReporter.hpp diff --git a/eos/DiskReporterFactory.cpp b/disk/DiskReporterFactory.cpp similarity index 100% rename from eos/DiskReporterFactory.cpp rename to disk/DiskReporterFactory.cpp diff --git a/eos/DiskReporterFactory.hpp b/disk/DiskReporterFactory.hpp similarity index 100% rename from eos/DiskReporterFactory.hpp rename to disk/DiskReporterFactory.hpp diff --git a/eos/EOSReporter.cpp b/disk/EOSReporter.cpp similarity index 100% rename from eos/EOSReporter.cpp rename to disk/EOSReporter.cpp diff --git a/eos/EOSReporter.hpp b/disk/EOSReporter.hpp similarity index 100% rename from eos/EOSReporter.hpp rename to disk/EOSReporter.hpp diff --git a/eos/NullReporter.hpp b/disk/NullReporter.hpp similarity index 100% rename from eos/NullReporter.hpp rename to disk/NullReporter.hpp diff --git a/tapeserver/castor/tape/tapeserver/file/RadosStriperPool.cpp b/disk/RadosStriperPool.cpp similarity index 100% rename from tapeserver/castor/tape/tapeserver/file/RadosStriperPool.cpp rename to disk/RadosStriperPool.cpp diff --git a/tapeserver/castor/tape/tapeserver/file/RadosStriperPool.hpp b/disk/RadosStriperPool.hpp similarity index 100% rename from tapeserver/castor/tape/tapeserver/file/RadosStriperPool.hpp rename to disk/RadosStriperPool.hpp diff --git a/scheduler/ArchiveJob.cpp b/scheduler/ArchiveJob.cpp index ee2cb7c24a0effa032949d1f87a2722387641a05..98e26951421d843c9d5b64add0f1c5091b8f016c 100644 --- a/scheduler/ArchiveJob.cpp +++ b/scheduler/ArchiveJob.cpp @@ -18,7 +18,7 @@ #include "scheduler/ArchiveJob.hpp" #include "scheduler/ArchiveMount.hpp" -#include "eos/DiskReporterFactory.hpp" +#include "disk/DiskReporterFactory.hpp" #include "common/make_unique.hpp" #include <limits> #include <cryptopp/base64.h> diff --git a/scheduler/ArchiveJob.hpp b/scheduler/ArchiveJob.hpp index 8fa331c79216e24243a32cfb0eea93abcba24388..a157d088a064d7afc3a5e1af08a1bb91e42b4a45 100644 --- a/scheduler/ArchiveJob.hpp +++ b/scheduler/ArchiveJob.hpp @@ -23,7 +23,7 @@ #include "common/Timer.hpp" #include "scheduler/SchedulerDatabase.hpp" #include "catalogue/Catalogue.hpp" -#include "eos/DiskReporter.hpp" +#include "disk/DiskReporter.hpp" #include <stdint.h> #include <string> diff --git a/scheduler/ArchiveMount.hpp b/scheduler/ArchiveMount.hpp index a7012b6233a8d26f8a23d978d3f9a930da6b513d..ec9dcc0009ed2011c77f49d385badb67132603b0 100644 --- a/scheduler/ArchiveMount.hpp +++ b/scheduler/ArchiveMount.hpp @@ -23,7 +23,7 @@ #include "scheduler/SchedulerDatabase.hpp" #include "scheduler/TapeMount.hpp" #include "catalogue/Catalogue.hpp" -#include "eos/DiskReporterFactory.hpp" +#include "disk/DiskReporterFactory.hpp" #include <memory> #include <atomic> diff --git a/scheduler/CMakeLists.txt b/scheduler/CMakeLists.txt index 9f80a883c3d0cf1cee3f044dc457991dee5f5748..9632cd3dc87bef6f01117a5142cb13d057b44223 100644 --- a/scheduler/CMakeLists.txt +++ b/scheduler/CMakeLists.txt @@ -34,7 +34,7 @@ set_property(TARGET ctascheduler PROPERTY VERSION "${CTA_LIBVERSION}") install (TARGETS ctascheduler DESTINATION usr/${CMAKE_INSTALL_LIBDIR}) -target_link_libraries (ctascheduler ctacommon ctaobjectstore ${PROTOBUF3_LIBRARIES} ctaeos File) +target_link_libraries (ctascheduler ctacommon ctaobjectstore ${PROTOBUF3_LIBRARIES} disk) #add_library (ctaschedulerutils SHARED # _old_prototype_DummyScheduler.cpp) diff --git a/scheduler/DiskReportRunner.hpp b/scheduler/DiskReportRunner.hpp index 50eb47cd74d661384cc4bd01d0280f4f68ee4049..2d35c173b7dc575897eca3caabab2f5ab5e4751b 100644 --- a/scheduler/DiskReportRunner.hpp +++ b/scheduler/DiskReportRunner.hpp @@ -19,7 +19,7 @@ #pragma once #include "common/log/LogContext.hpp" -#include "eos/DiskReporterFactory.hpp" +#include "disk/DiskReporterFactory.hpp" namespace cta { diff --git a/scheduler/OStoreDB/OStoreDB.cpp b/scheduler/OStoreDB/OStoreDB.cpp index 1670419788d6c42f0e71967ab497febf79c56275..e388b8cd7d2d0ee5100da79d85cf20ca69aabc69 100644 --- a/scheduler/OStoreDB/OStoreDB.cpp +++ b/scheduler/OStoreDB/OStoreDB.cpp @@ -37,7 +37,7 @@ #include "common/make_unique.hpp" #include "tapeserver/castor/tape/tapeserver/daemon/TapeSessionStats.hpp" #include "Scheduler.hpp" -#include "tapeserver/castor/tape/tapeserver/file/DiskFile.hpp" +#include "disk/DiskFile.hpp" #include <algorithm> #include <cmath> #include <stdlib.h> /* srand, rand */ diff --git a/scheduler/RetrieveJob.cpp b/scheduler/RetrieveJob.cpp index 567119857c1b63b43f929f391077acd78987fbf2..e3b4c77343d4809370fc690cba17d42e164cefd3 100644 --- a/scheduler/RetrieveJob.cpp +++ b/scheduler/RetrieveJob.cpp @@ -18,7 +18,7 @@ #include "scheduler/RetrieveJob.hpp" #include "common/Timer.hpp" -#include "eos/DiskReporter.hpp" +#include "disk/DiskReporter.hpp" #include "RetrieveMount.hpp" #include <cryptopp/base64.h> #include <future> diff --git a/scheduler/RetrieveMount.hpp b/scheduler/RetrieveMount.hpp index 753056d8949a5b5b6379f37df549dbb52d648694..728474d88b0c84538f42a034281b2d5ebc2f7b64 100644 --- a/scheduler/RetrieveMount.hpp +++ b/scheduler/RetrieveMount.hpp @@ -23,7 +23,7 @@ #include "scheduler/RetrieveMount.hpp" #include "scheduler/SchedulerDatabase.hpp" #include "scheduler/TapeMount.hpp" -#include "eos/DiskReporterFactory.hpp" +#include "disk/DiskReporterFactory.hpp" #include <memory> #include <queue> diff --git a/scheduler/Scheduler.cpp b/scheduler/Scheduler.cpp index c915b3c4f0d756dabc2f13c829fa7ffd7b7fce6e..571fdbc9e67da5aab4967751c100912e02164688 100644 --- a/scheduler/Scheduler.cpp +++ b/scheduler/Scheduler.cpp @@ -30,8 +30,8 @@ #include "common/make_unique.hpp" #include "objectstore/RepackRequest.hpp" #include "RetrieveRequestDump.hpp" -#include "tapeserver/castor/tape/tapeserver/file/DiskFileImplementations.hpp" -#include "tapeserver/castor/tape/tapeserver/file/RadosStriperPool.hpp" +#include "disk/DiskFileImplementations.hpp" +#include "disk/RadosStriperPool.hpp" #include <iostream> #include <sstream> diff --git a/scheduler/Scheduler.hpp b/scheduler/Scheduler.hpp index cffd8d3ba2018d132280b263917016ac2e536c81..3c4867bce8529e4e1e0d445a35aac6a5439e5150 100644 --- a/scheduler/Scheduler.hpp +++ b/scheduler/Scheduler.hpp @@ -51,8 +51,8 @@ #include "objectstore/RetrieveRequest.hpp" #include "objectstore/ArchiveRequest.hpp" -#include "eos/DiskReporter.hpp" -#include "eos/DiskReporterFactory.hpp" +#include "disk/DiskReporter.hpp" +#include "disk/DiskReporterFactory.hpp" #include <list> #include <map> diff --git a/tapeserver/castor/tape/tapeserver/daemon/DiskReadTask.hpp b/tapeserver/castor/tape/tapeserver/daemon/DiskReadTask.hpp index 04690255d68c9e4653f4fe9497a2998317319ff6..5a8a7dca503358db0dcf830c3ba442ffc6811cce 100644 --- a/tapeserver/castor/tape/tapeserver/daemon/DiskReadTask.hpp +++ b/tapeserver/castor/tape/tapeserver/daemon/DiskReadTask.hpp @@ -30,7 +30,7 @@ #include "castor/tape/tapeserver/daemon/TaskWatchDog.hpp" #include "common/threading/AtomicFlag.hpp" #include "common/log/LogContext.hpp" -#include "castor/tape/tapeserver/file/DiskFile.hpp" +#include "disk/DiskFile.hpp" namespace castor { namespace tape { diff --git a/tapeserver/castor/tape/tapeserver/daemon/DiskReadTaskTest.cpp b/tapeserver/castor/tape/tapeserver/daemon/DiskReadTaskTest.cpp index 4a37689d010e197ec124e3a36d02baebb193f6cf..dbe9e6de4ca4d581694d487493863f19a31b8b23 100644 --- a/tapeserver/castor/tape/tapeserver/daemon/DiskReadTaskTest.cpp +++ b/tapeserver/castor/tape/tapeserver/daemon/DiskReadTaskTest.cpp @@ -25,7 +25,7 @@ #include "castor/tape/tapeserver/daemon/MigrationMemoryManager.hpp" #include "castor/tape/tapeserver/daemon/MigrationReportPacker.hpp" #include "castor/tape/tapeserver/daemon/MemBlock.hpp" -#include "castor/tape/tapeserver/file/RadosStriperPool.hpp" +#include "disk/RadosStriperPool.hpp" #include "common/log/LogContext.hpp" #include "common/log/StringLogger.hpp" #include "castor/messages/TapeserverProxyDummy.hpp" diff --git a/tapeserver/castor/tape/tapeserver/daemon/DiskReadThreadPool.hpp b/tapeserver/castor/tape/tapeserver/daemon/DiskReadThreadPool.hpp index 6de7e7cb1cbc9c9a4460064d3f4d8270f41e419a..993908dbb6fd9000572e772d7e76c1e1f54e61e5 100644 --- a/tapeserver/castor/tape/tapeserver/daemon/DiskReadThreadPool.hpp +++ b/tapeserver/castor/tape/tapeserver/daemon/DiskReadThreadPool.hpp @@ -26,7 +26,7 @@ #include "castor/tape/tapeserver/daemon/DiskReadTask.hpp" #include "castor/tape/tapeserver/daemon/TaskWatchDog.hpp" -#include "castor/tape/tapeserver/file/RadosStriperPool.hpp" +#include "disk/RadosStriperPool.hpp" #include "common/threading/BlockingQueue.hpp" #include "common/threading/Thread.hpp" #include "common/threading/AtomicCounter.hpp" diff --git a/tapeserver/castor/tape/tapeserver/daemon/DiskWriteThreadPool.hpp b/tapeserver/castor/tape/tapeserver/daemon/DiskWriteThreadPool.hpp index 8fdcd68f2551ce3b56b9233e757c5087896a5b7f..725a78624f1211fc1922356240a16d52530f01c5 100644 --- a/tapeserver/castor/tape/tapeserver/daemon/DiskWriteThreadPool.hpp +++ b/tapeserver/castor/tape/tapeserver/daemon/DiskWriteThreadPool.hpp @@ -32,7 +32,7 @@ #include "castor/tape/tapeserver/daemon/DiskWriteTask.hpp" #include "castor/tape/tapeserver/daemon/DiskStats.hpp" #include "castor/tape/tapeserver/daemon/TaskWatchDog.hpp" -#include "castor/tape/tapeserver/file/RadosStriperPool.hpp" +#include "disk/RadosStriperPool.hpp" #include "common/Timer.hpp" #include <vector> #define __STDC_FORMAT_MACROS diff --git a/tapeserver/castor/tape/tapeserver/daemon/Payload.hpp b/tapeserver/castor/tape/tapeserver/daemon/Payload.hpp index 7767bcb42a55204643ef27748b0200e275130ada..d8fd1adde6a7d1c63a9ed6e343431309bc8ad2a4 100644 --- a/tapeserver/castor/tape/tapeserver/daemon/Payload.hpp +++ b/tapeserver/castor/tape/tapeserver/daemon/Payload.hpp @@ -21,7 +21,7 @@ * @author Castor Dev team, castor-dev@cern.ch *****************************************************************************/ #include <zlib.h> -#include "castor/tape/tapeserver/file/DiskFile.hpp" +#include "disk/DiskFile.hpp" #include "castor/tape/tapeserver/file/File.hpp" #include "common/exception/MemException.hpp" #include "common/exception/EndOfFile.hpp" diff --git a/tapeserver/castor/tape/tapeserver/file/CMakeLists.txt b/tapeserver/castor/tape/tapeserver/file/CMakeLists.txt index 9d7881ba4c9219206a487fb3e5fde1b9c24a5ac6..86a4cd552895eb5fbf44ede5c544178c61a07a34 100644 --- a/tapeserver/castor/tape/tapeserver/file/CMakeLists.txt +++ b/tapeserver/castor/tape/tapeserver/file/CMakeLists.txt @@ -27,8 +27,6 @@ include_directories (${XROOTD_INCLUDE_DIR}) set(TAPESERVER_FILE_LIBRARY_SRCS File.cpp - DiskFile.cpp - RadosStriperPool.cpp Structures.cpp) if(CMAKE_COMPILER_IS_GNUCC) @@ -62,7 +60,6 @@ target_link_libraries(BasicReadWriteTest add_library(File ${TAPESERVER_FILE_LIBRARY_SRCS}) -target_link_libraries (File XrdCl cryptopp radosstriper) if(CMAKE_COMPILER_IS_GNUCC) if(GCC_VERSION_GE_4_8_0) @@ -78,7 +75,12 @@ endif(CMAKE_COMPILER_IS_GNUCC) add_library(ctatapeserverfileunittests SHARED StructuresTest.cpp FileTest.cpp - CryptoPPTest.cpp) +) + +target_link_libraries(ctatapeserverfileunittests + disk +) + set_property(TARGET ctatapeserverfileunittests PROPERTY SOVERSION "${CTA_SOVERSION}") set_property(TARGET ctatapeserverfileunittests PROPERTY VERSION "${CTA_LIBVERSION}") diff --git a/tapeserver/castor/tape/tapeserver/file/FileTest.cpp b/tapeserver/castor/tape/tapeserver/file/FileTest.cpp index d8c676478383da75babccf10edcc2ae8b1c58ef4..03bf6fd3d90ed0c693a50e68ad820b3945440c37 100644 --- a/tapeserver/castor/tape/tapeserver/file/FileTest.cpp +++ b/tapeserver/castor/tape/tapeserver/file/FileTest.cpp @@ -26,13 +26,13 @@ #include "castor/tape/tapeserver/drive/DriveInterface.hpp" #include "castor/tape/tapeserver/drive/FakeDrive.hpp" #include "castor/tape/tapeserver/file/File.hpp" -#include "castor/tape/tapeserver/file/DiskFile.hpp" -#include "castor/tape/tapeserver/file/RadosStriperPool.hpp" +#include "disk/DiskFile.hpp" +#include "disk/RadosStriperPool.hpp" #include "common/exception/Errnum.hpp" #include "common/exception/Exception.hpp" #include "scheduler/ArchiveJob.hpp" #include "scheduler/RetrieveJob.hpp" -#include "DiskFileImplementations.hpp" +#include "disk/DiskFileImplementations.hpp" #include <gtest/gtest.h> #include <memory> diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 18c79e2aef871b9b5ea0cb93e1321ce190e0fcbc..620fd8287a120dfe797ad2fb32f477c2fb9f1094 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -40,6 +40,7 @@ target_link_libraries(cta-unitTests ctatapeserverdriveunittests ctatapeserverfileunittests ctatapeserverscsiunittests + ctadiskunittests gtest pthread)