Skip to content

Conversation

@ben-schwen
Copy link
Member

Function subsetDT
  [UP] calling allocating function subsetVectorRaw with argument allocated using Rf_getAttrib(?,S:names) data.table/src/subset.c:334
  [UP] unprotected variable key while calling allocating function Rf_getAttrib(?,S:names) data.table/src/subset.c:346
  [UP] allocating function chin may destroy its unprotected argument (key <arg 1>), which is later used. data.table/src/subset.c:347
  [UP] calling allocating function chin with a fresh pointer (key <arg 1>) data.table/src/subset.c:347
  [UP] unprotected variable key while calling allocating function Rf_allocVector data.table/src/subset.c:355
  [UP] unprotected variable key while calling allocating function Rf_setAttrib(?,S:sorted,V) data.table/src/subset.c:355

@MichaelChirico
Copy link
Member

MichaelChirico commented Dec 26, 2025

Strange that our rchk action has totally different results than shown on CRAN 😅

Library name (usually package name): data_table
Initialization function: R_init_data_table
Functions: 110
Functions: 1
Checked call to R_registerRoutines: 1
ERROR: too many states (abstraction error?) in function strptime_internal
ERROR: too many states (abstraction error?) in function bcEval_loop
ERROR: too many states (abstraction error?) in function StringValue
ERROR: too many states (abstraction error?) in function RunGenCollect
ERROR: too many states (abstraction error?) in function rbindlist
ERROR: too many states (abstraction error?) in function freadMain
ERROR: too many states (abstraction error?) in function fcaseR
ERROR: too many states (abstraction error?) in function rbindlist

Function cbindlist
  [UP] protect stack is too deep, unprotecting all variables, results will be incomplete
  [UP] unsupported form of unprotect, unprotecting all variables, results will be incomplete /rchk/packages/build/loowXoIa/data.table/src/mergelist.c:85

Function fcaseR
  [UP] protect stack is too deep, unprotecting all variables, results will be incomplete
  [UP] protect stack is too deep, unprotecting all variables, results will be incomplete
  [UP] protect stack is too deep, unprotecting all variables, results will be incomplete
  [UP] unsupported form of unprotect, unprotecting all variables, results will be incomplete /rchk/packages/build/loowXoIa/data.table/src/fifelse.c:414

Function forder
  [UP] protect stack is too deep, unprotecting all variables, results will be incomplete
  [UP] unsupported form of unprotect, unprotecting all variables, results will be incomplete /rchk/packages/build/loowXoIa/data.table/src/forder.c:867

Function rbindlist
  [UP] protect stack is too deep, unprotecting all variables, results will be incomplete
  [UP] protect stack is too deep, unprotecting all variables, results will be incomplete
  [UP] protect stack is too deep, unprotecting all variables, results will be incomplete
  [UP] unsupported form of unprotect, unprotecting all variables, results will be incomplete /rchk/packages/build/loowXoIa/data.table/src/rbindlist.c:565
Analyzed 387 functions, traversed 6466838 states.

Rchk version: baa186024c3a38e5db74ac4a72f8e2c1e04417ef
R version: 87292/R Under development (unstable) (2024-11-06 r87292)
LLVM version: 14.0.0

@codecov
Copy link

codecov bot commented Dec 26, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 98.97%. Comparing base (3acb570) to head (18b3147).
⚠️ Report is 1 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #7520   +/-   ##
=======================================
  Coverage   98.97%   98.97%           
=======================================
  Files          87       87           
  Lines       16739    16739           
=======================================
  Hits        16567    16567           
  Misses        172      172           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@ben-schwen
Copy link
Member Author

Strange that our rchk action has totally different results than shown on CRAN 😅

I just noticed that too :/

@MichaelChirico
Copy link
Member

I do see the docker image is using a rather old version of R, maybe there's a change. CRAN's version is very recent:

Package built using 89227/R 4.6.0; x86_64-pc-linux-gnu; 2025-12-26 07:45:04 UTC; unix  

@github-actions
Copy link

github-actions bot commented Dec 26, 2025

No obvious timing issues in HEAD=subset_rchk
Comparison Plot

Generated via commit 18b3147

Download link for the artifact containing the test results: ↓ atime-results.zip

Task Duration
R setup and installing dependencies 2 minutes and 51 seconds
Installing different package versions 45 seconds
Running and plotting the test cases 4 minutes and 21 seconds

@MichaelChirico
Copy link
Member

Requested a new rchk image be pushed: kalibera/rchk#40

@MichaelChirico
Copy link
Member

CRAN also shows one in _selfrefok, is that excluded intentionally?

Function _selfrefok
  [UP] unprotected variable v while calling allocating function Rf_getAttrib(?,S:names) data.table/src/assign.c:73

@ben-schwen
Copy link
Member Author

CRAN also shows one in _selfrefok, is that excluded intentionally?

Function _selfrefok
  [UP] unprotected variable v while calling allocating function Rf_getAttrib(?,S:names) data.table/src/assign.c:73

Yes, I wanted to dig deeper if we really need the PROTECT in _selfrefok since we use it extensively now

@ben-schwen ben-schwen merged commit e26cfb3 into master Dec 26, 2025
12 checks passed
@MichaelChirico MichaelChirico deleted the subset_rchk branch December 26, 2025 18:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants