Skip to content

Conversation

@smuzaffar
Copy link

No description provided.

lmoneta and others added 13 commits January 26, 2026 09:03
This is necessary with Python 3.14 so the function returned by `partial`
doesn't won't be passed the `self` when called as a member of the
DistRDF base class.

Fixes failures like these:
```txt
=================================== FAILURES ===================================
_________________ TestInitialization.test_initialization[dask] _________________

self = <check_backend.TestInitialization object at 0x7f0248aea5d0>
payload = (<Client: 'tcp://127.0.0.1:45111' processes=2 threads=2, memory=4.00 GiB>, 'dask')

    def test_initialization(self, payload):
        """
        Check that the user initialization method is assigned to the current
        backend.
        """
        connection, _ = payload

        def returnNumber(n):
            return n

        DistRDF.initialize(returnNumber, 123)

        df = ROOT.RDataFrame(10, executor=connection)

        # Dummy df just to retrieve the initialization function
        f = df._headnode.backend.initialization

>       assert f() == 123
               ^^^
E       TypeError: TestInitialization.test_initialization.<locals>.returnNumber() takes 1 positional argument but 2 were given

../../../../../src/roottest/python/distrdf/backends/check_backend.py:81: TypeError
```
This is to test distributed RDataFrame also on a platform with
Python 3.14.

Also remove some unneeded configuration flags, because they don't
deviate from `global.txt`.
This is to avoid a warning when running the tutorials:
```txt
Processing /github/home/ROOT-CI/src/tutorials/machine_learning/TMVA_SOFIE_GNN_Application.C...
In file included from input_line_10:1:
 ##[error]/github/home/ROOT-CI/src/tutorials/machine_learning/TMVA_SOFIE_GNN_Application.C:14:10: fatal error: 'encoder.hxx' file not found
 #include "encoder.hxx"
         ^~~~~~~~~~~~~
 ##[error]/github/home/ROOT-CI/src/tutorials/machine_learning/TMVA_SOFIE_GNN_Application.C:138:1: error: non-void function does not return a value [-Werror,-Wreturn-type]
}
^
```
The problem with `grep -v` is that it returns an non-zero error status
code if nothing was found, which is a prolem if the output has no lines
other than the filtered one. The test would fail because the test driver
thinks something went wrong because of the non-zero status code.
ROOT first prints a newline before going over the inputs to separate
printouts from the initial "root [0]" prompt. But if root is run with
"-q", there is no prompt and we don't need the newline.

Removing this spurious newline completely avoids all output when
building ROOT, where the newline used to happen when running
`hsimple.C`.

This is commit is similar to 8e8b6bb, which removed another
stray linebreak in the opposite case of running `root` with no input
files.
We should explicitly use the Python executable from the Python version
that was used to build ROOT. Otherwise, we risk picking up an different
Python version at test time in some environments.

This was already done on Windows before, but is important to do on all
platforms.

Closes root-project#21024.
Previously, when a user asked to interpolate a value close to the edges
of the histogram, the function would generate an error. This is
inconsistent with the TH1 version of Interpolate.
Here, the valid range is extended by assuming that the histogram is
constant at its edges (i.e. the imaginary next bin outside the axis
limits has the same bin content as the last bin inside the limits, like
in TH1). From here, the trilinear interpolation proceeds as before.

Fix root-project#10678
@smuzaffar
Copy link
Author

test parameters:

  • full_cmssw = true

@cmsbuild
Copy link

A new Pull Request was created by @smuzaffar for branch cms/master/96a77141652.

@akritkbehera, @cmsbuild, @iarspider, @raoatifshad, @smuzaffar can you please review it and eventually sign? Thanks.
@ReyerBand, @argiro, @missirol, @mmusich, @rchatter, @thomreis, @wang0jin this is something you requested to watch as well.
@ftenchini, @mandrenguyen, @sextonkennedy you are the release manager for this.
cms-bot commands are listed here

@cmsbuild
Copy link

cmsbuild commented Jan 26, 2026

cms-bot internal usage

@smuzaffar
Copy link
Author

please test for CMSSW_16_1_ROOT6_X

@cmsbuild
Copy link

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-7c1d8a/50913/summary.html
COMMIT: b091755
CMSSW: CMSSW_16_1_ROOT6_X_2026-01-25-2300/el8_amd64_gcc13
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/root/229/50913/install.sh to create a dev area with all the needed externals and cmssw changes.

Comparison Summary

The workflows 2025.0010001, 2024.0060001, 2024.0050001 have different files in step1_dasquery.log than the ones found in the baseline. You may want to check and retrigger the tests if necessary. You can check it in the "files" directory in the results of the comparisons

Summary:

  • You potentially added 23 lines to the logs
  • ROOTFileChecks: Some differences in event products or their sizes found
  • Reco comparison results: 12230 differences found in the comparisons
  • DQMHistoTests: Total files compared: 52
  • DQMHistoTests: Total histograms compared: 3876189
  • DQMHistoTests: Total failures: 20258
  • DQMHistoTests: Total nulls: 24
  • DQMHistoTests: Total successes: 3855887
  • DQMHistoTests: Total skipped: 20
  • DQMHistoTests: Total Missing objects: 0
  • DQMHistoSizes: Histogram memory added: -2.018 KiB( 49 files compared)
  • DQMHistoSizes: changed ( 2024.0060001 ): -1.891 KiB Hcal/DigiRunHarvesting
  • DQMHistoSizes: changed ( 2024.0060001 ): -0.111 KiB SiStrip/MechanicalView
  • DQMHistoSizes: changed ( 2024.0060001 ): -0.047 KiB RPC/DCSInfo
  • DQMHistoSizes: changed ( 2024.0060001 ): 0.031 KiB JetMET/SUSYDQM
  • Checked 222 log files, 193 edm output root files, 52 DQM output files
  • TriggerResults: no differences found

The idea is to find the actual ROOT install directory, so we have to
follow symlinks. The `info->dlpi_name` doesn't do that, so we need to do
that ourselves with `fs::canonical()`.

Closes root-project#21031.
@cmsbuild
Copy link

Pull request #229 was updated.

@smuzaffar
Copy link
Author

please test

@cmsbuild
Copy link

-1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-7c1d8a/50922/summary.html
COMMIT: 5ae8259
CMSSW: CMSSW_16_1_X_2026-01-26-2300/el8_amd64_gcc13
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week0/cms-sw/root/229/50922/install.sh to create a dev area with all the needed externals and cmssw changes.

Failed External Build

I found compilation error when building:

Requested to quit.
Requested to quit.
* The action "build-build-cms+dqmgui+1.0.1_R6.36.07-81057f110e660233fae09917fe2002f6" was not completed successfully because Failed to build dqmgui. Log file in /data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/BUILD/el8_amd64_gcc13/cms/dqmgui/1.0.1_R6.36.07-81057f110e660233fae09917fe2002f6/log. Final lines of the log file:
|    ^~~~~~~
plugins/PCLPixelAlignmentRenderPlugin.cc: In member function 'void PCLPixelAlignmentRenderPlugin::preDrawTH1F(TCanvas*, const VisDQMObject&)':
plugins/PCLPixelAlignmentRenderPlugin.cc:134:11: error: 'fabs' was not declared in this scope; did you mean 'labs'?
134 |       if (fabs(obj->GetBinContent(i)) > maxMoveCut_[i - 1])
|           ^~~~
|           labs
plugins/PCLPixelAlignmentRenderPlugin.cc: In member function 'void PCLPixelAlignmentRenderPlugin::postDrawTH1F(TCanvas*, const VisDQMObject&)':
plugins/PCLPixelAlignmentRenderPlugin.cc:244:11: error: 'fabs' was not declared in this scope; did you mean 'labs'?


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.

7 participants