Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
When I ran the following Pig script on the command line (pig -c cluster -latest p_11), Pig returns immediately without doing any processing. When I entered the script line by line into GRUNT, after I entered the second line, I had to type one extra ";" in addition to the original one in order for Pig to accept the line. In the end, Pig gave me the correct results.
Here is the script, p_11:
A = load '/user/pig/tests/data/singlefile/studenttab10k'; B = stream A through `python ./python/MySimpleStreamApp.py --upper` as (name, age, gpa); store B into 'results_11';
Here is the python streaming script, MySimpleStreamApp.py:
#!/usr/bin/python import sys import optparse def main(): p = optparse.OptionParser() p.add_option('--upper', '-u', action="store_true") options, arguments = p.parse_args() line = sys.stdin.readline() while line: if options.upper == True: line = line.upper() sys.stdout.write(line) line = sys.stdin.readline() if __name__ == '__main__': main()