TBB issues when CRAN runs tests on package

Offen
#169 6 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
25/100
Issue-Typ
Bug
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
cpp, r
Bereich
backend, testing-qa

Rechercherichtung

Start with src/tbb/scheduler.cpp at line 328 and the linked clang-ASAN and clang-UBSAN test outputs. Reproduce the reports by running testthat::test_check for secr and openCR under the sanitizer configurations. Done means identifying the RcppParallel cause and either eliminating the invalid tbb::task report or documenting the required supported setting.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Firstly, please direct me to a more suitable list if this is not where I should seek help with RcppParallel.

CRAN would like me to fix clang-ASAN and clang-UBSAN issues from RcppParallel when I submit packages 'secr' and 'openCR'. These are completely arcane to me. The problem only seems to arise when running tests. Is there a setting in RcppParallel >=5.1.1 that will get me through?

The test results are at
https://www.stats.ox.ac.uk/pub/bdr/memtests/clang-ASAN/secr/tests/testthat.Rout.fail
and
https://www.stats.ox.ac.uk/pub/bdr/memtests/clang-UBSAN/openCR/tests/testthat.Rout

Here is a typical snippet from the first:

library(testthat)
test_check("secr")
Loading required package: secr
This is secr 4.4.1. For overview type ?secr
../../src/tbb/scheduler.cpp:328:16: runtime error: member call on address 0x7f795c81ff40 which does not point to an object of type 'tbb::task'
0x7f795c81ff40: note: object has invalid vptr
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

Thanks
Murray

Vorherrschende Sprache
C++
Sterne
173
Forks
60
Ø Merge
1 Std. 55 Min.
Gemergte PRs (30 T.)
2

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus RcppCore/RcppParallel

Alle Issues in RcppCore/RcppParallel

Ähnliche Issues

Weitere Issues zu C++

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.