You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Guozhang Wang (JIRA)" <ji...@apache.org> on 2014/03/03 20:14:24 UTC

[jira] [Commented] (KAFKA-1230) shell script files under bin don't work with cygwin (bash on windows)

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

Guozhang Wang commented on KAFKA-1230:
--------------------------------------

Hi Alok, could you try to rebase on trunk? The current patch failed to apply:

---------------------------

patch -p1 < 0001-Added-changes-so-that-bin-.sh-files-can-work-with-CY.patch 
patching file bin/kafka-run-class.sh
Hunk #2 succeeded at 43 with fuzz 1 (offset 3 lines).
Hunk #3 FAILED at 51.
1 out of 3 hunks FAILED -- saving rejects to file bin/kafka-run-class.sh.rej
[guwang@guwang-ld2 kafka]$ git diff
diff --git a/bin/kafka-run-class.sh b/bin/kafka-run-class.sh
index d2fc8c0..a8ddd55 100755
--- a/bin/kafka-run-class.sh
+++ b/bin/kafka-run-class.sh
@@ -20,6 +20,18 @@ then
   exit 1
 fi
 
+
+# running with cygwin bash under unix
+if [[ $(uname -s) = CYGWIN* ]]; then
+       $CYGWIN=1
+fi
+
+if [ -z "$CYGWIN" ]; then
+  PATH_SEPERATOR=":"
+else  
+  PATH_SEPERATOR=";"
+fi
+
 base_dir=$(dirname $0)/..
 
 # create logs directory
@@ -31,6 +43,10 @@ if [ ! -d "$LOG_DIR" ]; then
     mkdir -p "$LOG_DIR"
 fi
 
+if [ -n "$CYGWIN" ]; then
+  LOG_DIR=`cygpath -m $LOG_DIR`
+fi     
+
 if [ -z "$SCALA_VERSION" ]; then
        SCALA_VERSION=2.8.0
 fi


> shell script files under bin don't work with cygwin (bash on windows)
> ---------------------------------------------------------------------
>
>                 Key: KAFKA-1230
>                 URL: https://issues.apache.org/jira/browse/KAFKA-1230
>             Project: Kafka
>          Issue Type: Bug
>          Components: tools
>    Affects Versions: 0.8.0
>         Environment: The change have been tested under GNU bash, version 4.1.11(2)-release (x86_64-unknown-cygwin) running on Windows 7 Enterprise.
>            Reporter: Alok Lal
>             Fix For: 0.8.2
>
>         Attachments: 0001-Added-changes-so-that-bin-.sh-files-can-work-with-CY.patch
>
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> h3. Introduction
> This bug is being created for a pull request that I had submitted earlier for these.  Per Jun this is so changes confirm to Apache license.
> h3. Background
> The script files to run Kafka under Windows don't work as is. One needs to hand tweak them since their location is not bin but bin/windows. Further, the script files under bin/windows are not a complete replica of those under bin. To be sure, this isn't a complaint. To the contrary most projects now-a-days don't bother to support running on Windows or do so very late. Just that because of these limitation it might be more prudent to make the script files under bin itself run under windows rather than trying to make the files under bin/windows work or to make them complete.
> h3. Change Summary
> Most common unix-like shell on windows is the bash shell which is a part of the cygwin project. Out of the box the scripts don't work mostly due to peculiarities of the directory paths and class path separators. This change set makes a focused change to a single file under bin so that all of the script files under bin would work as is on windows platform when using bash shell of Cygwin distribution.
> h3. Motivation
> Acceptance of this change would enable a vast body of developers that use (or have to use) Windows as their development/testing/production platform to use Kafka's with ease. More importantly by making the running of examples smoothly on Windoes+Cygwin-bash it would make the process of evaluation of Kafka simpler and smoother and potentially make for a favorable evaluation. For, it would show commitment of the Kafka team to espouse deployments on Windows (albeit only under cygwin). Further, as the number of people whom use Kafka on Windows increases, one would attract people who can eventually fix the script files under bin/Windows itself so that need to run under Cygwin would also go away, too.



--
This message was sent by Atlassian JIRA
(v6.2#6252)