You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pig.apache.org by "John Gordon (JIRA)" <ji...@apache.org> on 2012/07/07 02:47:34 UTC

[jira] [Created] (PIG-2801) grunt "sh" command should invoke the shell implicitly instead of calling exec directly with the command tokens

John Gordon created PIG-2801:
--------------------------------

             Summary: grunt "sh" command should invoke the shell implicitly instead of calling exec directly with the command tokens
                 Key: PIG-2801
                 URL: https://issues.apache.org/jira/browse/PIG-2801
             Project: Pig
          Issue Type: Sub-task
            Reporter: John Gordon


The "sh" command in grunt is very sensitive to the behavior of exec.  It requires that you provide an executable filename as the first argument, and those are sort of up for interpretation from platform to platform.  For this to easily handle batch scripts, built-in commands, and executables with one semantic, it should spin up an intermediate command-shell.  This would translate "sh <command>" into "exec("sh" ["-c", <command>])".  This helps to smooth out some of the operating system differences between Windows and Linux, and also improves usability of grunt as a whole.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (PIG-2801) grunt "sh" command should invoke the shell implicitly instead of calling exec directly with the command tokens

Posted by "John Gordon (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/PIG-2801?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

John Gordon updated PIG-2801:
-----------------------------

    Attachment: 0003-Grunt-Streaming-script-executor-changes.patch

Patch containing fixes to implicitly spawn streaming operations within the OS default shell to handle scripts more uniformly across processes.
                
> grunt "sh" command should invoke the shell implicitly instead of calling exec directly with the command tokens
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: PIG-2801
>                 URL: https://issues.apache.org/jira/browse/PIG-2801
>             Project: Pig
>          Issue Type: Sub-task
>            Reporter: John Gordon
>         Attachments: 0003-Grunt-Streaming-script-executor-changes.patch, 0008-Updating-test-execution-invocation-model.patch
>
>
> The "sh" command in grunt is very sensitive to the behavior of exec.  It requires that you provide an executable filename as the first argument, and those are sort of up for interpretation from platform to platform.  For this to easily handle batch scripts, built-in commands, and executables with one semantic, it should spin up an intermediate command-shell.  This would translate "sh <command>" into "exec("sh" ["-c", <command>])".  This helps to smooth out some of the operating system differences between Windows and Linux, and also improves usability of grunt as a whole.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (PIG-2801) grunt "sh" command should invoke the shell implicitly instead of calling exec directly with the command tokens

Posted by "John Gordon (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/PIG-2801?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

John Gordon updated PIG-2801:
-----------------------------

    Attachment: PIG-2801.trunk.0002.patch
                PIG-2801.trunk.0001.patch

Resubmitting patches reformatted to be easier to apply with the patch command.
                
> grunt "sh" command should invoke the shell implicitly instead of calling exec directly with the command tokens
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: PIG-2801
>                 URL: https://issues.apache.org/jira/browse/PIG-2801
>             Project: Pig
>          Issue Type: Sub-task
>    Affects Versions: 0.10.0
>            Reporter: John Gordon
>            Assignee: John Gordon
>             Fix For: 0.11
>
>         Attachments: 0003-Grunt-Streaming-script-executor-changes.patch, 0008-Updating-test-execution-invocation-model.patch, PIG-2801.trunk.0001.patch, PIG-2801.trunk.0002.patch
>
>
> The "sh" command in grunt is very sensitive to the behavior of exec.  It requires that you provide an executable filename as the first argument, and those are sort of up for interpretation from platform to platform.  For this to easily handle batch scripts, built-in commands, and executables with one semantic, it should spin up an intermediate command-shell.  This would translate "sh <command>" into "exec("sh" ["-c", <command>])".  This helps to smooth out some of the operating system differences between Windows and Linux, and also improves usability of grunt as a whole.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (PIG-2801) grunt "sh" command should invoke the shell implicitly instead of calling exec directly with the command tokens

Posted by "Daniel Dai (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/PIG-2801?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Daniel Dai updated PIG-2801:
----------------------------

    Fix Version/s:     (was: 0.10.0)
                   0.11
         Assignee: John Gordon
    
> grunt "sh" command should invoke the shell implicitly instead of calling exec directly with the command tokens
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: PIG-2801
>                 URL: https://issues.apache.org/jira/browse/PIG-2801
>             Project: Pig
>          Issue Type: Sub-task
>    Affects Versions: 0.10.0
>            Reporter: John Gordon
>            Assignee: John Gordon
>             Fix For: 0.11
>
>         Attachments: 0003-Grunt-Streaming-script-executor-changes.patch, 0008-Updating-test-execution-invocation-model.patch
>
>
> The "sh" command in grunt is very sensitive to the behavior of exec.  It requires that you provide an executable filename as the first argument, and those are sort of up for interpretation from platform to platform.  For this to easily handle batch scripts, built-in commands, and executables with one semantic, it should spin up an intermediate command-shell.  This would translate "sh <command>" into "exec("sh" ["-c", <command>])".  This helps to smooth out some of the operating system differences between Windows and Linux, and also improves usability of grunt as a whole.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (PIG-2801) grunt "sh" command should invoke the shell implicitly instead of calling exec directly with the command tokens

Posted by "Daniel Dai (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/PIG-2801?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Daniel Dai updated PIG-2801:
----------------------------

       Resolution: Fixed
    Fix Version/s: 0.12
                   0.10.1
     Hadoop Flags: Reviewed
           Status: Resolved  (was: Patch Available)

+1 for PIG-2801.trunk.0001.patch. PIG-2801.trunk.0002.patch is already committed as part of PIG-2798.

PIG-2801.trunk.0001.patch committed to 0.10/0.11/trunk.

Thanks John!
                
> grunt "sh" command should invoke the shell implicitly instead of calling exec directly with the command tokens
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: PIG-2801
>                 URL: https://issues.apache.org/jira/browse/PIG-2801
>             Project: Pig
>          Issue Type: Sub-task
>    Affects Versions: 0.10.0
>            Reporter: John Gordon
>            Assignee: John Gordon
>             Fix For: 0.11, 0.10.1, 0.12
>
>         Attachments: 0003-Grunt-Streaming-script-executor-changes.patch, 0008-Updating-test-execution-invocation-model.patch, PIG-2801.trunk.0001.patch, PIG-2801.trunk.0002.patch
>
>
> The "sh" command in grunt is very sensitive to the behavior of exec.  It requires that you provide an executable filename as the first argument, and those are sort of up for interpretation from platform to platform.  For this to easily handle batch scripts, built-in commands, and executables with one semantic, it should spin up an intermediate command-shell.  This would translate "sh <command>" into "exec("sh" ["-c", <command>])".  This helps to smooth out some of the operating system differences between Windows and Linux, and also improves usability of grunt as a whole.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (PIG-2801) grunt "sh" command should invoke the shell implicitly instead of calling exec directly with the command tokens

Posted by "John Gordon (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/PIG-2801?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

John Gordon updated PIG-2801:
-----------------------------

    Attachment: 0008-Updating-test-execution-invocation-model.patch

Test invocation updates for cross-platform applicability (assuming Grunt/Streaming changes) -- work on both Windows and Linux.
                
> grunt "sh" command should invoke the shell implicitly instead of calling exec directly with the command tokens
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: PIG-2801
>                 URL: https://issues.apache.org/jira/browse/PIG-2801
>             Project: Pig
>          Issue Type: Sub-task
>            Reporter: John Gordon
>         Attachments: 0003-Grunt-Streaming-script-executor-changes.patch, 0008-Updating-test-execution-invocation-model.patch
>
>
> The "sh" command in grunt is very sensitive to the behavior of exec.  It requires that you provide an executable filename as the first argument, and those are sort of up for interpretation from platform to platform.  For this to easily handle batch scripts, built-in commands, and executables with one semantic, it should spin up an intermediate command-shell.  This would translate "sh <command>" into "exec("sh" ["-c", <command>])".  This helps to smooth out some of the operating system differences between Windows and Linux, and also improves usability of grunt as a whole.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (PIG-2801) grunt "sh" command should invoke the shell implicitly instead of calling exec directly with the command tokens

Posted by "John Gordon (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/PIG-2801?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

John Gordon updated PIG-2801:
-----------------------------

        Fix Version/s: 0.10.0
    Affects Version/s: 0.10.0
               Status: Patch Available  (was: Open)
    
> grunt "sh" command should invoke the shell implicitly instead of calling exec directly with the command tokens
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: PIG-2801
>                 URL: https://issues.apache.org/jira/browse/PIG-2801
>             Project: Pig
>          Issue Type: Sub-task
>    Affects Versions: 0.10.0
>            Reporter: John Gordon
>             Fix For: 0.10.0
>
>         Attachments: 0003-Grunt-Streaming-script-executor-changes.patch, 0008-Updating-test-execution-invocation-model.patch
>
>
> The "sh" command in grunt is very sensitive to the behavior of exec.  It requires that you provide an executable filename as the first argument, and those are sort of up for interpretation from platform to platform.  For this to easily handle batch scripts, built-in commands, and executables with one semantic, it should spin up an intermediate command-shell.  This would translate "sh <command>" into "exec("sh" ["-c", <command>])".  This helps to smooth out some of the operating system differences between Windows and Linux, and also improves usability of grunt as a whole.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira