[ 
https://issues.apache.org/jira/browse/BIGTOP-1011?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sean Mackrory updated BIGTOP-1011:
----------------------------------

    Attachment: 0001-BIGTOP-1011.-bigtop-detect-javahome-has-a-quirky-sea.patch

This patch lets higher versions take precedence over lower versions (unless the 
order in our list is more specific).

I found out that /usr/lib/jvm/default-java is actually a symlinked maintained 
by some Ubuntu packages, and /Library/Java/Home appears to be maintained by 
some older OS X versions. In these cases, I believe my original statement is 
correct that it's not safe to let these take precedence over the recommended 
Oracle JDK's because they're more than likely OpenJDK.

Regarding the relative order or Oracle / Open JDK 6 and 7 - I think that 
warrants a closer look still.
                
> bigtop-detect-javahome has a quirky search order
> ------------------------------------------------
>
>                 Key: BIGTOP-1011
>                 URL: https://issues.apache.org/jira/browse/BIGTOP-1011
>             Project: Bigtop
>          Issue Type: Bug
>            Reporter: Jolly Chen
>            Assignee: Sean Mackrory
>         Attachments: 
> 0001-BIGTOP-1011.-bigtop-detect-javahome-has-a-quirky-sea.patch
>
>
> If JAVA_HOME is not set, bigtop-detect-javahome has a very quirky search 
> order that can have surprising behavior.
> Some problems:
>   - because the "defaults" (like /usr/java/default, 
> /usr/lib/jvm/default-java, /Library/Java/Home) are in the middle of the 
> search list, bigtop will pick up other random JDKs instead of the 'default' 
> the user already has set up on the system.
>   - due to use of wildcards, earlier minor versions can be preferred over 
> later minor versions, e.g. /usr/java/jdk1.6* will find 1.6.0_31 before 
> 1.6.0_43, which is probably not what the user wants.
>   - 1.6 and 1.7 preference order is not consistent (e.g. generally 1.6 is 
> preferred over 1.7 but not for openJDK)
> This is related to previous issue: 
> https://issues.apache.org/jira/browse/BIGTOP-843
> # attempt to find java
> if [ -z "$JAVA_HOME" ]; then
>   for candidate in \
>     /usr/lib/j2sdk1.6-sun \
>     /usr/lib/jvm/java-6-sun \
>     /usr/lib/jvm/java-1.6.0-sun-1.6.0.* \
>     /usr/lib/jvm/java-1.6.0-sun-1.6.0.*/jre/ \
>     /usr/lib/jvm/j2sdk1.6-oracle \
>     /usr/lib/jvm/j2sdk1.6-oracle/jre \
>     /usr/java/jdk1.6* \
>     /usr/java/jre1.6* \
>     /usr/java/jdk1.7* \
>     /usr/java/jre1.7* \
>     /usr/lib/jvm/j2sdk1.7-oracle \
>     /usr/lib/jvm/j2sdk1.7-oracle/jre \
>     /Library/Java/Home \
>     /usr/java/default \
>     /usr/lib/jvm/default-java \
>     /usr/lib/jvm/java-openjdk \
>     /usr/lib/jvm/jre-openjdk \
>     /usr/lib/jvm/java-1.7.0-openjdk* \
>     /usr/lib/jvm/java-7-openjdk* \
>     /usr/lib/jvm/java-7-oracle* \
>     /usr/lib/jvm/java-1.6.0-openjdk \
>     /usr/lib/jvm/java-1.6.0-openjdk-* \
>     /usr/lib/jvm/jre-1.6.0-openjdk* ; do

--
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

Reply via email to