Skip to content

DPL Analysis: query the CCDB once per run of equal timestamps - #16080

Merged
ktf merged 2 commits into
AliceO2Group:devfrom
ktf:pr16080
Nov 8, 2026
Merged

ktf merged 2 commits into
AliceO2Group:devfrom
ktf:pr16080

Conversation

@ktf

@ktf ktf commented Nov 8, 2026

Copy link
Copy Markdown
Member

When a CCDB table has no separate uniformity column, the analysis CCDB
fetcher called populateCacheWith for every row of the source table, so
about 19k times per timeframe for a BC-indexed table such as the ones of
propagation-service-v2, even though consecutive BCs share the same
millisecond timestamp. Reuse the previous responses whenever the lookup
key, the uniformity value or else the timestamp, is the same as the one
of the previous row. Since the key determines every FetchOp of the row,
the responses and hence the output table are unchanged.

For the LHC25b4a6 AO2D of Hyperloop test 799098 this is about 350 runs of
equal (millisecond) BC times over 1.17M BCs in 61 DFs, instead of one
query per BC.

ktf added 2 commits November 8, 2026 20:05
populateCacheWith created the pmr vector for the object, which matches
the output route and looks up its transport, for every FetchOp. On a
cache hit the vector is never used, and the analysis CCDB fetcher issues
one FetchOp per column for every row of the source table. Create it
only where an object is actually requested from the server.
When a CCDB table has no separate uniformity column, the analysis CCDB
fetcher called populateCacheWith for every row of the source table, so
about 19k times per timeframe for a BC-indexed table such as the ones of
propagation-service-v2, even though consecutive BCs share the same
millisecond timestamp. Reuse the previous responses whenever the lookup
key, the uniformity value or else the timestamp, is the same as the one
of the previous row. Since the key determines every FetchOp of the row,
the responses and hence the output table are unchanged.

For the LHC25b4a6 AO2D of Hyperloop test 799098 this is about 350 runs of
equal (millisecond) BC times over 1.17M BCs in 61 DFs, instead of one
query per BC.
@ktf
ktf requested a review from a team as a code owner November 8, 2026 19:06
@ktf

ktf commented Nov 8, 2026

Copy link
Copy Markdown
Member Author

Only touches analysis CCDB code, which is not yet in production. Works for the full system test. Merging.

@ktf ktf closed this Nov 8, 2026
@ktf ktf reopened this Nov 8, 2026
@ktf
ktf merged commit de3ecdf into AliceO2Group:dev Nov 8, 2026
15 of 16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant