[ https://issues.apache.org/jira/browse/PIG-5362?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16701104#comment-16701104 ]
Koji Noguchi commented on PIG-5362: ----------------------------------- bq. There are test failures in TestParamSubPreproc. I have attached test log. 9 failures total {noformat} TestParamSubPreproc.testCmdlineFileDeclareCombo TestParamSubPreproc.testSameParamInMultipleFiles TestParamSubPreproc.testCmdlineFileComboDuplicate TestParamSubPreproc.testCmdlineFileCombo TestParamSubPreproc.testMultipleParamsinSingleLine TestParamSubPreproc.testCmdlineFileDeclareDefaultComboDuplicates TestParamSubPreproc.testFileParamsFromMultipleFiles TestParamSubPreproc.testMultipleDeclareScope TestParamSubPreproc.testCmdlineFileDeclareComboDuplicates {noformat} [~rohini], do we want to revert this? Or create a new jira? > Parameter substitution of shell cmd results doesn't handle backslash > --------------------------------------------------------------------- > > Key: PIG-5362 > URL: https://issues.apache.org/jira/browse/PIG-5362 > Project: Pig > Issue Type: Bug > Components: parser > Reporter: Will Lauer > Assignee: Will Lauer > Priority: Minor > Fix For: 0.18.0 > > Attachments: pig.patch, pig2.patch, pig3.patch, test-failure.txt > > > It looks like there is a bug in how parameter substitution is handled in > PreprocessorContext.java that causes parameter values that contain > backslashed to not be processed correctly, resulting in the backslashes being > lost. For example, if you had the following: > {code:java} > %DECLARE A `echo \$foo\\bar` > B = LOAD $A > {code} > You would expect the echo command to produce the output {{$foo\bar}} but the > actual value that gets substituted is {{\$foobar}}. This is happening because > the {{substitute}} method in PreprocessorContext.java uses a regular > expression replacement instead of a basic string substitution and $ and \ are > special characters. The code attempts to escape $, but does not escape > backslash. -- This message was sent by Atlassian JIRA (v7.6.3#76005)