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
[R] read_feather hanging on Windows #27449
Comments
Claymore Marshall: |
Ian Cook / @ianmcook: I also experimented with two things:
|
Ian Cook / @ianmcook: You can get the hanging to stop by using |
Claymore Marshall: |
Claymore Marshall: |
Neal Richardson / @nealrichardson: There are some longstanding issues with multithreading on Windows that we unfortunately haven't been able to pin down. See also ARROW-8379. |
Andrew C Thomas:
|
Neal Richardson / @nealrichardson: |
On windows 10, reading large feather objects in R seems to lead to hanging on a repeat read.
This issue has been reproduced on 3 different windows machines. All running win 10, R 4.0.0 (or later).
read_feather does not hang if using version = 1, or using uncompressed with version 2.
This issue does not happen on tests on linux (Ubuntu 20.04 atleast)
Example:
library(arrow)
m <- data.frame(x = rnorm(7e6), y = rnorm(5), b = rnorm(5), n = rnorm(5), c = c("a", "n"))
write_feather(m, "test.feather4", version = 2, compression = "lz4") # does not hang with uncompressed, but does with lz4 and zstd
for (j in 1:50){
y <- read_feather("test.feather4") # hangs after an unpredictable number of reads, just on windows though
print(paste0("feather read ", j, "..."))
}
Interestingly, a work around is to use read_feather but call just one column at a time. This does not hang so far.
e.g. y returns the full data frame, and this doesn't hang on repeated reads:
y <- lapply(cols, function(col) {
read_feather("test.feather4", col_select = all_of(col))
})
Environment: windows 10, R 4.0.0, arrow 3.0.0
Reporter: Claymore Marshall
Assignee: Neal Richardson / @nealrichardson
Related issues:
Note: This issue was originally created as ARROW-11579. Please see the migration documentation for further details.
The text was updated successfully, but these errors were encountered: