Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
The mapreduce jobs which are run by streaming and demo oozie examples fails with following error:
Caused by: java.io.IOException: Cannot run program "/bin/cat": CreateProcess error=2, The system cannot find the file specified
Both have <streaming><mapper>/bin/cat</mapper><reducer>/usr/bin/wc</reducer></streaming> parameters in their workflow.xml. To fix this issue it's needed to have another mapper and reducer programms for Windows. As appropriate analogs on Windows can be "powershell -command "$input | Write-Host"" for mapper and "powershell -command "$input | Measure-Object -Word -Line -Character"" so it's not needed to rewrite any supporting Java code for this examples.
That's why separated job.properties for Windows and Linux versions were created. Both contains additional parameters "streamingMapper" and "streamingReducer" whose values are commands for OS-specific mapper and reducer.