You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Kirk Lund (JIRA)" <ji...@apache.org> on 2016/09/01 22:57:20 UTC

[jira] [Commented] (GEODE-1836) gfsh script adds the wrong tools.jar to classpath when using jenv on Mac OSX

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

Kirk Lund commented on GEODE-1836:
----------------------------------

If the following path is pointing at JDK 1.6.0_65 /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK, and the user is using jenv to launch GFSH with JDK 1.8, GFSH will attempt to identify /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Classes/classes.jar as the tools.jar and set the CLASSPATH to point to it. GFSH will then fail to load the correct Attach API classes. The resulting error message when attempting to get the status of a running or started process is then similar to:

An error occurred while attempting to start a Geode Cache Server: sun.tools.attach.MacosxVirtualMachine.isLinuxThreads()Z

The fix requires changing GFSH to not add a jar file from the incorrect JDK.

A quick change to GFSH to skip this entirely results in the correct behavior.


> gfsh script adds the wrong tools.jar to classpath when using jenv on Mac OSX
> ----------------------------------------------------------------------------
>
>                 Key: GEODE-1836
>                 URL: https://issues.apache.org/jira/browse/GEODE-1836
>             Project: Geode
>          Issue Type: Bug
>          Components: gfsh
>    Affects Versions: 1.0.0-incubating.M1, 1.0.0-incubating.M2, 1.0.0-incubating.M3
>            Reporter: Kirk Lund
>            Assignee: Kirk Lund
>
> On Mac OSX, the gfsh script finds the wrong tools.jar when using jenv.
> I'm testing this using /Library/Java/JavaVirtualMachines/jdk1.8.0_66.jdk/Contents/Home.
> {noformat}
> $ ./gfsh
>     _________________________     __
>    / _____/ ______/ ______/ /____/ /
>   / /  __/ /___  /_____  / _____  / 
>  / /__/ / ____/  _____/ / /    / /  
> /______/_/      /______/_/    /_/    1.0.0-incubating.M3
> Monitor and Manage Apache Geode (incubating)
> gfsh>start server --name=server
> Starting a Geode Server in /Users/klund/apache-geode-1.0.0-incubating.M3/bin/server...
> An error occurred while attempting to start a Geode Cache Server: sun.tools.attach.MacosxVirtualMachine.isLinuxThreads()Z
> {noformat}
> The server named "server" actually starts up fine but GFSH is unable to get its status because the GFSH process is failing to load sun.tools.attach. MacosxVirtualMachine.
> The "gfsh" script is written for Linux, and I believe we'll need to alter the script some to make it work on Mac. I'll file a bug for this.
> For now, the best workaround I can offer up is to add the tools.jar to your CLASSPATH:
> {noformat}
> $ export CLASSPATH=/Library/Java/JavaVirtualMachines/jdk1.8.0_66.jdk/Contents/Home/lib/tools.jar
> $ ./gfsh
>     _________________________     __
>    / _____/ ______/ ______/ /____/ /
>   / /  __/ /___  /_____  / _____  / 
>  / /__/ / ____/  _____/ / /    / /  
> /______/_/      /______/_/    /_/    1.0.0-incubating.M3
> Monitor and Manage Apache Geode (incubating)
> gfsh>start server --name=server
> Starting a Geode Server in /Users/klund/apache-geode-1.0.0-incubating.M3/bin/server...
> ....
> Server in /Users/klund/apache-geode-1.0.0-incubating.M3/bin/server on pdx2-office-dhcp32.eng.vmware.com[40404] as server is currently online.
> Process ID: 50858
> Uptime: 2 seconds
> GemFire Version: 1.0.0-incubating.M3
> Java Version: 1.8.0_66
> Log File: /Users/klund/apache-geode-1.0.0-incubating.M3/bin/server/server.log
> JVM Arguments: -Dgemfire.use-cluster-configuration=true -XX:OnOutOfMemoryError=kill -KILL %p -Dgemfire.launcher.registerSignalHandlers=true -Djava.awt.headless=true -Dsun.rmi.dgc.server.gcInterval=9223372036854775806
> Class-Path: /Users/klund/apache-geode-1.0.0-incubating.M3/lib/geode-core-1.0.0-incubating.M3.jar:/Users/klund/apache-geode-1.0.0-incubating.M3/lib/geode-dependencies.jar
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)