Commit e3d1e99b authored by Remi Mommsen's avatar Remi Mommsen
Browse files

references #3779: update EvB to version 3.8.0


git-svn-id: file:///tmp/cmsos_migration/cmsos.svndb/releases/baseline12/trunk@27740 c528359e-2999-456a-ae53-7ba8edf254b3
parent 37c693b8
......@@ -75,7 +75,7 @@ namespace evb {
toolbox::net::URN getURN() const { return urn_; }
std::string getIdentifier(const std::string& suffix = "") const;
std::string getSubSystem() const { return subSystem_; }
const std::string& getSubSystem() const { return subSystem_; }
boost::shared_ptr<Configuration> getConfiguration() const { return configuration_; }
boost::shared_ptr<StateMachine> getStateMachine() const { return stateMachine_; }
......
......@@ -36,7 +36,7 @@ namespace evb {
(
const uint16_t fedId,
const bool isMasterFed,
const std::string subSystem,
const std::string& subSystem,
const EvBidFactoryPtr&,
const uint32_t checkCRC,
uint32_t& fedErrorCount,
......@@ -87,7 +87,7 @@ namespace evb {
uint32_t& crcErrors_;
const uint16_t fedId_;
const bool isMasterFed_;
const std::string subSystem_;
const std::string& subSystem_;
uint16_t bxId_;
uint32_t eventNumber_;
EvBid evbId_;
......
......@@ -292,7 +292,7 @@ bool evb::readoutunit::Input<ReadoutUnit,Configuration>::getNextAvailableSuperFr
if ( masterStream_ == ferolStreams_.end() || !masterStream_->second->getNextFedFragment(fedFragment) ) return false;
superFragment.reset( new SuperFragment(fedFragment->getEvBid()) );
superFragment.reset( new SuperFragment(fedFragment->getEvBid(),readoutUnit_->getSubSystem()) );
superFragment->append(fedFragment);
for (typename FerolStreams::iterator it = ferolStreams_.begin(), itEnd = ferolStreams_.end();
......@@ -314,7 +314,7 @@ bool evb::readoutunit::Input<ReadoutUnit,Configuration>::getNextAvailableSuperFr
template<class ReadoutUnit,class Configuration>
void evb::readoutunit::Input<ReadoutUnit,Configuration>::getSuperFragmentWithEvBid(const EvBid& evbId, SuperFragmentPtr& superFragment)
{
superFragment.reset( new SuperFragment(evbId) );
superFragment.reset( new SuperFragment(evbId,readoutUnit_->getSubSystem()) );
{
boost::shared_lock<boost::shared_mutex> sl(ferolStreamsMutex_);
......
......@@ -22,7 +22,7 @@ namespace evb {
{
public:
SuperFragment(const EvBid&);
SuperFragment(const EvBid&, const std::string& subSystem);
void discardFedId(const uint16_t fedId);
......@@ -45,6 +45,7 @@ namespace evb {
private:
const EvBid evbId_;
const std::string& subSystem_;
uint32_t size_;
MissingFedIds missingFedIds_;
......
......@@ -4,8 +4,8 @@
#include "config/PackageInfo.h"
#define EVB_VERSION_MAJOR 3
#define EVB_VERSION_MINOR 7
#define EVB_VERSION_PATCH 4
#define EVB_VERSION_MINOR 8
#define EVB_VERSION_PATCH 0
#undef EVB_PREVIOUS_VERSIONS
......
......@@ -389,8 +389,7 @@ void evb::bu::DiskWriter::handleRawDataFile(const FileStatisticsPtr& fileStatist
++diskWriterMonitoring_.nbFiles;
diskWriterMonitoring_.nbEventsWritten += fileStatistics->nbEventsWritten;
if ( diskWriterMonitoring_.lastEventNumberWritten < fileStatistics->lastEventNumberWritten )
diskWriterMonitoring_.lastEventNumberWritten = fileStatistics->lastEventNumberWritten;
diskWriterMonitoring_.lastEventNumberWritten = fileStatistics->lastEventNumberWritten;
if ( diskWriterMonitoring_.currentLumiSection < fileStatistics->lumiSection )
diskWriterMonitoring_.currentLumiSection = fileStatistics->lumiSection;
if ( diskWriterMonitoring_.lastLumiSection < fileStatistics->lumiSection )
......
......@@ -100,13 +100,11 @@ void evb::bu::RUproxy::superFragmentCallback(toolbox::mem::Reference* bufRef)
if ( index.ruTid == evm_.tid )
{
if ( lastEventNumber > fragmentMonitoring_.lastEventNumberFromEVM )
fragmentMonitoring_.lastEventNumberFromEVM = lastEventNumber;
fragmentMonitoring_.lastEventNumberFromEVM = lastEventNumber;
}
else
{
if ( lastEventNumber > fragmentMonitoring_.lastEventNumberFromRUs )
fragmentMonitoring_.lastEventNumberFromRUs = lastEventNumber;
fragmentMonitoring_.lastEventNumberFromRUs = lastEventNumber;
}
fragmentMonitoring_.perf.logicalCount += nbSuperFragments;
......
......@@ -11,7 +11,7 @@ evb::readoutunit::FedFragment::FedFragment
(
const uint16_t fedId,
const bool isMasterFed,
const std::string subSystem,
const std::string& subSystem,
const EvBidFactoryPtr& evbIdFactory,
const uint32_t checkCRC,
uint32_t& fedErrorCount,
......
......@@ -4,8 +4,8 @@
#include "evb/readoutunit/SuperFragment.h"
evb::readoutunit::SuperFragment::SuperFragment(const EvBid& evbId)
: evbId_(evbId),size_(0)
evb::readoutunit::SuperFragment::SuperFragment(const EvBid& evbId, const std::string& subSystem)
: evbId_(evbId),subSystem_(subSystem),size_(0)
{}
......@@ -27,7 +27,8 @@ bool evb::readoutunit::SuperFragment::append(const FedFragmentPtr& fedFragment)
msg << "Mismatch detected: expected evb id "
<< evbId_ << ", but found evb id "
<< incomingEvBid << " in data block from FED "
<< fedFragment->getFedId();
<< fedFragment->getFedId()
<< " (" << subSystem_ << ")";
XCEPT_RAISE(exception::MismatchDetected, msg.str());
}
......
from TestCase import TestCase
from Configuration import RU,BU
from Context import RU,BU
class case_1x1(TestCase):
......
from TestCase import TestCase
from Configuration import FEROL,RU,BU
from Context import FEROL,RU,BU
class case_1x1_ferol(TestCase):
......
import time
from TestCase import TestCase
from Configuration import FEROL,RU,BU
from Context import FEROL,RU,BU
class case_1x1_ferol_1xdaq(TestCase):
......@@ -27,6 +27,7 @@ class case_1x1_ferol_1xdaq(TestCase):
])
evm = RU(symbolMap,[
('inputSource','string','Socket')
],(bu,))
])
evm.applications.append( bu.applications[-1] )
self._config.add( FEROL(symbolMap,evm,512) )
self._config.add( evm )
import time
from TestCase import TestCase
from Configuration import FEROL,RU,BU
class case_1x1_ferol_1xdaq_ptfrl(TestCase):
def runTest(self):
self.configureEvB()
self.enableEvB()
self.checkEVM(2048)
self.checkBU(2048)
self.setAppParam('writeNextFragmentsToFile','unsignedInt','4','EVM')
time.sleep(1)
dumps = self.getFiles("dump_run000001_event[0-9]+_fed0512.txt$")
if len(dumps) != 4:
raise ValueException("Expected 4 dump file from FED 512, but found: "+str(dumps))
self.stopEvB()
self.haltEvB()
def fillConfiguration(self,symbolMap):
bu = BU(symbolMap,[
('dropEventData','boolean','true'),
('lumiSectionTimeout','unsignedInt','0')
])
evm = RU(symbolMap,[
('inputSource','string','FEROL')
],(bu,))
self._config.add( FEROL(symbolMap,evm,512) )
self._config.add( evm )
from TestCase import TestCase
from Configuration import FEROL,RU,BU
class case_1x1_ferol_ptfrl(TestCase):
def runTest(self):
self.configureEvB()
self.enableEvB()
self.checkEVM(2048)
self.checkBU(2048)
self.stopEvB()
self.haltEvB()
def fillConfiguration(self,symbolMap):
evm = RU(symbolMap,[
('inputSource','string','FEROL')
])
self._config.add( FEROL(symbolMap,evm,512) )
self._config.add( evm )
self._config.add( BU(symbolMap,[
('dropEventData','boolean','true'),
('lumiSectionTimeout','unsignedInt','0')
]) )
from time import sleep
from TestCase import TestCase
from Configuration import FEROL,RU,BU
from Context import FEROL,RU,BU
class case_1x1_largeFragment(TestCase):
......@@ -10,7 +10,6 @@ class case_1x1_largeFragment(TestCase):
self.enableEvB()
self.checkEVM(22944)
self.checkBU(22944)
self.stopEvB()
self.haltEvB()
......
from TestCase import TestCase
from Configuration import RU,BU
from Context import RU,BU
class case_1x2(TestCase):
......
from TestCase import TestCase
from Configuration import FEROL,RU,BU
from Context import FEROL,RU,BU
class case_1x2_ferol(TestCase):
......
from TestCase import TestCase
from Configuration import FEROL,RU,BU
class case_1x2_ferol_ptfrl(TestCase):
def runTest(self):
self.configureEvB()
self.enableEvB()
self.checkEVM(16384)
self.checkBU(16384)
self.haltEvB()
def fillConfiguration(self,symbolMap):
evm = RU(symbolMap,[
('inputSource','string','FEROL')
])
for id in range(1,9):
self._config.add( FEROL(symbolMap,evm,id) )
self._config.add( evm )
self._config.add( BU(symbolMap,[
('dropEventData','boolean','true'),
('lumiSectionTimeout','unsignedInt','0')
]) )
self._config.add( BU(symbolMap,[
('dropEventData','boolean','true'),
('lumiSectionTimeout','unsignedInt','0')
]) )
from TestCase import TestCase
from Configuration import RU,BU
from Context import RU,BU
class case_2x1(TestCase):
......
......@@ -2,7 +2,7 @@ import operator
import time
from TestCase import *
from Configuration import FEROL,RU,BU
from Context import FEROL,RU,BU
class case_2x1_bxErrors(TestCase):
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment