Add compatibility with new GRP scheme#976
Conversation
|
Error while checking build/O2Physics/o2 for cb8739e at 2022-07-12 12:56: Full log here. |
- This is nasty because it was hiding in the LOGF(info, ..) function
|
Hi @ddobrigk could you have a look please? I think that the approvers might be on leave, how should we merge this? |
| if (!grpmag) { | ||
| LOG(fatal) << "Got nullptr from CCDB for path " << grpmagPath << " of object GRPMagField and " << grpPath << " of object GRPObject for timestamp " << bc.timestamp(); | ||
| } | ||
| LOGF(info, "Setting magnetic field to current %d A for run %d from its GRPMagField CCDB object", grpmag->getL3Current(), bc.runNumber()); |
There was a problem hiding this comment.
I would use the "detail" level for log by default, unless you really care about having the message during real production.
There was a problem hiding this comment.
I agree, however this is the same level of info that was present before, this is also important information that should be printed once per run i.e. once per job ideally
|
This looks good on my side. |
| Configurable<std::string> grpPath{"grpPath", "GLO/GRP/GRP", "Path of the grp file"}; | ||
| Configurable<std::string> grpmagPath{"grpmagPath", "GLO/Config/GRPMagField", "CCDB path of the GRPMagField object"}; | ||
| Configurable<std::string> mVtxPath{"mVtxPath", "GLO/Calib/MeanVertex", "Path of the mean vertex file"}; | ||
| Configurable<bool> checkGRPObject{"checkGRPObject", false, "Flag to check the CCDB for GRPObject before asking for the GRPMagField"}; |
There was a problem hiding this comment.
actually, why not simply making it empty by default and use it if not?
There was a problem hiding this comment.
Because I want to have the feature that the CCDB will not be checked and will get directly the new structure.
This is because the old GRP structure will be translated to the new one
| Configurable<std::string> grpPath{"grpPath", "GLO/GRP/GRP", "Path of the grp file"}; | ||
| Configurable<std::string> grpmagPath{"grpmagPath", "GLO/Config/GRPMagField", "CCDB path of the GRPMagField object"}; | ||
| Configurable<std::string> mVtxPath{"mVtxPath", "GLO/Calib/MeanVertex", "Path of the mean vertex file"}; | ||
| Configurable<bool> checkGRPObject{"checkGRPObject", false, "Flag to check the CCDB for GRPObject before asking for the GRPMagField"}; |
There was a problem hiding this comment.
Because I want to have the feature that the CCDB will not be checked and will get directly the new structure.
This is because the old GRP structure will be translated to the new one
| if (!grpmag) { | ||
| LOG(fatal) << "Got nullptr from CCDB for path " << grpmagPath << " of object GRPMagField and " << grpPath << " of object GRPObject for timestamp " << bc.timestamp(); | ||
| } | ||
| LOGF(info, "Setting magnetic field to current %d A for run %d from its GRPMagField CCDB object", grpmag->getL3Current(), bc.runNumber()); |
There was a problem hiding this comment.
I agree, however this is the same level of info that was present before, this is also important information that should be printed once per run i.e. once per job ideally
|
When will the old scheme be deprecated? |
|
I think it might be already, I have to check with Victor |
@victor-gonzalez can confirm, but if I am not wrong this is already deprecated, apart for Run 2 converted data |
|
For Run 2 converted datasets the old scheme will stay |
|
Then I think the config parameter should be renamed to choose run 2 or 3... |
|
agreed |
@victor-gonzalez