Skip to content

[DPG] tpcSkimsTableCreator: bugfix reserve tables size#16739

Open
lubynets wants to merge 4 commits into
AliceO2Group:masterfrom
lubynets:tpc-skims-reserve
Open

[DPG] tpcSkimsTableCreator: bugfix reserve tables size#16739
lubynets wants to merge 4 commits into
AliceO2Group:masterfrom
lubynets:tpc-skims-reserve

Conversation

@lubynets

Copy link
Copy Markdown
Contributor
  • In the tpcSkimsTableCreator there are two nested loops: collisions and tracks (V0s, cascades). Currently the reservation of the output table size is done inside the collision loop, while it should be done once per dataframe. It brings to underreservation of the size, which had no fatal effect before (although performance could worsen), but after these PRs, DPL Analysis: use unsafe cursor when reserving AliceO2#15450 and AOD Writer: correct reserve for cpvClusters AliceO2#15512 it brings to a fatal error. This PR fixes this logical error by bringing table reservation outside the collision loop;
  • Currently the size to be reserved was equal to the number of input tracks (or $2N_{\mathrm{V0}} + N_{\mathrm{casc}}$), which is extremely conservative, since only small part of the input is propagated to the output. This PR introduces configurables, which define the ratio of the expected output table size to that of the input table. The default values are chosen to be by factor of ~5 larger than the "usual" ratio with "common" selection configuration;
  • Added QA histograms, where the dataframe-wise distribution of the output/input table size ratios are stored, so one can tune the mentioned configurables if they are too conservative (if they are too aggressive the code will crash).

Tagging @amaringarcia

@github-actions github-actions Bot added the dpg label Jun 19, 2026
@github-actions github-actions Bot changed the title tpcSkimsTableCreator: bugfix reserve tables size [DPG] tpcSkimsTableCreator: bugfix reserve tables size Jun 19, 2026
@github-actions

Copy link
Copy Markdown

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

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.

1 participant