Parameter to UDF which is an alias returned in another UDF in nested foreach causes incorrect results -----------------------------------------------------------------------------------------------------
Key: PIG-693 URL: https://issues.apache.org/jira/browse/PIG-693 Project: Pig Issue Type: Bug Components: impl Affects Versions: types_branch Reporter: Viraj Bhat Fix For: types_branch Consider the following Pig Script {code} register myudf.jar; A = load 'one.txt' using PigStorage() as ( one: int ); --use this dummy file to start execution B = foreach A { dec = myudf.URLDECODE('hello'); str1 = myudf.REPLACEALL(dec, '[\\u0000-\\u0020]', ' '); -- ERROR str2 = myudf.REPLACEALL('hello', '[\\u0000-\\u0020]', ' '); generate dec, str1, str2; }; describe B; dump B; {code} where one.txt is a file which contains number one (1) for starting execution of the Pig script!! {code} describe B; {code} returns the following: B: {urldecode_9: chararray,replaceall_urldecode_10_11: chararray,replaceall_12: chararray} {code} dump B; {code} returns (hello,[\u0000-\u0020],hello) The result should be: There is a workaround for the same, {code} register myudf.jar; A = load 'one.txt' using PigStorage() as ( one: int ); B = foreach A { dec = myudf.URLDECODE('hello'); generate dec as dec, myudf.REPLACEALL(dec, '[\\u0000-\\u0020]', ' ') as str1, myudf.REPLACEALL('hello', '[\\u0000-\\u0020]', ' ') as str2; }; describe B; dump B; {code} where {code} dump B; {code} returns (hello,hello,hello) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.