Skip to content
Back to formatted view

Raw Message

Message-ID: <16262.35155.835148.704877@gargle.gargle.HOWL>
Date: 2003-10-10T12:25:32Z
From: Martin Maechler
Subject: 1.8.0 on Unix: interrupting huge print()s  ??

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 !)