[Rd] library(tcltk) v. SIGPIPE BUG (?!?)

Gabor Grothendieck ggrothendieck at gmail.com
Tue Dec 11 21:39:41 CET 2012


On Tue, Dec 11, 2012 at 3:14 PM, Cook, Malcolm <MEC at stowers.org> wrote:
> Hi R-devel, tcltk devel, and sqldf devel,
>
> The transcript below shows how loading the tcl/tk library in under R causes subprocesses to ignore SIGPIPE.
>
> I am including the developer of the (wonderful) sqldf package since it requires tcltk and you might like to make this dependence optional to the user (at least until this is fixed in tcltk).
>
> Am I mistaken in calling this a 'bug'?
>
> Any insights appreciated!
>
> Thanks,
>
> Malcolm Cook
> Computational Biology - Stowers Institute for Medical Research
>
>
>> system(intern=TRUE,'yes | head ')
>  [1] "y" "y" "y" "y" "y" "y" "y" "y" "y" "y"
>> library(tcltk)
> Loading Tcl/Tk interface ... done
>> system(intern=TRUE,'yes | head ')
>
> ### this now does not return to the prompt and Looking at 'top' shows that 'yes' is running until I hit ctrl-c, after which it returns.
> C-c C-c
>   [1] "y" "y" "y" "y" "y" "y" "y" "y" "y" "y"
>
>
>> sessionInfo()
> R version 2.15.1 (2012-06-22)
> Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit)
>
> locale:
> [1] C
>
> attached base packages:
> [1] tcltk     stats     graphics  grDevices utils     datasets  methods   base
>>
>
>

As a workaround specify the "R" engine instead of the "tcl" engine in
wihch case gsubfn (which is called by sqldf) won't try to use the
tcltk package:

options(gsubfn.engine = "R")
library(sqldf)



--
Statistics & Software Consulting
GKX Group, GKX Associates Inc.
tel: 1-877-GKX-GROUP
email: ggrothendieck at gmail.com



More information about the R-devel mailing list