[ 
https://issues.apache.org/jira/browse/SQOOP-339?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13106937#comment-13106937
 ] 

[email protected] commented on SQOOP-339:
-----------------------------------------------------



bq.  On 2011-09-16 23:17:01, Arvind Prabhakar wrote:
bq.  > src/java/com/cloudera/sqoop/io/NamedFifo.java, line 74
bq.  > <https://reviews.apache.org/r/1938/diff/2/?file=41551#file41551line74>
bq.  >
bq.  >     Thanks for making this change. Considering that there is at least 
one more system where this problem shows up, I suggest that we add an 
evnironment variable check, something like sqoop.use.mkfifo, which if set turns 
this behavior.
bq.  
bq.  Joey Echeverria wrote:
bq.      I don't like making things require a configuration if we don't need 
to. How about I just check to see what's in the path? If mknod is there, if not 
pick mkfifo. If neither is available, throw an error? Less work for the user, 
works everywhere. I can do the check once when the class is loaded and then 
just remember my choice.
bq.  
bq.  Joseph Boyd wrote:
bq.      mknod exists on mac os x, it just can't create a FIFO.
bq.      
bq.      I suggested in the JIRA that we try running mknod and then fall back 
to running mkfifo if the mknod call returns a non-zero exit code.

I saw that after I posted. I could switch the logic and search for mkfifo 
first. I assume that mkfifo can always make a fifo, right ;)


- Joey


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1938/#review1950
-----------------------------------------------------------


On 2011-09-16 22:14:55, Joey Echeverria wrote:
bq.  
bq.  -----------------------------------------------------------
bq.  This is an automatically generated e-mail. To reply, visit:
bq.  https://reviews.apache.org/r/1938/
bq.  -----------------------------------------------------------
bq.  
bq.  (Updated 2011-09-16 22:14:55)
bq.  
bq.  
bq.  Review request for Sqoop.
bq.  
bq.  
bq.  Summary
bq.  -------
bq.  
bq.  Replaced the use of mknod with mkfifo in NamedFifo to improve 
compatibility with Mac OS X.
bq.  
bq.  
bq.  This addresses bug SQOOP-339.
bq.      https://issues.apache.org/jira/browse/SQOOP-339
bq.  
bq.  
bq.  Diffs
bq.  -----
bq.  
bq.    src/java/com/cloudera/sqoop/io/NamedFifo.java 38656cb 
bq.  
bq.  Diff: https://reviews.apache.org/r/1938/diff
bq.  
bq.  
bq.  Testing
bq.  -------
bq.  
bq.  No new tests as the functionality is covered by an existing unit test. I 
ran the existing unit test and it worked. I don't have a Mac to test on right 
now, so it might be good to run the unit tests on one before commit.
bq.  
bq.  
bq.  Thanks,
bq.  
bq.  Joey
bq.  
bq.



> Use of non-portable mknod utility causes build problems on Mac OS X
> -------------------------------------------------------------------
>
>                 Key: SQOOP-339
>                 URL: https://issues.apache.org/jira/browse/SQOOP-339
>             Project: Sqoop
>          Issue Type: Bug
>    Affects Versions: 1.3.0, 1.4.0
>            Reporter: Joseph Boyd
>            Assignee: Joey Echeverria
>            Priority: Minor
>         Attachments: SQOOP-339-1.patch, SQOOP-339-2.patch
>
>
> Duplicating this issue from SQOOP-175, which is in the cloudera JIRA
> From SQOOP-175's description by Ken Krugler :
> On Mac OS X 10.6.3, the TestNamedFifo.testNamedFifo() test fails. The error 
> is caused by the Shell.execCommand() use of mknod, since (at least on my Mac) 
> mknod doesn't know about the --mode=xxx parameter or the -p parameters.
> Based on 
> http://stackoverflow.com/questions/4546356/is-mknod-portable-if-not-what-is-the-alternative,
>  I switched the code to use mkfifo and it now passes all tests.
> The change to NamedFifo.create() is trivial:
> Shell.execCommand("mkfifo", "-m", "0" + modeStr, filename);
> But I have no way of trying this out on other OSes, so it might create a 
> different compatibility issue.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to