Skip to content

[ntuple, daos] Defer daos_init() call until needed#8093

Merged
jalopezg-git merged 1 commit intoroot-project:masterfrom
jalopezg-git:jalopezg-rntuple-daos-deferinit
May 6, 2021
Merged

[ntuple, daos] Defer daos_init() call until needed#8093
jalopezg-git merged 1 commit intoroot-project:masterfrom
jalopezg-git:jalopezg-rntuple-daos-deferinit

Conversation

@jalopezg-git
Copy link
Copy Markdown
Contributor

@jalopezg-git jalopezg-git commented May 4, 2021

The RAII object in RDaos.cxx was constructed statically, which causes a DAOS-enabled RNTuple build to call daos_init() (or daos_fini() at exit) even if the only the file backend was used by user code.

This commit turns the RAII object into a static variable in RDaosPool::RDaosPool() which is initialized during the first call to the
constructor. Note that static variable initialization is guaranteed to be thread-safe by ISO C++.

@phsft-bot
Copy link
Copy Markdown

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos8-multicore/default, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac11.0/cxx17, windows10/cxx14
How to customize builds

@jalopezg-git
Copy link
Copy Markdown
Contributor Author

@phsft-bot build

@phsft-bot
Copy link
Copy Markdown

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos8-multicore/default, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac11.0/cxx17, windows10/cxx14
How to customize builds

@jalopezg-git jalopezg-git force-pushed the jalopezg-rntuple-daos-deferinit branch from 901165d to f407c8b Compare May 4, 2021 18:41
@phsft-bot
Copy link
Copy Markdown

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos8-multicore/default, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac11.0/cxx17, windows10/cxx14
How to customize builds

The RAII object in RDaos.cxx was constructed statically, which causes
a DAOS-enabled RNTuple build to call `daos_init()` (or `daos_fini()` at exit)
even if the only the file backend was used by user code.

This commit turns the RAII object into a static variable in
`RDaosPool::RDaosPool()` which is initialized during the first call to the
constructor.  Note that static variable initialization is guaranteed to be
thread-safe by ISO C++.
@jalopezg-git jalopezg-git force-pushed the jalopezg-rntuple-daos-deferinit branch from f407c8b to a7eff46 Compare May 6, 2021 17:38
@phsft-bot
Copy link
Copy Markdown

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos8-multicore/default, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1014/python3, mac11.0/cxx17, windows10/cxx14
How to customize builds

@jalopezg-git jalopezg-git merged commit b47a998 into root-project:master May 6, 2021
@jalopezg-git jalopezg-git deleted the jalopezg-rntuple-daos-deferinit branch May 6, 2021 18:18
@phsft-bot
Copy link
Copy Markdown

Build failed on mac11.0/cxx17.
Running on macphsft23.dyndns.cern.ch:/Users/sftnight/build/workspace/root-pullrequests-build
See console output.

Warnings:

  • [2021-05-06T18:28:37.990Z] /Users/sftnight/build/workspace/root-pullrequests-build/root/math/vecops/inc/ROOT/RAdoptAllocator.hxx:194:21: warning: 'destroy' is deprecated [-Wdeprecated-declarations]
  • [2021-05-06T18:28:44.502Z] /Users/sftnight/build/workspace/root-pullrequests-build/root/math/vecops/inc/ROOT/RAdoptAllocator.hxx:194:21: warning: 'destroy' is deprecated [-Wdeprecated-declarations]
  • [2021-05-06T18:28:44.502Z] /Users/sftnight/build/workspace/root-pullrequests-build/root/math/vecops/inc/ROOT/RAdoptAllocator.hxx:128:24: warning: 'destroy' is deprecated [-Wdeprecated-declarations]
  • [2021-05-06T18:28:44.502Z] /Users/sftnight/build/workspace/root-pullrequests-build/root/math/vecops/inc/ROOT/RAdoptAllocator.hxx:140:54: warning: 'max_size' is deprecated [-Wdeprecated-declarations]
  • [2021-05-06T18:28:44.502Z] /Users/sftnight/build/workspace/root-pullrequests-build/root/math/vecops/inc/ROOT/RAdoptAllocator.hxx:99:21: warning: 'construct' is deprecated [-Wdeprecated-declarations]
  • [2021-05-06T18:28:44.502Z] /Users/sftnight/build/workspace/root-pullrequests-build/root/math/vecops/inc/ROOT/RAdoptAllocator.hxx:99:21: warning: 'construct<ROOT::VecOps::RVec<unsigned long>>' is deprecated [-Wdeprecated-declarations]
  • [2021-05-06T18:28:44.502Z] /Users/sftnight/build/workspace/root-pullrequests-build/root/math/vecops/inc/ROOT/RAdoptAllocator.hxx:99:21: warning: 'construct' is deprecated [-Wdeprecated-declarations]
  • [2021-05-06T18:28:44.503Z] /Users/sftnight/build/workspace/root-pullrequests-build/root/math/vecops/inc/ROOT/RAdoptAllocator.hxx:99:21: warning: 'construct<unsigned long>' is deprecated [-Wdeprecated-declarations]
  • [2021-05-06T18:28:44.503Z] /Users/sftnight/build/workspace/root-pullrequests-build/root/math/vecops/inc/ROOT/RAdoptAllocator.hxx:140:54: warning: 'max_size' is deprecated [-Wdeprecated-declarations]
  • [2021-05-06T18:28:44.503Z] /Users/sftnight/build/workspace/root-pullrequests-build/root/math/vecops/inc/ROOT/RAdoptAllocator.hxx:128:24: warning: 'destroy' is deprecated [-Wdeprecated-declarations]

And 1475 more

Failing tests:

@phsft-bot
Copy link
Copy Markdown

Build failed on windows10/cxx14.
Running on null:C:\build\workspace\root-pullrequests-build
See console output.

Errors:

  • [2021-05-06T20:37:56.455Z] CMake Error at C:/build/workspace/root-pullrequests-build/rootspi/jenkins/root-build.cmake:1038 (message):

@jalopezg-git jalopezg-git assigned jalopezg-git and unassigned jblomer Aug 19, 2023
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.

4 participants