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

Ian Varley updated HBASE-7817:
------------------------------

    Description: 
In the default hbase-env.sh in trunk, there's a section for lines you can 
uncomment to enable JDWP remote debugging:

{code:none}
    # Enable remote JDWP debugging of major HBase processes. Meant for Core 
Developers 
    # export HBASE_MASTER_OPTS=" -Xdebug 
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8070"
    # export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS -Xdebug 
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8071"
    # export HBASE_THRIFT_OPTS="$HBASE_THRIFT_OPTS -Xdebug 
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8072"
    # export HBASE_ZOOKEEPER_OPTS="$HBASE_ZOOKEEPER_OPTS -Xdebug 
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8073"
{code}

However, this is wrong (at least, if you're starting from local source), 
because somewhere in the chain of start-hbase.sh, it sources hbase-env.sh more 
than once, which has the effect of including these options twice, which makes 
the JVM barf on startup, saying "ERROR: Cannot load this JVM TI agent twice, 
check your java command line for duplicate jdwp options. Error occurred during 
initialization of VM; agent library failed to init: jdwp". Removing the first 
re-included instance of $HBASE_MASTER_OPTS (etc.) solves the problem. This 
should either be changed in the default or these scripts shouldn't source 
hbase-env.sh multiple times I think.

  was:
In the default hbase-env.sh in trunk, there's a section for lines you can 
uncomment to enable JDWP remote debugging:

    # Enable remote JDWP debugging of major HBase processes. Meant for Core 
Developers 
    # export HBASE_MASTER_OPTS=" -Xdebug 
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8070"
    # export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS -Xdebug 
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8071"
    # export HBASE_THRIFT_OPTS="$HBASE_THRIFT_OPTS -Xdebug 
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8072"
    # export HBASE_ZOOKEEPER_OPTS="$HBASE_ZOOKEEPER_OPTS -Xdebug 
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8073"

However, this is wrong (at least, if you're starting from local source), 
because somewhere in the chain of start-hbase.sh, it sources hbase-env.sh more 
than once, which has the effect of including these options twice, which makes 
the JVM barf on startup, saying "ERROR: Cannot load this JVM TI agent twice, 
check your java command line for duplicate jdwp options. Error occurred during 
initialization of VM; agent library failed to init: jdwp". Removing the first 
re-included instance of $HBASE_MASTER_OPTS (etc.) solves the problem. This 
should either be changed in the default or these scripts shouldn't source 
hbase-env.sh multiple times I think.

    
> Suggested JDWP debug options in hbase-env.sh are wrong
> ------------------------------------------------------
>
>                 Key: HBASE-7817
>                 URL: https://issues.apache.org/jira/browse/HBASE-7817
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Ian Varley
>            Priority: Minor
>
> In the default hbase-env.sh in trunk, there's a section for lines you can 
> uncomment to enable JDWP remote debugging:
> {code:none}
>     # Enable remote JDWP debugging of major HBase processes. Meant for Core 
> Developers 
>     # export HBASE_MASTER_OPTS=" -Xdebug 
> -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8070"
>     # export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS -Xdebug 
> -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8071"
>     # export HBASE_THRIFT_OPTS="$HBASE_THRIFT_OPTS -Xdebug 
> -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8072"
>     # export HBASE_ZOOKEEPER_OPTS="$HBASE_ZOOKEEPER_OPTS -Xdebug 
> -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8073"
> {code}
> However, this is wrong (at least, if you're starting from local source), 
> because somewhere in the chain of start-hbase.sh, it sources hbase-env.sh 
> more than once, which has the effect of including these options twice, which 
> makes the JVM barf on startup, saying "ERROR: Cannot load this JVM TI agent 
> twice, check your java command line for duplicate jdwp options. Error 
> occurred during initialization of VM; agent library failed to init: jdwp". 
> Removing the first re-included instance of $HBASE_MASTER_OPTS (etc.) solves 
> the problem. This should either be changed in the default or these scripts 
> shouldn't source hbase-env.sh multiple times I think.

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