[Rd] 1.8.0 on Unix: interrupting huge print()s ??

Martin Maechler maechler at stat.math.ethz.ch
Fri Oct 10 12:26:27 MEST 2003


NEWS for R 1.8.0 has

>>  USER-VISIBLE CHANGES
>> 
>>      <......>
>> 
>>      o	On Unix-like systems interrupt signals now set a flag that is
>> 	 checked periodically rather than calling longjmp from the
>> 	 signal handler.	 This is analogous to the behavior on Windows.
>> 	 This reduces responsiveness to interrupts but prevents bugs
>> 	 caused by interrupting computations in a way that leaves the
>> 	 system in an inconsistent state.  It also reduces the number
>> 	 of system calls, which can speed up computations on some
>> 	 platforms and make R more usable with systems like Mosix.

and this has already caused grief here
(actually it has several days ago, when I switched our users to
 R-1.8.0beta  __ BUT THEY DIDN'T TELL ANY R DEVELOPER __ )

for a user who does use *large* matrices.

When accidentally calling print() {implicitly}, we have been
used here to press CTRL+c (twice in Emacs ESS!) for stopping the
output.

This no longer works in R 1.8.0 at least on our unix platforms.
To reproduce, type

  cbind(1:1e6)

and try to cut it short (it only takes a minute or so,
whereas our user here had a matrix that needed more than 10
minutes of screen output !)



More information about the R-devel mailing list