Skip to content

DPL: add allocator to forward a fair::mq::Message payload by shallow copy#15577

Open
ehellbar wants to merge 2 commits into
AliceO2Group:devfrom
ehellbar:pr15577
Open

DPL: add allocator to forward a fair::mq::Message payload by shallow copy#15577
ehellbar wants to merge 2 commits into
AliceO2Group:devfrom
ehellbar:pr15577

Conversation

@ehellbar

@ehellbar ehellbar commented Jul 6, 2026

Copy link
Copy Markdown
Collaborator

[[nodiscard]] DataRefIndices initialIndices() const { return {0, 1}; }
[[nodiscard]] DataRefIndices endIndices() const { return {size_t(-1), size_t(-1)}; }
[[nodiscard]] DataRef getAtIndices(DataRefIndices idx) const { return record->getAtIndices((int)slot, idx); }
[[nodiscard]] fair::mq::Message* getPayloadAtIndices(DataRefIndices idx) const { return record->getPayloadAtIndices((int)slot, idx); }

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

don't we already have an helper which does that?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

I don't see it, at least not for what I am doing here.

I define the getter e.g. in https://github.com/AliceO2Group/AliceO2/pull/15577/changes#diff-5d24f98b5c6098b6ad0a1ab814450dec590c82b86147d85c5a34afa0521171a6R239, where I use the DataRefIndices directly since we anyway calculate them in the InputRecordIterator.

There is https://github.com/AliceO2Group/AliceO2/blob/dev/Framework/Core/include/Framework/DataModelViews.h#L209, but it uses some indices from which the vector indices need to be computed first, so it is more expensive than what I need to do. Or are you referring to something else?

@alibuild

alibuild commented Jul 9, 2026

Copy link
Copy Markdown
Collaborator

Error while checking build/O2/fullCI_slc9 for b4570d8 at 2026-07-15 10:32:

## sw/BUILD/O2-full-system-test-latest/log
command /sw/slc9_x86-64/O2/slc9_x86-64-slc9_x86-64-local14/prodtests/full-system-test/dpl-workflow.sh had nonzero exit code 137
[8835:internal-dpl-injected-dummy-sink]: [10:31:41][ERROR] Failed binding socket internal-dpl-injected-dummy-sink.metric-feedback[0].push, address: ipc://@metric-feedback-0, reason: Address already in use
[8835:internal-dpl-injected-dummy-sink]: [10:31:41][ERROR] failed to attach channel metric-feedback[0] (bind on ipc://@metric-feedback-0)
[8835:internal-dpl-injected-dummy-sink]: [10:31:41][ERROR] 1 of the binding channels could not initialize. Initial configuration incomplete.
[8835:internal-dpl-injected-dummy-sink]: [10:31:41][FATAL] error while setting up workflow in o2-raw-file-reader-workflow: 1 of the binding channels could not initialize. Initial configuration incomplete.
[ERROR] Workflow crashed - PID 8835 (internal-dpl-injected-dummy-sink) did not exit correctly however it's not clear why. Exit code forced to 128.
[ERROR] Workflow crashed - PID 8621 (internal-dpl-ccdb-backend) was killed abnormally with Killed and exited code was set to 137.
[ERROR]  - Device internal-dpl-ccdb-backend: pid 8621 (exit 137)
[ERROR]  - Device internal-dpl-injected-dummy-sink: pid 8835 (exit 128)
[INFO]    - First error: [10:31:41][FATAL] error while setting up workflow in o2-raw-file-reader-workflow: 1 of the binding channels could not initialize. Initial configuration incomplete.
[ERROR] SEVERE: Device internal-dpl-ccdb-backend (8621) returned with 137


## sw/BUILD/o2checkcode-latest/log
--
========== List of errors found ==========
++ GRERR=0
++ grep -v clang-diagnostic-error error-log.txt
++ grep ' error:'
grep: error-log.txt: binary file matches
++ GRERR=1
++ [[ 1 == 0 ]]
++ mkdir -p /sw/INSTALLROOT/0885982598b98d52ac8f61a26ebd822e3685bc3a/slc9_x86-64/o2checkcode/1.0-local153/etc/modulefiles
++ alibuild-generate-module
+ HAS_BIN=
+ HAS_LIB=
+ HAS_CMAKE=
+ HAS_ROOT=
+ '[' 0 '!=' 0 ']'
+ cat
+ printf 'if ![ is-loaded '\''BASE/1.0'\'' ] {\n module load BASE/1.0\n}'
+ echo 'BUILD_REQUIRES=CMake alibuild-recipe-tools defaults-release'
BUILD_REQUIRES=CMake alibuild-recipe-tools defaults-release
+ FULL_BUILD_REQUIRES='FairCMakeModules Alice-GRID-Utils bz2 safe_int MPFR defaults-release Python-modules-list alibuild-recipe-tools date UUID CMake pytorch_cpuinfo googlebenchmark double-conversion ninja-fortran O2-customization json-c ninja'
+ echo 'FULL_BUILD_REQUIRES=FairCMakeModules Alice-GRID-Utils bz2 safe_int MPFR defaults-release Python-modules-list alibuild-recipe-tools date UUID CMake pytorch_cpuinfo googlebenchmark double-conversion ninja-fortran O2-customization json-c ninja'
FULL_BUILD_REQUIRES=FairCMakeModules Alice-GRID-Utils bz2 safe_int MPFR defaults-release Python-modules-list alibuild-recipe-tools date UUID CMake pytorch_cpuinfo googlebenchmark double-conversion ninja-fortran O2-customization json-c ninja
++ env
++ cut -f1 -d=
++ grep -v '^DEFAULT_'
++ grep -v PKGREVISION
++ grep -v ALIBUILD_RECIPE_TOOLS
++ sed -e s/_REVISION//
++ grep REVISION
+ for x in $(env | cut -f1 -d= | grep -v "^DEFAULT_" | grep -v PKGREVISION | grep -v ALIBUILD_RECIPE_TOOLS | grep REVISION | sed -e 's/_REVISION//')
++ eval 'echo $LIBFFI_REVISION'
+++ echo 10
+ REVISION_VALUE=10
++ eval 'echo $LIBFFI_VERSION'
[0 more errors; see full log]

Full log here.

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.

3 participants