From e98674e009039762532841e0b860dd75019fe8d5 Mon Sep 17 00:00:00 2001 From: Steven Murray <Steven.Murray@cern.ch> Date: Mon, 14 Sep 2020 20:38:42 +0200 Subject: [PATCH] cta/CTA#877 ObjectStore.RetrieveQueueAlgorithms unit tests fails or succeeds base on version of cmake As suggested by Michal I've added the missing declaration of the full specialised getElementSummary() method. This fixes the problem. Where there were two "defined" symbols now there is only one: [itctabuild02] CTA (master) > nm /lib64/libctaobjectstoreunittests.so.0 | grep _ZN3cta11objectstore15ContainerTraitsINS0_13RetrieveQueueENS0_23RetrieveQueueToTransferEE17getElementSummaryERKNS4_13PoppedElementE U _ZN3cta11objectstore15ContainerTraitsINS0_13RetrieveQueueENS0_23RetrieveQueueToTransferEE17getElementSummaryERKNS4_13PoppedElementE [itctabuild02] CTA (master) > nm /lib64/libctaobjectstore.so.0 | grep _ZN3cta11objectstore15ContainerTraitsINS0_13RetrieveQueueENS0_23RetrieveQueueToTransferEE17getElementSummaryERKNS4_13PoppedElementE 000000000047afa8 T _ZN3cta11objectstore15ContainerTraitsINS0_13RetrieveQueueENS0_23RetrieveQueueToTransferEE17getElementSummaryERKNS4_13PoppedElementE [itctabuild02] CTA (master) > --- objectstore/RetrieveQueueAlgorithms.hpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/objectstore/RetrieveQueueAlgorithms.hpp b/objectstore/RetrieveQueueAlgorithms.hpp index 828e0dba4c..18e7f27cfb 100644 --- a/objectstore/RetrieveQueueAlgorithms.hpp +++ b/objectstore/RetrieveQueueAlgorithms.hpp @@ -573,4 +573,8 @@ auto ContainerTraits<RetrieveQueue,RetrieveQueueToTransfer>:: getPoppingElementsCandidates(Container &cont, PopCriteria &unfulfilledCriteria, ElementsToSkipSet &elementsToSkip, log::LogContext &lc) -> PoppedElementsBatch; +template<> +auto ContainerTraits<RetrieveQueue,RetrieveQueueToTransfer>:: +getElementSummary(const PoppedElement &poppedElement) -> PoppedElementsSummary; + }} // namespace cta::objectstore -- GitLab