-
Notifications
You must be signed in to change notification settings - Fork 39
Fix test failures on Windows and Mac #117
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Perhaps the issue is not Windows/Mac specific but rather a bug or incompatibility with recent versions of |
Ran a debug build on Travis. The brewed
This causes an error with Skipping the test if detecting this condition in 7af3a2f. |
Travis is green now. |
OK great. Any luck with debugging Windows? I'd like to know if there is a problem with my driver builds or if this is just a bug elsewhere. |
Couldn't replicate on Windows. As a last resort I could rdp into the worker, before doing that I'll double-check rtools version and compiler switches. |
Saw a failure with the dev version of DBI and DBItest. Will investigate. |
Steps to replicate on 32-bit Windows: devtools::load_all()
DBItest::test_some("append_roundtrip_timestamp") |
Dates with values of 2³¹ or larger are a problem: library(DBI)
devtools::load_all()
local <- as.POSIXct(2^31, origin = "1970-01-01")
attr(local, "tzone") <- NULL
tbl_in <- data.frame(id = seq_along(local))
tbl_in$local <- local
con <- dbConnect(RMariaDB::MariaDB(), dbname = "test")
name <- "test"
dbRemoveTable(con, name, force = FALSE)
dbCreateTable(con, name, tbl_in)
dbAppendTable(con, name, tbl_in) |
I think this is a case of the Year_2038_problem. A timestamp in R should be a double: > typeof(Sys.time())
[1] "double" This crash suggests you are using an The solution is to avoid |
Simplest reprex: library(DBI)
devtools::load_all()
init_logging("VERB")
con <- dbConnect(RMariaDB::MariaDB(), dbname = "test")
local <- as.POSIXct(2^31, origin = "1970-01-01")
dbGetQuery(con, "SELECT ? AS a", params = list(local)) The reason is that |
Simply avoiding the crash leads to test failures, unsurprisingly: https://ci.appveyor.com/project/r-dbi/rmariadb/builds/22218641#L797 |
We should pass |
r-dbi/RSQLite#333 uses Boost 1.75 for date/time functionality, maybe it's worth investigating. |
- Timestamp roundtrip no longer fails on Windows i386 (#117).
The tests on Windows i386 no longer fail, maybe the new Connector/C? 🤷♂️ |
This old thread has been automatically locked. If you think you have found something related to this, please open a new issue and link to this old issue if necessary. |
Uh oh!
There was an error while loading. Please reload this page.
#95 (comment) and following.
The text was updated successfully, but these errors were encountered: