On failure streaming does not store stderr to specified error log file
----------------------------------------------------------------------

                 Key: PIG-412
                 URL: https://issues.apache.org/jira/browse/PIG-412
             Project: Pig
          Issue Type: Bug
    Affects Versions: types_branch
            Reporter: Pradeep Kamath
             Fix For: types_branch


script:
{code}
define CMD `perl DieRandomly.pl 10000 2` 
ship('/home/pradeep/pigtest/DieRandomly.pl') stderr('CMD' limit 1);
A = load '/user/pig/tests/data/singlefile/studenttab10k';
B = stream A through CMD;
store B into '/user/pig/tests/results/pradeepk.1220400366/StreamingErrors_4.out'
{code}

DieRandomly.pl code:
{code}
#!/usr/bin/perl
use strict;
use warnings;


if(scalar(@ARGV) != 2) {
    die "Usage: $0 <number of lines in input> <exit code>";
}

my $numInputLines = shift;
my $exitCode = shift;

my $terminateAt = int(rand($numInputLines));
my $i = 0;
while(<STDIN>) {
   $i++;
   if($i == $terminateAt) {
       exit($exitCode); 
   }
}

{code}

The above pig script fails correctly due to the non zero exit code from the 
streaming script. However it does not result in the stderr messages going to 
CMD directory under _logs of the output directory. The stderr messages include 
the standard header and footer messages which are emitted for all streaming 
tasks

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to