Open p6rt opened 8 years ago
Following script throws error ( "Aborted (core dumped)" ) when $id == 1007. This is because $p.err is really never closed. however, what I find intriguing is if I remove "my $output = $p.err.slurp-rest;" line it works fine. None the less, error message should be improved.
use v6;
my $id = 0; recursion();
sub recursion() { say ++$id;
my $p = run('false', :out, :err ); my $output = $p.err.slurp-rest;
try { $p.out.close; $p.err.close; CATCH { default {} } }
if ($id \< 1010) { recursion(); } }
$ perl6 --version This is Rakudo version 2015.11-708-g76c447b built on MoarVM version 2015.11-113-gbd56e2e implementing Perl 6.b.
On Wed, 23 Dec 2015 03:05:41 -0800, vytdau@gmail.com wrote:
Following script throws error ( "Aborted (core dumped)" ) when $id == 1007. This is because $p.err is really never closed. however, what I find intriguing is if I remove "my $output = $p.err.slurp-rest;" line it works fine. None the less, error message should be improved.
use v6;
my $id = 0; recursion();
sub recursion() { say ++$id;
my $p = run\('false', :out, :err \); my $output = $p\.err\.slurp\-rest; try \{ $p\.out\.close; $p\.err\.close; CATCH \{ default \{\} \} \} if \($id \< 1010\) \{ recursion\(\); \}
}
$ perl6 --version This is Rakudo version 2015.11-708-g76c447b built on MoarVM version 2015.11-113-gbd56e2e implementing Perl 6.b.
To note: the crash is due to exhausting open file descriptors. Sticking this at the start of the script makes it crash when $id is 807
my @fhs = ^200 .map: *.IO.open: :w;
The RT System itself - Status changed from 'new' to 'open'
Migrated from rt.perl.org#126998 (status was 'open')
Searchable as RT126998$