Skip to content

[WIP][Cling] Refactor CIFactory and add incremental action support - #232

Open
smuzaffar wants to merge 224 commits into
cms-sw:cms/master/8d94a43d32efrom
SahilPatidar:incr_action
Open

[WIP][Cling] Refactor CIFactory and add incremental action support#232
smuzaffar wants to merge 224 commits into
cms-sw:cms/master/8d94a43d32efrom
SahilPatidar:incr_action

Conversation

@smuzaffar

Copy link
Copy Markdown

PR to run cmssw tests for root-project#21903

@cmsbuild

Copy link
Copy Markdown

A new Pull Request was created by @smuzaffar for branch cms/master/6bf5355cc45.

@akritkbehera, @cmsbuild, @iarspider, @raoatifshad, @smuzaffar can you please review it and eventually sign? Thanks.
@ftenchini, @mandrenguyen, @sextonkennedy you are the release manager for this.
cms-bot commands are listed here

@cmsbuild

cmsbuild commented Jun 23, 2026

Copy link
Copy Markdown

cms-bot internal usage

@smuzaffar

Copy link
Copy Markdown
Author

test parameters:

  • enable = threading
  • release = CMSSW_20_1_ROOT6_X

@smuzaffar

Copy link
Copy Markdown
Author

please test

@cmsbuild

Copy link
Copy Markdown

-1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-6599f5/54197/summary.html
COMMIT: 2e181c5
CMSSW: CMSSW_20_1_ROOT6_X_2026-06-22-2300/el9_amd64_gcc13
Additional Tests: THREADING
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/root/232/54197/install.sh to create a dev area with all the needed externals and cmssw changes.

Failed External Build

I found compilation error when building:

+ echo 'test $?PY3_NUMPY_ROOT != 0 || source /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/el9_amd64_gcc13/external/py3-numpy/1.26.4-6c7401133d71aa0fdd19f4799dadfbdf/etc/profile.d/init.csh'
+ echo fi
+ touch /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/etc/profile.d/.autodependencies
Processing files: lcg+root+6.41.1-4b26fd0c9f290a660109640c68a0e0e0-1-1.x86_64
warning: absolute symlink: /opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/cuda.pcm.lock -> /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/cuda.pcm.lock-fd641802
error: Symlink points to BuildRoot: /opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/cuda.pcm.lock -> /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/cuda.pcm.lock-fd641802

RPM build warnings:
Macro expanded in comment on line 497: %{pkginstroot}/lib

Macro expanded in comment on line 498: %{pkginstroot}


@vgvassilev

Copy link
Copy Markdown

Why does that try to build the cuda module again? cc: @SahilPatidar.

@smuzaffar

Copy link
Copy Markdown
Author

@vgvassilev , yes we do try to build cuda module ( see https://github.com/cms-sw/cmsdist/blob/IB/CMSSW_20_1_X/master/root.spec#L182 ) and looks like it fails
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-6599f5/54197/externals/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/log

+ echo '#include <cuda_runtime.h>'
+ /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/bin/root -b -n -l
ROOT_prompt_0:1:10: remark: building module 'cuda' as '/data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/cuda.pcm' [-Rmodule-build]
#include <cuda_runtime.h>
         ^

 *** Break *** segmentation violation



===========================================================
There was a crash.
This is the entire stack trace of all threads:
===========================================================
#0  0x000014a1e48d01ba in wait4 () from /lib64/libc.so.6
#1  0x000014a1e48454b3 in do_system () from /lib64/libc.so.6
#2  0x000014a1e5194834 in TUnixSystem::StackTrace() () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/bin/../lib/libCore.so
#3  0x000014a1e51941e4 in TUnixSystem::DispatchSignals(ESignals) () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/bin/../lib/libCore.so
#4  <signal handler called>
#5  0x000014a1ddac8abb in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#6  0x000014a1ddaf5de9 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#7  0x000014a1de567e00 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#8  0x000014a1de81a59c in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#9  0x000014a1de52102f in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#10 0x000014a1de4aa125 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#11 0x000014a1de4aa775 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#12 0x000014a1e28d4f94 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#13 0x000014a1de4a6ed0 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#14 0x000014a1de4a7903 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#15 0x000014a1de4a849c in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#16 0x000014a1de4ad6c1 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#17 0x000014a1de4ade0a in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#18 0x000014a1e16cd24e in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#19 0x000014a1e16cd8c7 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#20 0x000014a1e16ceaf9 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#21 0x000014a1e167e8d1 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#22 0x000014a1e171023c in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#23 0x000014a1dda34be2 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#24 0x000014a1dda34f05 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#25 0x000014a1dda35881 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#26 0x000014a1dd99c4a3 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#27 0x000014a1dd99ee83 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#28 0x000014a1dda9793b in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#29 0x000014a1dd86068d in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#30 0x000014a1dd87de52 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#31 0x000014a1e537abb5 in TRint::ProcessLineNr(char const*, char const*, int*) () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/bin/../lib/libRint.so
#32 0x000014a1e537af76 in TRint::HandleTermInput() () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/bin/../lib/libRint.so
#33 0x000014a1e518eed5 in TUnixSystem::CheckDescriptors() () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/bin/../lib/libCore.so
#34 0x000014a1e5193f90 in TUnixSystem::DispatchOneEvent(bool) () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/bin/../lib/libCore.so
#35 0x000014a1e5085c04 in TSystem::Run() () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/bin/../lib/libCore.so
#36 0x000014a1e500c38b in TApplication::Run(bool) () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/bin/../lib/libCore.so
#37 0x000014a1e537c242 in TRint::Run(bool) () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/bin/../lib/libRint.so
#38 0x00000000004011bd in main ()
===========================================================


The lines below might hint at the cause of the crash. If you see question
marks as part of the stack trace, try to recompile with debugging information
enabled and export CLING_DEBUG=1 environment variable before running.
You may get help by asking at the ROOT forum https://root.cern/forum
preferably using the command (.forum bug) in the ROOT prompt.
Only if you are really convinced it is a bug in ROOT then please submit a
report at https://root.cern/bugs or (preferably) using the command (.gh bug) in
the ROOT prompt. Please post the ENTIRE stack trace
from above as an attachment in addition to anything else
that might help us fixing this issue.
===========================================================
#5  0x000014a1ddac8abb in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#6  0x000014a1ddaf5de9 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#7  0x000014a1de567e00 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#8  0x000014a1de81a59c in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#9  0x000014a1de52102f in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#10 0x000014a1de4aa125 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#11 0x000014a1de4aa775 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#12 0x000014a1e28d4f94 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#13 0x000014a1de4a6ed0 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#14 0x000014a1de4a7903 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#15 0x000014a1de4a849c in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#16 0x000014a1de4ad6c1 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#17 0x000014a1de4ade0a in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#18 0x000014a1e16cd24e in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#19 0x000014a1e16cd8c7 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#20 0x000014a1e16ceaf9 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#21 0x000014a1e167e8d1 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#22 0x000014a1e171023c in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#23 0x000014a1dda34be2 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#24 0x000014a1dda34f05 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#25 0x000014a1dda35881 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#26 0x000014a1dd99c4a3 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#27 0x000014a1dd99ee83 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#28 0x000014a1dda9793b in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#29 0x000014a1dd86068d in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
#30 0x000014a1dd87de52 in ?? () from /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/4b26fd0c9f290a660109640c68a0e0e0/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-4b26fd0c9f290a660109640c68a0e0e0/lib/libCling.so
===========================================================

@smuzaffar

Copy link
Copy Markdown
Author

@vgvassilev , looks like root did not fails (i.e. exit with 0) for command like echo '#include <cuda_runtime.h>' | %{i}/bin/root -b -n -l while from the log there was clearly a segmentation violation

@vgvassilev

Copy link
Copy Markdown

So, what's the right behavior nowadays, to build cuda.pcm or to not build it now?

@smuzaffar

smuzaffar commented Jun 23, 2026

Copy link
Copy Markdown
Author

In past we had jobs which were generating cuda modules on fly and causing issue ( see cms-sw/cmssw#47400 ). So we started building cuda.pcm at the time of root build. This has worked so I guess we want to keep the cuda.pcm

@vgvassilev

Copy link
Copy Markdown

Are you sure that failure comes with this new code changes? Eg. not some temporal infrastructure issue?

@smuzaffar

Copy link
Copy Markdown
Author

please test

lets me try again

@smuzaffar

Copy link
Copy Markdown
Author

@vgvassilev , yesterday we tested root-project@6bf5355cc45 in cmssw and generating cuda pcm did not fails
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-5421c1/54171/externals/root/6.41.1-50cf9f8637efaadd6d73730a5f11fac6/log

+ echo '#include <cuda_runtime.h>'
+ /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/50cf9f8637efaadd6d73730a5f11fac6/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-50cf9f8637efaadd6d73730a5f11fac6/bin/root -b -n -l
ROOT_prompt_0:1:10: remark: building module 'cuda' as '/data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/50cf9f8637efaadd6d73730a5f11fac6/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-50cf9f8637efaadd6d73730a5f11fac6/lib/cuda.pcm' [-Rmodule-build]
#include <cuda_runtime.h>
         ^
ROOT_prompt_0:1:10: remark: finished building module 'cuda' [-Rmodule-build]

This Pr is testing these changes on top of root commit root-project@6bf5355cc45

@vgvassilev

Copy link
Copy Markdown

Ok, so that's a real regression -- what would be the way for Sahil to reproduce it? He has no HEP/CERN affiliation.

@cmsbuild

Copy link
Copy Markdown

-1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-6599f5/54215/summary.html
COMMIT: 2e181c5
CMSSW: CMSSW_20_1_ROOT6_X_2026-06-22-2300/el9_amd64_gcc13
Additional Tests: THREADING
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/root/232/54215/install.sh to create a dev area with all the needed externals and cmssw changes.

Failed External Build

I found compilation error when building:

+ echo 'test $?PY3_NUMPY_ROOT != 0 || source /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/el9_amd64_gcc13/external/py3-numpy/1.26.4-6c7401133d71aa0fdd19f4799dadfbdf/etc/profile.d/init.csh'
+ echo fi
+ touch /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/b9a5bd8aca6afd91000923d55aa0acd5/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-b9a5bd8aca6afd91000923d55aa0acd5/etc/profile.d/.autodependencies
Processing files: lcg+root+6.41.1-b9a5bd8aca6afd91000923d55aa0acd5-1-1.x86_64
warning: absolute symlink: /opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-b9a5bd8aca6afd91000923d55aa0acd5/lib/cuda.pcm.lock -> /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/b9a5bd8aca6afd91000923d55aa0acd5/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-b9a5bd8aca6afd91000923d55aa0acd5/lib/cuda.pcm.lock-a2314b96
error: Symlink points to BuildRoot: /opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-b9a5bd8aca6afd91000923d55aa0acd5/lib/cuda.pcm.lock -> /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/tmp/BUILDROOT/b9a5bd8aca6afd91000923d55aa0acd5/opt/cmssw/el9_amd64_gcc13/lcg/root/6.41.1-b9a5bd8aca6afd91000923d55aa0acd5/lib/cuda.pcm.lock-a2314b96

RPM build warnings:
Macro expanded in comment on line 497: %{pkginstroot}/lib

Macro expanded in comment on line 498: %{pkginstroot}


@smuzaffar

smuzaffar commented Jun 23, 2026

Copy link
Copy Markdown
Author

In order to reproduce it, you just need to build root locally with cuda enabled and just run echo '#include <cuda_runtime.h>' | <root-dir>/bin/root -b -n -l . https://raw.githubusercontent.com/cms-sw/cmsdist/refs/heads/IB/CMSSW_20_1_X/rootmaster/root.spec is the build recipe we use to build root but I think normal root build with cuda should also generate this error

hageboeck and others added 29 commits July 22, 2026 16:29
Markers and lines in Graf3D are coupled to TGeometry, but this coupling
can be broken by not including TGeometry.
This would only break one single feature, which is that markers and
lines transform based on the currently active geometry. This remains
supported by declaring a transform function in graf3d/g3d. This
transform function can be accessed from TGeometry, eventually allowing
for putting TGeometry and all its shapes into a dedicated library.
Disable tests failing due to unresolved symbols with Visual Studio 2026
The axis parser for RooGeneric/RooFormulaVar binning read "edges",
"min" and "max" via JSONNode::val_double() without first checking the
node was actually a number. For a non-numeric JSON value (e.g. a
string) this either threw a backend-specific exception that is not a
std::runtime_error (aborting past the tool's error handling) or, with
the stringstream-based backend, silently coerced the value to 0 and
imported a wrong binning.

Add a JSONNode::is_number() predicate (native in the nlohmann backend,
with a val()-parsing fallback in the base interface) and guard the edge
and min/max conversions with it, so malformed bounds are rejected with a
descriptive RooJSONFactoryWSTool::error() like every other malformed
axis case. Full precision is preserved because the value is still read
through val_double() once validated.
readPositiveInteger parsed "nbins" with a strict std::from_chars over
the node's textual value, which rejected an integer bin count encoded as
a JSON float: e.g. 1000000.0 renders as "1e+06", where from_chars stops
at 'e' and the whole import fails with a misleading "must be a positive
integer" error. Other nbins readers in HS3 use the lenient val_int().

Read the value through val_double() instead and require it to be finite,
>= 1, integral and within int range. This accepts integer-valued floats
like 1e6 while still rejecting fractional (2.5), non-positive (0) and
non-numeric values, so the existing rejection tests keep passing. Drops
the now-unused <charconv> include.
The separate roofit/jsoninterface package made sense when there was
also a YAML backend, but since only the nlohmann/json backend remains,
it was just unnecessary abstraction boilerplate as a standalone
library.

Move the RooFit::Detail::JSONInterface header into RooFitHS3 and merge
the implementation (JSONInterface.cxx, JSONParser.h, JSONParser.cxx)
into a single translation unit, with the TJSONTree implementation class
now in an anonymous namespace. This remains the only translation unit
that includes nlohmann/json.hpp, so the JSON engine could still be
swapped out in the future by changing only this one file.

Also remove the unused writeYML() interface method, a leftover from the
YAML backend, and move testJSONInterface into the RooFitHS3 test suite.
ROOT requires C++17 since a while already.
ROOT requires C++17 since a while already.
ROOT requires C++17 since a while already.
because geom=OFF, e.g. for minimal builds.
Histo1D only supports numeric columns; there was no way to fill a
histogram from a string/categorical column (e.g. particle type,
detector region labels) without manual workarounds. This adds a
BarChart() lazy action that fills a label-binned, auto-extending
TH1D from either std::string columns or classic C-style char[]
tree branches (inferred as RVec<char> by RDataFrame).

- ActionTags::BarChart + a dedicated BuildAction overload
- BarChartHelper, since FillHelper<TH1D> cannot compile against
  either std::string or RVec<char> (no implicit conversion to
  the const char* Fill overload)
- RInterface::BarChart(vName, name, title)
- Test coverage in dataframe_histomodels.cxx (bin ordering/counts)
  and dataframe_simple.cxx (auto name/title derivation)

Closes root-project#17057
Per @vepadulano's review on root-project#22802, a new BarChart() RDataFrame method
tied to TH1D would risk deprecation once ROOT's new histogram system
(RCategoricalAxis in hist/histv7) gains plotting support and becomes
the preferred way to handle alphanumeric bins. This tutorial instead
shows the same result using RDataFrame's existing generic Fill()
action with a small adapter class, requiring no core API changes.

Verified against the same cernstaff.root/Nation dataset used in
hist006_TH1_bar_charts.C: 15 bins, labels and counts match
TTree::Draw("Nation","","hbar2").
Replace the cernstaff.root/tree500_cernbuild.C dependency with a small
writeData() helper that generates a synthetic categorical column via
RDataFrame::Define + Snapshot, removing the need to explain classic
char[] branch handling, which was out of scope for this tutorial.

Rename AlphaNumHist's TH1D member and the RResultPtr variable from the
terse 'h' to 'histo'/'result' for readability, and replace the raw
'new TCanvas' with a std::unique_ptr<TCanvas> to avoid showing a leak
in a user-facing tutorial.

Addresses review comments from vepadulano on PR root-project#22802.
Visible in builds where NDEBUG is not defined.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.