[Rd] Error in close.connection(p) : ignoring SIGPIPE signal

Benjamin Tyner btyner @end|ng |rom gm@||@com
Fri Dec 6 02:46:50 CET 2019


Not sure if this is a bug, so posting here first. If I run:

    cnt <- 0L
    while (TRUE) {
        cnt <- cnt + 1L
        p <- pipe("echo /dev/stdin > /dev/null", open = "w")
        writeLines("foobar", p)
        tryCatch(close(p), error = function(e) { print(cnt); stop(e)})
    }

then once cnt gets to around 650, it fails with:

    [1] 654
    Error in close.connection(p) : ignoring SIGPIPE signal

Should I not be using pipe() in this way? Here is my sessionInfo()

    R version 3.6.0 (2019-04-26)
    Platform: x86_64-pc-linux-gnu (64-bit)
    Running under: Ubuntu 18.04.3 LTS

    Matrix products: default
    BLAS:   /home/btyner/R360/lib64/R/lib/libRblas.so
    LAPACK: /home/btyner/R360/lib64/R/lib/libRlapack.so

    locale:
     [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C
     [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8
     [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8
     [7] LC_PAPER=en_US.UTF-8       LC_NAME=C
     [9] LC_ADDRESS=C               LC_TELEPHONE=C
    [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C

    attached base packages:
    [1] stats     graphics  grDevices utils     datasets  methods base

    loaded via a namespace (and not attached):
    [1] compiler_3.6.0

Regards,
Ben



More information about the R-devel mailing list