#include <EndPathExecutor.h>
Definition at line 42 of file EndPathExecutor.h.
Definition at line 37 of file EndPathExecutor.cc.
50 auto w =
val.second.get();
51 assert(sid ==
w->scheduleID());
52 auto owp =
dynamic_cast<OutputWorker*
>(
w);
58 outputCallbacks.registerCallback(
std::map< std::string, std::shared_ptr< Worker > > & workers()
void selectProducts(ProductTables const &)
ScheduleContext const sc_
std::set< OutputWorker * > outputWorkersToOpen_
ActionTable const & actionTable_
GlobalTaskGroup & taskGroup_
ActivityRegistry const & actReg_
std::vector< OutputWorker * > outputWorkers_
bool art::EndPathExecutor::allAtLimit |
( |
| ) |
const |
Definition at line 455 of file EndPathExecutor.cc.
460 bool all_at_limit =
true;
462 if (!
w->limitReached()) {
463 all_at_limit =
false;
469 <<
"The job is terminating successfully because each output module\n" 470 <<
"has reached its configured limit.\n";
MaybeLogger_< ELseverityLevel::ELsev_info, false > LogInfo
std::vector< OutputWorker * > outputWorkers_
Definition at line 63 of file EndPathExecutor.cc.
66 auto&
w = *label_and_worker.second;
70 w.beginJob(resources);
bool skip_non_replicated(Worker const &)
std::map< std::string, std::shared_ptr< Worker > > & workers()
void art::EndPathExecutor::closeAllOutputFiles |
( |
| ) |
|
Definition at line 170 of file EndPathExecutor.cc.
176 OutputFileInfo(ow->label(), ow->lastClosedFileName()));
GlobalSignal< detail::SignalResponseType::FIFO, void(std::string const &)> sPreCloseOutputFile
GlobalSignal< detail::SignalResponseType::LIFO, void(OutputFileInfo const &)> sPostCloseOutputFile
ActivityRegistry const & actReg_
std::vector< OutputWorker * > outputWorkers_
void art::EndPathExecutor::closeSomeOutputFiles |
( |
| ) |
|
Definition at line 375 of file EndPathExecutor.cc.
381 if (!ow->fileIsOpen()) {
387 OutputFileInfo{ow->label(), ow->lastClosedFileName()});
void setOutputFileStatus(OutputFileStatus)
std::set< OutputWorker * > outputWorkersToClose_
std::set< OutputWorker * > outputWorkersToOpen_
GlobalSignal< detail::SignalResponseType::FIFO, void(std::string const &)> sPreCloseOutputFile
GlobalSignal< detail::SignalResponseType::LIFO, void(OutputFileInfo const &)> sPostCloseOutputFile
ActivityRegistry const & actReg_
void art::EndPathExecutor::endJob |
( |
| ) |
|
Definition at line 75 of file EndPathExecutor.cc.
81 auto&
w = *label_and_worker.second;
89 error <<
"cet::exception caught in Schedule::endJob\n" 94 error <<
"Standard library exception caught in Schedule::endJob\n" 99 error <<
"Unknown exception caught in Schedule::endJob\n";
bool skip_non_replicated(Worker const &)
std::map< std::string, std::shared_ptr< Worker > > & workers()
cet::coded_exception< errors::ErrorCodes, ExceptionDetail::translate > Exception
cet::coded_exception< error, detail::translate > exception
void art::EndPathExecutor::incrementInputFileNumber |
( |
| ) |
|
Definition at line 447 of file EndPathExecutor.cc.
450 ow->incrementInputFileNumber();
std::vector< OutputWorker * > outputWorkers_
void art::EndPathExecutor::openSomeOutputFiles |
( |
FileBlock const & |
fb | ) |
|
Definition at line 399 of file EndPathExecutor.cc.
402 if (!ow->openFile(fb)) {
408 outputWorkersToOpen_.clear();
GlobalSignal< detail::SignalResponseType::LIFO, void(std::string const &)> sPostOpenOutputFile
void setOutputFileStatus(OutputFileStatus)
std::set< OutputWorker * > outputWorkersToOpen_
ActivityRegistry const & actReg_
bool art::EndPathExecutor::outputsToClose |
( |
| ) |
const |
bool art::EndPathExecutor::outputsToOpen |
( |
| ) |
const |
Definition at line 237 of file EndPathExecutor.cc.
240 auto&
w = *label_and_worker.second;
253 <<
"an exception occurred during current event processing\n" 258 <<
"an exception occurred during current event processing\n";
std::vector< Path > & paths()
bool skip_non_replicated(Worker const &)
MaybeLogger_< ELseverityLevel::ELsev_error, false > LogError
std::map< std::string, std::shared_ptr< Worker > > & workers()
cet::coded_exception< errors::ErrorCodes, ExceptionDetail::translate > Exception
void incrementPassedEventCount()
cet::coded_exception< error, detail::translate > exception
void art::EndPathExecutor::process_event |
( |
hep::concurrency::WaitingTaskPtr |
finalizeEventTask, |
|
|
EventPrincipal & |
|
|
) |
| |
Definition at line 317 of file EndPathExecutor.cc.
320 auto const sid =
sc_.
id();
326 make_waiting_task<PathsDoneTask>(
this, finalizeEventTask,
taskGroup_);
std::vector< Path > & paths()
ScheduleContext const sc_
#define TDEBUG_END_FUNC_SI(LEVEL, SI)
void may_run(hep::concurrency::WaitingTaskPtr task, std::exception_ptr ex_ptr={})
#define TDEBUG_BEGIN_FUNC_SI(LEVEL, SI)
GlobalTaskGroup & taskGroup_
void incrementTotalEventCount()
void art::EndPathExecutor::recordOutputClosureRequests |
( |
Granularity |
atBoundary | ) |
|
Definition at line 431 of file EndPathExecutor.cc.
434 if (atBoundary < ow->fileGranularity()) {
439 auto wants_to_close = ow->requestsToCloseFile();
440 if (wants_to_close) {
std::set< OutputWorker * > outputWorkersToClose_
std::vector< OutputWorker * > outputWorkers_
void art::EndPathExecutor::respondToCloseInputFile |
( |
FileBlock const & |
fb | ) |
|
Definition at line 126 of file EndPathExecutor.cc.
129 auto&
w = *label_and_worker.second;
133 w.respondToCloseInputFile(fb);
bool skip_non_replicated(Worker const &)
std::map< std::string, std::shared_ptr< Worker > > & workers()
void art::EndPathExecutor::respondToCloseOutputFiles |
( |
FileBlock const & |
fb | ) |
|
Definition at line 150 of file EndPathExecutor.cc.
153 auto&
w = *label_and_worker.second;
157 w.respondToCloseOutputFiles(fb);
bool skip_non_replicated(Worker const &)
std::map< std::string, std::shared_ptr< Worker > > & workers()
void art::EndPathExecutor::respondToOpenInputFile |
( |
FileBlock const & |
fb | ) |
|
Definition at line 114 of file EndPathExecutor.cc.
117 auto&
w = *label_and_worker.second;
121 w.respondToOpenInputFile(fb);
bool skip_non_replicated(Worker const &)
std::map< std::string, std::shared_ptr< Worker > > & workers()
void art::EndPathExecutor::respondToOpenOutputFiles |
( |
FileBlock const & |
fb | ) |
|
Definition at line 138 of file EndPathExecutor.cc.
141 auto&
w = *label_and_worker.second;
145 w.respondToOpenOutputFiles(fb);
bool skip_non_replicated(Worker const &)
std::map< std::string, std::shared_ptr< Worker > > & workers()
Definition at line 181 of file EndPathExecutor.cc.
std::unique_ptr< RangeSetHandler > runRangeSetHandler_
void art::EndPathExecutor::seedSubRunRangeSet |
( |
RangeSetHandler const & |
rsh | ) |
|
Definition at line 206 of file EndPathExecutor.cc.
std::unique_ptr< RangeSetHandler > subRunRangeSetHandler_
void art::EndPathExecutor::selectProducts |
( |
ProductTables const & |
tables | ) |
|
Definition at line 106 of file EndPathExecutor.cc.
109 ow->selectProducts(tables);
std::vector< OutputWorker * > outputWorkers_
Definition at line 422 of file EndPathExecutor.cc.
425 ow->setFileStatus(ofs);
std::atomic< OutputFileStatus > fileStatus_
std::vector< OutputWorker * > outputWorkers_
void art::EndPathExecutor::setRunAuxiliaryRangeSetID |
( |
RangeSet const & |
rs | ) |
|
Definition at line 187 of file EndPathExecutor.cc.
190 ow->setRunAuxiliaryRangeSetID(rangeSet);
std::vector< OutputWorker * > outputWorkers_
void art::EndPathExecutor::setSubRunAuxiliaryRangeSetID |
( |
RangeSet const & |
rs | ) |
|
Definition at line 212 of file EndPathExecutor.cc.
217 ow->setSubRunAuxiliaryRangeSetID(
rs);
std::vector< OutputWorker * > outputWorkers_
bool art::EndPathExecutor::someOutputsOpen |
( |
| ) |
const |
Definition at line 162 of file EndPathExecutor.cc.
165 return ow->fileIsOpen();
std::vector< OutputWorker * > outputWorkers_
Definition at line 340 of file EndPathExecutor.cc.
349 ow->writeEvent(ep, mc);
352 auto const& eid = ep.eventID();
353 bool const lastInSubRun{ep.isLastInSubRun()};
355 <<
"eid: " << eid.run() <<
", " << eid.subRun() <<
", " << eid.event();
GlobalSignal< detail::SignalResponseType::FIFO, void(ModuleContext const &)> sPreWriteEvent
ScheduleContext const sc_
#define TDEBUG_FUNC_SI(LEVEL, SI)
std::unique_ptr< RangeSetHandler > subRunRangeSetHandler_
static auto end_path_spec()
ActivityRegistry const & actReg_
std::vector< OutputWorker * > outputWorkers_
std::unique_ptr< RangeSetHandler > runRangeSetHandler_
GlobalSignal< detail::SignalResponseType::LIFO, void(ModuleContext const &)> sPostWriteEvent
Definition at line 195 of file EndPathExecutor.cc.
std::atomic< OutputFileStatus > fileStatus_
std::vector< OutputWorker * > outputWorkers_
std::unique_ptr< RangeSetHandler > runRangeSetHandler_
Definition at line 222 of file EndPathExecutor.cc.
225 ow->writeSubRun(srp);
std::atomic< OutputFileStatus > fileStatus_
std::unique_ptr< RangeSetHandler > subRunRangeSetHandler_
std::vector< OutputWorker * > outputWorkers_
PathsInfo& art::EndPathExecutor::endPathInfo_ |
|
private |
std::set<OutputWorker*> art::EndPathExecutor::outputWorkersToClose_ {} |
|
private |
std::set<OutputWorker*> art::EndPathExecutor::outputWorkersToOpen_ {} |
|
private |
std::unique_ptr<RangeSetHandler> art::EndPathExecutor::runRangeSetHandler_ {nullptr} |
|
private |
std::unique_ptr<RangeSetHandler> art::EndPathExecutor::subRunRangeSetHandler_ {nullptr} |
|
private |
The documentation for this class was generated from the following files: