-
Notifications
You must be signed in to change notification settings - Fork 4.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add CoralServiceWrapper to allow edm::PluginFactory to return std::unique_ptr #25662
Conversation
The code-checks are being triggered in jenkins. |
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-25662/7998
|
A new Pull Request was created by @makortel (Matti Kortelainen) for master. It involves the following packages: CondCore/CondDB @ggovi, @cmsbuild can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
af2404a
to
f7b4ad7
Compare
The code-checks are being triggered in jenkins. |
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-25662/7999
|
@ggovi @Dr15Jones This is the result of our email exchange. |
@cmsbuild, please test |
The tests are being triggered in jenkins. |
DEFINE_EDM_PLUGIN (cond::CoralServicePluginFactory,type,name) | ||
|
||
#define DEFINE_CORALSERVICE(type,name) \ | ||
DEFINE_EDM_PLUGIN (cond::CoralServicePluginFactory,type,name) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I removed one of the two (identical) definitions.
<< "Cannot find coral service: " | ||
<< componentname << "\n" | ||
<< "Perhaps the name is misspelled or is not a Plugin?\n" | ||
<< "Try running EdmPluginDump to obtain a list of available Plugins."; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This exception was never thrown (since PluginFactory::create()
throws for non-existing plugin), so I removed it.
Comparison job queued. |
Comparison is ready Comparison Summary:
|
+1 |
This pull request is fully signed and it will be integrated in one of the next master IBs (tests are also fine). This pull request will now be reviewed by the release team before it's merged. @davidlange6, @slava77, @smuzaffar, @fabiocos (and backports should be raised in the release meeting by the corresponding L2) |
@makortel |
+1 |
coral::Service
has its destructor declared as protected (ownership is managed by intrusive reference counts) which makes it impossible to manage it withstd::unique_ptr
(without a custom deleter). This PR allowsedm::PluginFactory
return type to be changed later tostd::unique_ptr
by adding a wrapper layer for thecoral::Service
plugin creation.Tested in CMSSW_10_5_X_2019-01-14-1100, no changes expected.