Skip to content

Commit bd2f8c8

Browse files
authored
Merge pull request #47462 from makortel/xrdAdaptorException
XrdAdaptor: improve exception messages
2 parents d4f712a + 9ea9ade commit bd2f8c8

File tree

2 files changed

+21
-2
lines changed

2 files changed

+21
-2
lines changed

Utilities/XrdAdaptor/src/XrdRequestManager.cc

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,7 @@ void RequestManager::initialize(std::weak_ptr<RequestManager> self) {
213213
ex.clearMessage();
214214
ex.clearContext();
215215
ex.clearAdditionalInfo();
216-
ex << "XrdCl::File::Open(name='" << m_name << "', flags=0x" << std::hex << m_flags << ", permissions=0"
216+
ex << "XrdCl::File::Open(name='" << new_filename << "', flags=0x" << std::hex << m_flags << ", permissions=0"
217217
<< std::oct << m_perms << std::dec << ") => error '" << openStatus.ToStr() << "' (errno=" << openStatus.errNo
218218
<< ", code=" << openStatus.code << ")";
219219
ex.addContext("Calling XrdFile::open()");
@@ -233,7 +233,7 @@ void RequestManager::initialize(std::weak_ptr<RequestManager> self) {
233233
ex.clearMessage();
234234
ex.clearContext();
235235
ex.clearAdditionalInfo();
236-
ex << "XrdCl::File::Open(name='" << m_name << "', flags=0x" << std::hex << m_flags << ", permissions=0"
236+
ex << "XrdCl::File::Open(name='" << new_filename << "', flags=0x" << std::hex << m_flags << ", permissions=0"
237237
<< std::oct << m_perms << std::dec << ") => error '" << status->ToStr() << "' (errno=" << status->errNo
238238
<< ", code=" << status->code << ")";
239239
ex.addContext("Calling XrdFile::open()");
@@ -565,6 +565,14 @@ void RequestManager::getPrettyActiveSourceNames(std::vector<std::string> &source
565565
}
566566
}
567567

568+
void RequestManager::getPrettyInactiveSourceNames(std::vector<std::string> &sources) const {
569+
std::lock_guard<std::recursive_mutex> sentry(m_source_mutex);
570+
sources.reserve(m_inactiveSources.size());
571+
for (auto const &source : m_inactiveSources) {
572+
sources.push_back(source->PrettyID());
573+
}
574+
}
575+
568576
void RequestManager::getDisabledSourceNames(std::vector<std::string> &sources) const {
569577
sources.reserve(m_disabledSourceStrings.size());
570578
for (auto const &source : m_disabledSourceStrings) {
@@ -579,6 +587,11 @@ void RequestManager::addConnections(cms::Exception &ex) const {
579587
ex.addAdditionalInfo("Active source: " + source);
580588
}
581589
sources.clear();
590+
getPrettyInactiveSourceNames(sources);
591+
for (auto const &source : sources) {
592+
ex.addAdditionalInfo("Inactive source: " + source);
593+
}
594+
sources.clear();
582595
getDisabledSourceNames(sources);
583596
for (auto const &source : sources) {
584597
ex.addAdditionalInfo("Disabled source: " + source);

Utilities/XrdAdaptor/src/XrdRequestManager.h

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,12 @@ namespace XrdAdaptor {
8484
void getActiveSourceNames(std::vector<std::string> &sources) const;
8585
void getPrettyActiveSourceNames(std::vector<std::string> &sources) const;
8686

87+
/**
88+
* Retrieve the names of the inactive sources
89+
* (primarily meant to enable meaningful log messages).
90+
*/
91+
void getPrettyInactiveSourceNames(std::vector<std::string> &sources) const;
92+
8793
/**
8894
* Retrieve the names of the disabled sources
8995
* (primarily meant to enable meaningful log messages).

0 commit comments

Comments
 (0)