Skip to content

[Common] Add zdc-extra-table-reader task#16028

Open
udmitrie wants to merge 14 commits into
AliceO2Group:masterfrom
udmitrie:zdcextrareader
Open

[Common] Add zdc-extra-table-reader task#16028
udmitrie wants to merge 14 commits into
AliceO2Group:masterfrom
udmitrie:zdcextrareader

Conversation

@udmitrie

Copy link
Copy Markdown
Contributor

zdc-extra-table-reader is needed to read AOD/ZDCEXTRA derived data and proceed with multi-step calibration (Q-vectors recentering) of ZDC data

zdc-extra-table-reader is needed to read AOD/ZDCEXTRA derived data and proceed with multistep calibration (Q-vectors recentering) of ZDC data
@github-actions

github-actions Bot commented Apr 29, 2026

Copy link
Copy Markdown

O2 linter results: ❌ 1 errors, ⚠️ 0 warnings, 🔕 0 disabled

Refactor logging and constants in zdcExtraTableReader.
Replaced std::cerr logging with LOGF for error handling and updated constant names for consistency.
@udmitrie udmitrie marked this pull request as ready for review April 29, 2026 17:05
@udmitrie udmitrie marked this pull request as draft April 29, 2026 18:21
Add check number of fired towers with isZN*SpDeterminable (to reconstruct Q-vector at least 2 fired towers needed);
Replace FindBin with FindFixBin; 
update variables.
@udmitrie udmitrie marked this pull request as ready for review April 29, 2026 19:49
@udmitrie

Copy link
Copy Markdown
Contributor Author

Dear code owners,
Please take a look at this pull request.

There are no O2 linter errors connected to my changes.
The job is failing due to workflow naming convention violations in old tasks in Common/Tasks/CMakeLists.txt.

Comment thread Common/Tasks/zdcExtraTableReader.cxx Outdated
Comment thread Common/Tasks/zdcExtraTableReader.cxx Outdated
Comment thread Common/Tasks/zdcExtraTableReader.cxx Outdated
Comment thread Common/Tasks/zdcExtraTableReader.cxx Outdated
Comment thread Common/Tasks/zdcExtraTableReader.cxx Outdated
Comment thread Common/Tasks/zdcExtraTableReader.cxx Outdated
Comment thread Common/Tasks/zdcExtraTableReader.cxx Outdated
Comment thread Common/Tasks/zdcExtraTableReader.cxx
Comment thread Common/Tasks/zdcExtraTableReader.cxx Outdated
@alibuild

alibuild commented May 6, 2026

Copy link
Copy Markdown
Collaborator

Error while checking build/O2Physics/staging for 5397abb at 2026-05-07 21:51:

## sw/BUILD/O2Physics-latest/log
CMake Error at /sw/slc9_x86-64/CMake/v4.1.4-2/share/cmake-4.1/Modules/CMakeTestCCompiler.cmake:67 (message):
    2026-05-07T21:51:31.735+0200 [70:140192746028672] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "ActionCache.GetActionResult()", last gRPC error was [14: failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:8085: Failed to connect to remote host: Connection refused]
    2026-05-07T21:51:31.735+0200 [70:140192746028672] [executioncontext.cpp:544] [ERROR] Error while querying action cache at "http://localhost:8085": 14: failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:8085: Failed to connect to remote host: Connection refused
    2026-05-07T21:51:31.736+0200 [70:140192746028672] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "FindMissingBlobs()", last gRPC error was [14: failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:8085: Failed to connect to remote host: Connection refused]
    2026-05-07T21:51:31.736+0200 [70:140192746028672] [executioncontext.cpp:908] [ERROR] Error while uploading resources to CAS at "http://localhost:8085": 14: failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:8085: Failed to connect to remote host: Connection refused
    ninja: build stopped: subcommand failed.

Full log here.

@alibuild

alibuild commented May 8, 2026

Copy link
Copy Markdown
Collaborator

Error while checking build/O2Physics/o2 for 5397abb at 2026-06-01 11:58:

## sw/BUILD/O2Physics-latest/log
c++: fatal error: Killed signal terminated program cc1plus
ninja: build stopped: subcommand failed.

Full log here.

@vkucera

vkucera commented Jun 1, 2026

Copy link
Copy Markdown
Collaborator

@udmitrie @dsekihat Based on the commit history this PR would have been already labelled as stale. What is the status?

@udmitrie

udmitrie commented Jun 1, 2026

Copy link
Copy Markdown
Contributor Author

Dear @vkucera, I am planning to update this PR this week, addressing your comments.
Sorry for the delay!

udmitrie and others added 2 commits June 3, 2026 15:10
Updated event selection configuration and histogram handling in zdcExtraTableReader.cxx. Refactored selection bits and improved memory management in the clearCache method.

@vkucera vkucera left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since you are adding a new task, please make sure it passes all checks without warnings.

Comment thread Common/Tasks/zdcExtraTableReader.cxx Outdated
Comment thread Common/Tasks/zdcExtraTableReader.cxx Outdated
Comment thread Common/Tasks/zdcExtraTableReader.cxx Outdated
Comment thread Common/Tasks/zdcExtraTableReader.cxx Outdated
Comment thread Common/Tasks/zdcExtraTableReader.cxx Outdated
Comment thread Common/Tasks/zdcExtraTableReader.cxx Outdated
Comment thread Common/Tasks/zdcExtraTableReader.cxx Outdated
Comment thread Common/Tasks/zdcExtraTableReader.cxx Outdated
Comment thread Common/Tasks/zdcExtraTableReader.cxx Outdated
- Replace 0.0 returns with fatal logs for missing CCDB objects 
- Rename Configurable flags
- Rename 'nShift' to 'nHarmonics' to clarify its physical meaning
- Remove 'm' prefixes from variable names
- Reduce nesting in `loadCalibrations`
Fix code formatting
@udmitrie

udmitrie commented Jun 5, 2026

Copy link
Copy Markdown
Contributor Author

Dear code owners,

Please note that the failed CI checks are not related to my zdc-extra-table-reader task:

  • o2linter is failing due to naming errors in CMakeLists.txt for unrelated tasks (e.g., propagatorQa, cpvQa);
  • MegaLinter is failing due to the osv-scanner error (according to the recent announcement in the O2 Analysis Announcements channel, this is a known side effect of the linter upgrade)

@vkucera

vkucera commented Jun 5, 2026

Copy link
Copy Markdown
Collaborator

@udmitrie Since you are adding a new file, please fix the warnings as well.

udmitrie added 2 commits June 5, 2026 18:43
Replaced individual Qx and Qy axis configurables with a shared ConfigurableAxis
@udmitrie

udmitrie commented Jun 9, 2026

Copy link
Copy Markdown
Contributor Author

Dear @vkucera, could you please confirm that you have no further comments? Otherwise, is there anything else I need to fix?

std::unordered_map<int, TProfile3D*> gShiftProfileZNA;
std::unordered_map<int, TProfile3D*> gShiftProfileZNC;

TH1* gCurrentEventCounter;

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pointers should always be initialised at declaration.

calibCache.clear();
}

void initHistos(const int& runNumber)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pass small types by value.

Suggested change
void initHistos(const int& runNumber)
void initHistos(const int runNumber)

}

// Optimized method to load ALL calibrations for the new run at once
void loadCalibrations(int run)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is run different from runNumber?

if (applyShiftCorrection) {
std::string folder = Form("%s/psiHarm", qRecenteringCcdb.value.c_str());

LOGF(info, "ZDC Analysis: Loading Shift Correction from %s for run %d", folder.c_str(), run);

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this get printed for each collision?

@alibuild

alibuild commented Jun 9, 2026

Copy link
Copy Markdown
Collaborator

Error while checking build/O2Physics/o2 for bf83055 at 2026-06-09 18:57:

## sw/BUILD/O2Physics-latest/log
2026-06-09T18:56:53.822+0200 [44629:140216969834112] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "ByteStream.Read()", last gRPC error was [14: recvmsg:Connection reset by peer]
2026-06-09T18:56:53.973+0200 [44629:140216969834112] [executioncontext.cpp:739] [ERROR] Failed to download output blob 55a906f20f68f319e7dc880ee97f0da06e1c2038ece8ccc50b24b8e1adfd9c46: 14: recvmsg:Connection reset by peer
2026-06-09T18:56:53.822+0200 [44565:140632641347200] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "ByteStream.Read()", last gRPC error was [14: Socket closed]
2026-06-09T18:56:53.974+0200 [44565:140632641347200] [executioncontext.cpp:739] [ERROR] Failed to download output blob 08dddf2e2dd1bc79c97c3156973aa7339d70982edba9ba7106f08bb23a9e7d3d: 14: Socket closed
2026-06-09T18:56:53.821+0200 [44510:140414395039360] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "ByteStream.Read()", last gRPC error was [14: recvmsg:Connection reset by peer]
2026-06-09T18:56:53.974+0200 [44510:140414395039360] [executioncontext.cpp:739] [ERROR] Failed to download output blob 64853b235123bea81002c60fda2568a3d8edcb3343fac9c9a1a3883608662565: 14: recvmsg:Connection reset by peer
2026-06-09T18:56:53.821+0200 [44534:140590570741376] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "ByteStream.Read()", last gRPC error was [14: Socket closed]
2026-06-09T18:56:53.975+0200 [44534:140590570741376] [executioncontext.cpp:739] [ERROR] Failed to download output blob 2842d5923a65199d0be2c1e6e727ba6480abc8c9669d6d7de4cec3cf71ee0a7f: 14: Socket closed
2026-06-09T18:56:53.821+0200 [44670:139814061674112] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "BatchReadBlobs()", last gRPC error was [14: recvmsg:Connection reset by peer]
2026-06-09T18:56:53.985+0200 [44670:139814061674112] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "ByteStream.Read()", last gRPC error was [14: failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:8980: Failed to connect to remote host: Connection refused]
2026-06-09T18:56:53.986+0200 [44670:139814061674112] [executioncontext.cpp:739] [ERROR] Failed to download output blob 7fc38c8b544764e9c56ddefbbec26a7361a58bfd168a1057001d586d2d459fff: 14: failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:8980: Failed to connect to remote host: Connection refused
2026-06-09T18:56:53.821+0200 [44628:140346334895744] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "BatchReadBlobs()", last gRPC error was [14: Socket closed]
2026-06-09T18:56:53.986+0200 [44628:140346334895744] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "ByteStream.Read()", last gRPC error was [14: failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:8980: Failed to connect to remote host: Connection refused]
2026-06-09T18:56:53.986+0200 [44628:140346334895744] [executioncontext.cpp:739] [ERROR] Failed to download output blob 44cafc0aae2cf0e2a94ce9d7c85388f78a8e492aed0983c4f74be933e7bb453b: 14: failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:8980: Failed to connect to remote host: Connection refused
2026-06-09T18:56:59.727+0200 [42069:140328617119360] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "FindMissingBlobs()", last gRPC error was [14: failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:8980: Failed to connect to remote host: Connection refused]
2026-06-09T18:57:01.950+0200 [31736:140125965160064] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "FindMissingBlobs()", last gRPC error was [14: failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:8980: Failed to connect to remote host: Connection refused]
2026-06-09T18:57:10.423+0200 [44038:140639084023424] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "FindMissingBlobs()", last gRPC error was [14: failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:8980: Failed to connect to remote host: Connection refused]
2026-06-09T18:57:14.930+0200 [44260:139757421817472] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "FindMissingBlobs()", last gRPC error was [14: failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:8980: Failed to connect to remote host: Connection refused]
2026-06-09T18:56:53.821+0200 [44585:140065166511744] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "ActionCache.GetActionResult()", last gRPC error was [14: Socket closed]
2026-06-09T18:56:53.968+0200 [44585:140065166511744] [executioncontext.cpp:544] [ERROR] Error while querying action cache at "http://localhost:8980": 14: Socket closed
2026-06-09T18:56:53.822+0200 [44764:140296793714304] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "ActionCache.GetActionResult()", last gRPC error was [14: failed to connect to all addresses; last error: UNAVAILABLE: ipv6:%5B::1%5D:8980: recvmsg:Connection reset by peer]
2026-06-09T18:56:53.968+0200 [44764:140296793714304] [executioncontext.cpp:544] [ERROR] Error while querying action cache at "http://localhost:8980": 14: failed to connect to all addresses; last error: UNAVAILABLE: ipv6:%5B::1%5D:8980: recvmsg:Connection reset by peer
2026-06-09T18:56:53.821+0200 [44564:140262583500416] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "ActionCache.GetActionResult()", last gRPC error was [14: Socket closed]
2026-06-09T18:56:53.968+0200 [44564:140262583500416] [executioncontext.cpp:544] [ERROR] Error while querying action cache at "http://localhost:8980": 14: Socket closed
2026-06-09T18:56:53.822+0200 [44786:140652396727936] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "ActionCache.GetActionResult()", last gRPC error was [14: failed to connect to all addresses; last error: UNAVAILABLE: ipv6:%5B::1%5D:8980: recvmsg:Connection reset by peer]
2026-06-09T18:56:53.968+0200 [44786:140652396727936] [executioncontext.cpp:544] [ERROR] Error while querying action cache at "http://localhost:8980": 14: failed to connect to all addresses; last error: UNAVAILABLE: ipv6:%5B::1%5D:8980: recvmsg:Connection reset by peer
2026-06-09T18:56:53.822+0200 [44699:139681503137408] [buildboxcommon_grpcretrier.cpp:177] [ERROR] Retry limit (0) exceeded for "ActionCache.GetActionResult()", last gRPC error was [14: failed to connect to all addresses; last error: UNAVAILABLE: ipv4:127.0.0.1:8980: recvmsg:Connection reset by peer]
2026-06-09T18:56:53.968+0200 [44699:139681503137408] [executioncontext.cpp:544] [ERROR] Error while querying action cache at "http://localhost:8980": 14: failed to connect to all addresses; last error: UNAVAILABLE: ipv4:127.0.0.1:8980: recvmsg:Connection reset by peer
ninja: build stopped: subcommand failed.

Full log here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Development

Successfully merging this pull request may close these issues.

3 participants