You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Taras Puchko (JIRA)" <ji...@apache.org> on 2011/08/04 16:27:27 UTC
[jira] [Created] (CASSANDRA-2992) Cassandra don't start on Red Hat
Linux due to hardcoded JAVA_HOME
Cassandra don't start on Red Hat Linux due to hardcoded JAVA_HOME
-----------------------------------------------------------------
Key: CASSANDRA-2992
URL: https://issues.apache.org/jira/browse/CASSANDRA-2992
Project: Cassandra
Issue Type: Bug
Affects Versions: 0.8.3
Environment: CentOS release 5.6
Reporter: Taras Puchko
On CentOS /etc/init.d/cassandra has
bq. export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/
While there is no such a directory on our server it was ok for 0.8.2, because /usr/sbin/cassandra checked the executable
{quote}
if [ -x $JAVA_HOME/bin/java ]; then
JAVA=$JAVA_HOME/bin/java
else
JAVA=`which java`
fi
{quote}
But 0.8.3 builds replaced the above code with one that doesn't check if JAVA_HOME is set correctly.
{quote}
if [ -n "$JAVA_HOME" ]; then
JAVA="$JAVA_HOME/bin/java"
else
JAVA=java
fi
{quote}
That's why cassandra doesn't start anymore.
The correct fix would be to remove "export JAVA_HOME" from /etc/init.d/cassandra or set it only to correct path and only if it hasn't already been set.
It would also be nice to revert to "[ -x $JAVA_HOME/bin/java ]" in /usr/sbin/cassandra
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Assigned] (CASSANDRA-2992) Cassandra doesn't start on Red
Hat Linux due to hardcoded JAVA_HOME
Posted by "paul cannon (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-2992?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
paul cannon reassigned CASSANDRA-2992:
--------------------------------------
Assignee: paul cannon
> Cassandra doesn't start on Red Hat Linux due to hardcoded JAVA_HOME
> -------------------------------------------------------------------
>
> Key: CASSANDRA-2992
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2992
> Project: Cassandra
> Issue Type: Bug
> Affects Versions: 0.8.3
> Environment: CentOS release 5.6
> Reporter: Taras Puchko
> Assignee: paul cannon
>
> On CentOS /etc/init.d/cassandra has
> bq. export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/
> While there is no such a directory on our server it was ok for 0.8.2, because /usr/sbin/cassandra checked the executable
> {quote}
> if [ -x $JAVA_HOME/bin/java ]; then
> JAVA=$JAVA_HOME/bin/java
> else
> JAVA=`which java`
> fi
> {quote}
> But 0.8.3 builds replaced the above code with one that doesn't check if JAVA_HOME is set correctly.
> {quote}
> if [ -n "$JAVA_HOME" ]; then
> JAVA="$JAVA_HOME/bin/java"
> else
> JAVA=java
> fi
> {quote}
> That's why cassandra doesn't start anymore.
> The correct fix would be to remove "export JAVA_HOME" from /etc/init.d/cassandra or set it only to correct path and only if it hasn't already been set.
> It would also be nice to revert to "[ -x $JAVA_HOME/bin/java ]" in /usr/sbin/cassandra
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-2992) Cassandra doesn't start on Red
Hat Linux due to hardcoded JAVA_HOME
Posted by "Taras Puchko (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-2992?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Taras Puchko updated CASSANDRA-2992:
------------------------------------
Summary: Cassandra doesn't start on Red Hat Linux due to hardcoded JAVA_HOME (was: Cassandra don't start on Red Hat Linux due to hardcoded JAVA_HOME)
> Cassandra doesn't start on Red Hat Linux due to hardcoded JAVA_HOME
> -------------------------------------------------------------------
>
> Key: CASSANDRA-2992
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2992
> Project: Cassandra
> Issue Type: Bug
> Affects Versions: 0.8.3
> Environment: CentOS release 5.6
> Reporter: Taras Puchko
>
> On CentOS /etc/init.d/cassandra has
> bq. export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/
> While there is no such a directory on our server it was ok for 0.8.2, because /usr/sbin/cassandra checked the executable
> {quote}
> if [ -x $JAVA_HOME/bin/java ]; then
> JAVA=$JAVA_HOME/bin/java
> else
> JAVA=`which java`
> fi
> {quote}
> But 0.8.3 builds replaced the above code with one that doesn't check if JAVA_HOME is set correctly.
> {quote}
> if [ -n "$JAVA_HOME" ]; then
> JAVA="$JAVA_HOME/bin/java"
> else
> JAVA=java
> fi
> {quote}
> That's why cassandra doesn't start anymore.
> The correct fix would be to remove "export JAVA_HOME" from /etc/init.d/cassandra or set it only to correct path and only if it hasn't already been set.
> It would also be nice to revert to "[ -x $JAVA_HOME/bin/java ]" in /usr/sbin/cassandra
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-2992) Cassandra doesn't start on Red
Hat Linux due to hardcoded JAVA_HOME
Posted by "paul cannon (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-2992?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
paul cannon updated CASSANDRA-2992:
-----------------------------------
Attachment: 0001-don-t-hardcode-JAVA_HOME-in-redhat-initscript.patch.txt
0001: add search for appropriate JAVA_HOME in redhat initscript, now that cassandra-env.sh expects the right $JAVA to be preconfigured (see #2785).
> Cassandra doesn't start on Red Hat Linux due to hardcoded JAVA_HOME
> -------------------------------------------------------------------
>
> Key: CASSANDRA-2992
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2992
> Project: Cassandra
> Issue Type: Bug
> Affects Versions: 0.8.3
> Environment: CentOS release 5.6
> Reporter: Taras Puchko
> Assignee: paul cannon
> Attachments: 0001-don-t-hardcode-JAVA_HOME-in-redhat-initscript.patch.txt
>
>
> On CentOS /etc/init.d/cassandra has
> bq. export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/
> While there is no such a directory on our server it was ok for 0.8.2, because /usr/sbin/cassandra checked the executable
> {quote}
> if [ -x $JAVA_HOME/bin/java ]; then
> JAVA=$JAVA_HOME/bin/java
> else
> JAVA=`which java`
> fi
> {quote}
> But 0.8.3 builds replaced the above code with one that doesn't check if JAVA_HOME is set correctly.
> {quote}
> if [ -n "$JAVA_HOME" ]; then
> JAVA="$JAVA_HOME/bin/java"
> else
> JAVA=java
> fi
> {quote}
> That's why cassandra doesn't start anymore.
> The correct fix would be to remove "export JAVA_HOME" from /etc/init.d/cassandra or set it only to correct path and only if it hasn't already been set.
> It would also be nice to revert to "[ -x $JAVA_HOME/bin/java ]" in /usr/sbin/cassandra
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-2992) Cassandra doesn't start on Red
Hat Linux due to hardcoded JAVA_HOME
Posted by "Taras Puchko (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-2992?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13080923#comment-13080923 ]
Taras Puchko commented on CASSANDRA-2992:
-----------------------------------------
Our system administrators say the patch is perfect.
> Cassandra doesn't start on Red Hat Linux due to hardcoded JAVA_HOME
> -------------------------------------------------------------------
>
> Key: CASSANDRA-2992
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2992
> Project: Cassandra
> Issue Type: Bug
> Affects Versions: 0.8.3
> Environment: CentOS release 5.6
> Reporter: Taras Puchko
> Assignee: paul cannon
> Fix For: 0.8.3
>
> Attachments: 0001-don-t-hardcode-JAVA_HOME-in-redhat-initscript.patch.txt
>
>
> On CentOS /etc/init.d/cassandra has
> bq. export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/
> While there is no such a directory on our server it was ok for 0.8.2, because /usr/sbin/cassandra checked the executable
> {quote}
> if [ -x $JAVA_HOME/bin/java ]; then
> JAVA=$JAVA_HOME/bin/java
> else
> JAVA=`which java`
> fi
> {quote}
> But 0.8.3 builds replaced the above code with one that doesn't check if JAVA_HOME is set correctly.
> {quote}
> if [ -n "$JAVA_HOME" ]; then
> JAVA="$JAVA_HOME/bin/java"
> else
> JAVA=java
> fi
> {quote}
> That's why cassandra doesn't start anymore.
> The correct fix would be to remove "export JAVA_HOME" from /etc/init.d/cassandra or set it only to correct path and only if it hasn't already been set.
> It would also be nice to revert to "[ -x $JAVA_HOME/bin/java ]" in /usr/sbin/cassandra
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-2992) Cassandra doesn't start on Red
Hat Linux due to hardcoded JAVA_HOME
Posted by "Taras Puchko (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-2992?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13079406#comment-13079406 ]
Taras Puchko commented on CASSANDRA-2992:
-----------------------------------------
No, CASSANDRA-2785 actually caused this bug, since now invalid JAVA_HOME is not ignored:
http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/bin/cassandra?r1=1126728&r2=1152241&pathrev=1152241
But the real bug is setting JAVA_HOME to a fixed value in redhat specific scripts.
> Cassandra doesn't start on Red Hat Linux due to hardcoded JAVA_HOME
> -------------------------------------------------------------------
>
> Key: CASSANDRA-2992
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2992
> Project: Cassandra
> Issue Type: Bug
> Affects Versions: 0.8.3
> Environment: CentOS release 5.6
> Reporter: Taras Puchko
>
> On CentOS /etc/init.d/cassandra has
> bq. export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/
> While there is no such a directory on our server it was ok for 0.8.2, because /usr/sbin/cassandra checked the executable
> {quote}
> if [ -x $JAVA_HOME/bin/java ]; then
> JAVA=$JAVA_HOME/bin/java
> else
> JAVA=`which java`
> fi
> {quote}
> But 0.8.3 builds replaced the above code with one that doesn't check if JAVA_HOME is set correctly.
> {quote}
> if [ -n "$JAVA_HOME" ]; then
> JAVA="$JAVA_HOME/bin/java"
> else
> JAVA=java
> fi
> {quote}
> That's why cassandra doesn't start anymore.
> The correct fix would be to remove "export JAVA_HOME" from /etc/init.d/cassandra or set it only to correct path and only if it hasn't already been set.
> It would also be nice to revert to "[ -x $JAVA_HOME/bin/java ]" in /usr/sbin/cassandra
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-2992) Cassandra doesn't start on Red
Hat Linux due to hardcoded JAVA_HOME
Posted by "Hudson (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-2992?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13080959#comment-13080959 ]
Hudson commented on CASSANDRA-2992:
-----------------------------------
Integrated in Cassandra-0.8 #260 (See [https://builds.apache.org/job/Cassandra-0.8/260/])
don't hardcode JAVA_HOME in RH init script
patch by Paul Cannon; reviewed by Taras Puchko for CASSANDRA-2992
jbellis : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1154950
Files :
* /cassandra/branches/cassandra-0.8/CHANGES.txt
* /cassandra/branches/cassandra-0.8/redhat/cassandra
> Cassandra doesn't start on Red Hat Linux due to hardcoded JAVA_HOME
> -------------------------------------------------------------------
>
> Key: CASSANDRA-2992
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2992
> Project: Cassandra
> Issue Type: Bug
> Components: Packaging
> Affects Versions: 0.8.4
> Environment: CentOS release 5.6
> Reporter: Taras Puchko
> Assignee: paul cannon
> Priority: Minor
> Fix For: 0.8.4
>
> Attachments: 0001-don-t-hardcode-JAVA_HOME-in-redhat-initscript.patch.txt
>
>
> On CentOS /etc/init.d/cassandra has
> bq. export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/
> While there is no such a directory on our server it was ok for 0.8.2, because /usr/sbin/cassandra checked the executable
> {quote}
> if [ -x $JAVA_HOME/bin/java ]; then
> JAVA=$JAVA_HOME/bin/java
> else
> JAVA=`which java`
> fi
> {quote}
> But 0.8.3 builds replaced the above code with one that doesn't check if JAVA_HOME is set correctly.
> {quote}
> if [ -n "$JAVA_HOME" ]; then
> JAVA="$JAVA_HOME/bin/java"
> else
> JAVA=java
> fi
> {quote}
> That's why cassandra doesn't start anymore.
> The correct fix would be to remove "export JAVA_HOME" from /etc/init.d/cassandra or set it only to correct path and only if it hasn't already been set.
> It would also be nice to revert to "[ -x $JAVA_HOME/bin/java ]" in /usr/sbin/cassandra
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-2992) Cassandra doesn't start on Red
Hat Linux due to hardcoded JAVA_HOME
Posted by "paul cannon (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-2992?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13080454#comment-13080454 ]
paul cannon commented on CASSANDRA-2992:
----------------------------------------
I don't want to get into the business of second-guessing the admin when a configuration parameter is set, so I vote we fix the hard-coded JAVA_HOME in redhat/cassandra. Probably by borrowing the jvm search stuff from debian/init and adjusting the directory list appropriately.
> Cassandra doesn't start on Red Hat Linux due to hardcoded JAVA_HOME
> -------------------------------------------------------------------
>
> Key: CASSANDRA-2992
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2992
> Project: Cassandra
> Issue Type: Bug
> Affects Versions: 0.8.3
> Environment: CentOS release 5.6
> Reporter: Taras Puchko
> Assignee: paul cannon
>
> On CentOS /etc/init.d/cassandra has
> bq. export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/
> While there is no such a directory on our server it was ok for 0.8.2, because /usr/sbin/cassandra checked the executable
> {quote}
> if [ -x $JAVA_HOME/bin/java ]; then
> JAVA=$JAVA_HOME/bin/java
> else
> JAVA=`which java`
> fi
> {quote}
> But 0.8.3 builds replaced the above code with one that doesn't check if JAVA_HOME is set correctly.
> {quote}
> if [ -n "$JAVA_HOME" ]; then
> JAVA="$JAVA_HOME/bin/java"
> else
> JAVA=java
> fi
> {quote}
> That's why cassandra doesn't start anymore.
> The correct fix would be to remove "export JAVA_HOME" from /etc/init.d/cassandra or set it only to correct path and only if it hasn't already been set.
> It would also be nice to revert to "[ -x $JAVA_HOME/bin/java ]" in /usr/sbin/cassandra
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-2992) Cassandra doesn't start on Red
Hat Linux due to hardcoded JAVA_HOME
Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-2992?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jonathan Ellis updated CASSANDRA-2992:
--------------------------------------
Component/s: Packaging
Priority: Minor (was: Major)
Affects Version/s: (was: 0.8.3)
0.8.4
Fix Version/s: (was: 0.8.3)
0.8.4
Note that CASSANDRA-2785 was reverted for the second 0.8.3 vote, so I'm updating both affects and fix-for versions to 0.8.4.
> Cassandra doesn't start on Red Hat Linux due to hardcoded JAVA_HOME
> -------------------------------------------------------------------
>
> Key: CASSANDRA-2992
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2992
> Project: Cassandra
> Issue Type: Bug
> Components: Packaging
> Affects Versions: 0.8.4
> Environment: CentOS release 5.6
> Reporter: Taras Puchko
> Assignee: paul cannon
> Priority: Minor
> Fix For: 0.8.4
>
> Attachments: 0001-don-t-hardcode-JAVA_HOME-in-redhat-initscript.patch.txt
>
>
> On CentOS /etc/init.d/cassandra has
> bq. export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/
> While there is no such a directory on our server it was ok for 0.8.2, because /usr/sbin/cassandra checked the executable
> {quote}
> if [ -x $JAVA_HOME/bin/java ]; then
> JAVA=$JAVA_HOME/bin/java
> else
> JAVA=`which java`
> fi
> {quote}
> But 0.8.3 builds replaced the above code with one that doesn't check if JAVA_HOME is set correctly.
> {quote}
> if [ -n "$JAVA_HOME" ]; then
> JAVA="$JAVA_HOME/bin/java"
> else
> JAVA=java
> fi
> {quote}
> That's why cassandra doesn't start anymore.
> The correct fix would be to remove "export JAVA_HOME" from /etc/init.d/cassandra or set it only to correct path and only if it hasn't already been set.
> It would also be nice to revert to "[ -x $JAVA_HOME/bin/java ]" in /usr/sbin/cassandra
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-2992) Cassandra doesn't start on Red
Hat Linux due to hardcoded JAVA_HOME
Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-2992?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13079394#comment-13079394 ]
Jonathan Ellis commented on CASSANDRA-2992:
-------------------------------------------
Is this fixed by CASSANDRA-2785 ?
> Cassandra doesn't start on Red Hat Linux due to hardcoded JAVA_HOME
> -------------------------------------------------------------------
>
> Key: CASSANDRA-2992
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2992
> Project: Cassandra
> Issue Type: Bug
> Affects Versions: 0.8.3
> Environment: CentOS release 5.6
> Reporter: Taras Puchko
>
> On CentOS /etc/init.d/cassandra has
> bq. export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/
> While there is no such a directory on our server it was ok for 0.8.2, because /usr/sbin/cassandra checked the executable
> {quote}
> if [ -x $JAVA_HOME/bin/java ]; then
> JAVA=$JAVA_HOME/bin/java
> else
> JAVA=`which java`
> fi
> {quote}
> But 0.8.3 builds replaced the above code with one that doesn't check if JAVA_HOME is set correctly.
> {quote}
> if [ -n "$JAVA_HOME" ]; then
> JAVA="$JAVA_HOME/bin/java"
> else
> JAVA=java
> fi
> {quote}
> That's why cassandra doesn't start anymore.
> The correct fix would be to remove "export JAVA_HOME" from /etc/init.d/cassandra or set it only to correct path and only if it hasn't already been set.
> It would also be nice to revert to "[ -x $JAVA_HOME/bin/java ]" in /usr/sbin/cassandra
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-2992) Cassandra doesn't start on Red
Hat Linux due to hardcoded JAVA_HOME
Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-2992?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13080460#comment-13080460 ]
Jonathan Ellis commented on CASSANDRA-2992:
-------------------------------------------
so, use existing JAVA_HOME if set, else search for it? sounds good to me.
> Cassandra doesn't start on Red Hat Linux due to hardcoded JAVA_HOME
> -------------------------------------------------------------------
>
> Key: CASSANDRA-2992
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2992
> Project: Cassandra
> Issue Type: Bug
> Affects Versions: 0.8.3
> Environment: CentOS release 5.6
> Reporter: Taras Puchko
> Assignee: paul cannon
>
> On CentOS /etc/init.d/cassandra has
> bq. export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/
> While there is no such a directory on our server it was ok for 0.8.2, because /usr/sbin/cassandra checked the executable
> {quote}
> if [ -x $JAVA_HOME/bin/java ]; then
> JAVA=$JAVA_HOME/bin/java
> else
> JAVA=`which java`
> fi
> {quote}
> But 0.8.3 builds replaced the above code with one that doesn't check if JAVA_HOME is set correctly.
> {quote}
> if [ -n "$JAVA_HOME" ]; then
> JAVA="$JAVA_HOME/bin/java"
> else
> JAVA=java
> fi
> {quote}
> That's why cassandra doesn't start anymore.
> The correct fix would be to remove "export JAVA_HOME" from /etc/init.d/cassandra or set it only to correct path and only if it hasn't already been set.
> It would also be nice to revert to "[ -x $JAVA_HOME/bin/java ]" in /usr/sbin/cassandra
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira