diff --git a/.ci/atime/tests.R b/.ci/atime/tests.R index 30fbd45903..f8b7dc7445 100644 --- a/.ci/atime/tests.R +++ b/.ci/atime/tests.R @@ -98,74 +98,6 @@ test.list <- atime::atime_test_list( paste0('useDynLib(', new.Package_)) }, - # Performance regression discussed in https://github.com/Rdatatable/data.table/issues/4311 - # Test case adapted from https://github.com/Rdatatable/data.table/pull/4440#issuecomment-632842980 which is the fix PR. - "shallow regression fixed in #4440" = atime::atime_test( - setup = { - set.seed(1L) - dt <- data.table(a = sample.int(N)) - setindexv(dt, "a") - }, - expr = data.table:::shallow(dt), - # Before = "", This needs to be updated later as there are two issues here: A) The source of regression (or the particular commit that led to it) is not clear; B) Older versions of data.table are having problems when being installed in this manner (This includes commits from before March 20 2020, when the issue that discovered or first mentioned the regression was created) - Regression = "b1b1832b0d2d4032b46477d9fe6efb15006664f4", # Parent of the first commit (https://github.com/Rdatatable/data.table/commit/0f0e7127b880df8459b0ed064dc841acd22f5b73) in the PR (https://github.com/Rdatatable/data.table/pull/4440/commits) that fixes the regression - Fixed = "9d3b9202fddb980345025a4f6ac451ed26a423be"), # Merge commit in the PR that fixed the regression (https://github.com/Rdatatable/data.table/pull/4440) - - # Test based on https://github.com/Rdatatable/data.table/issues/5424 - # Performance regression introduced from a commit in https://github.com/Rdatatable/data.table/pull/4491 - # Test case adapted from https://github.com/Rdatatable/data.table/pull/5463#issue-1373642456 which is the fix PR. - "memrecycle regression fixed in #5463" = atime::atime_test( - setup = { - bigN <- N*100 - set.seed(2L) - dt <- data.table( - g = sample(seq_len(N), bigN, TRUE), - x = runif(bigN), - key = "g") - dt_mod <- copy(dt) - }, - expr = data.table:::`[.data.table`(dt_mod, , N := .N, by = g), - Before = "be2f72e6f5c90622fe72e1c315ca05769a9dc854", # Parent of the regression causing commit (https://github.com/Rdatatable/data.table/commit/e793f53466d99f86e70fc2611b708ae8c601a451) in the PR (https://github.com/Rdatatable/data.table/pull/4491/commits) that introduced the issue - Regression = "e793f53466d99f86e70fc2611b708ae8c601a451", # Commit responsible for regression in the PR (https://github.com/Rdatatable/data.table/pull/4491/commits) that introduced the issue - Fixed = "58409197426ced4714af842650b0cc3b9e2cb842"), # Last commit in the PR (https://github.com/Rdatatable/data.table/pull/5463/commits) that fixed the regression - - # Test case adapted from https://github.com/Rdatatable/data.table/issues/4200#issuecomment-645980224 which is where the issue was reported. - # Fixed in https://github.com/Rdatatable/data.table/pull/4558 - "DT[by] fixed in #4558" = atime::atime_test( - setup = { - d <- data.table( - id = sample(c(seq.int(N * 0.9), sample(N * 0.9, N * 0.1, TRUE))), - v1 = sample(5L, N, TRUE), - v2 = sample(5L, N, TRUE) - ) - }, - expr = data.table:::`[.data.table`(d, , max(v1) - min(v2), by = id), - Before = "7a9eaf62ede487625200981018d8692be8c6f134", # Parent of the first commit (https://github.com/Rdatatable/data.table/commit/515de90a6068911a148e54343a3503043b8bb87c) in the PR (https://github.com/Rdatatable/data.table/pull/4164/commits) that introduced the regression - Regression = "c152ced0e5799acee1589910c69c1a2c6586b95d", # Parent of the first commit (https://github.com/Rdatatable/data.table/commit/15f0598b9828d3af2eb8ddc9b38e0356f42afe4f) in the PR (https://github.com/Rdatatable/data.table/pull/4558/commits) that fixes the regression - Fixed = "f750448a2efcd258b3aba57136ee6a95ce56b302"), # Second commit of the PR (https://github.com/Rdatatable/data.table/pull/4558/commits) that fixes the regression - - # Test case adapted from https://github.com/Rdatatable/data.table/issues/6286#issue-2412141289 which is where the issue was reported. - # Fixed in https://github.com/Rdatatable/data.table/pull/6296 - "DT[by,verbose=TRUE] improved in #6296" = atime::atime_test( - setup = { - dt = data.table(a = 1:N) - dt_mod <- copy(dt) - }, - expr = data.table:::`[.data.table`(dt_mod, , 1, by = a, verbose = TRUE), - Slow = "a01f00f7438daf4612280d6886e6929fa8c8f76e", # Parent of the first commit (https://github.com/Rdatatable/data.table/commit/fc0c1e76408c34a8482f16f7421d262c7f1bde32) in the PR (https://github.com/Rdatatable/data.table/pull/6296/commits) that fixes the issue - Fast = "f248bbe6d1204dfc8def62328788eaadcc8e17a1"), # Merge commit of the PR (https://github.com/Rdatatable/data.table/pull/6296) that fixes the issue - - # Test case adapted from https://github.com/Rdatatable/data.table/issues/5492#issue-1416598382 which is where the issue was reported, - # and from https://github.com/Rdatatable/data.table/pull/5493#issue-1416656788 which is the fix PR. - "transform improved in #5493" = atime::atime_test( - setup = { - df <- data.frame(x = runif(N)) - dt <- as.data.table(df) - }, - expr = data.table:::transform.data.table(dt, y = round(x)), - Slow = "0895fa247afcf6b38044bd5f56c0d209691ddb31", # Parent of the first commit (https://github.com/Rdatatable/data.table/commit/93ce3ce1373bf733ebd2036e2883d2ffe377ab58) in the PR (https://github.com/Rdatatable/data.table/pull/5493/commits) that fixes the issue - Fast = "2d1a0575f87cc50e90f64825c30d7a6cb6b05dd7"), # Merge commit of the PR (https://github.com/Rdatatable/data.table/pull/5493) that fixes the issue - # Test case created directly using the atime code below (not adapted from any other benchmark), based on the issue/fix PR https://github.com/Rdatatable/data.table/pull/5054#issue-930603663 "melt should be more efficient when there are missing input columns." "melt improved in #5054" = atime::atime_test( setup = {