[ https://issues.apache.org/jira/browse/HBASE-6504?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13456358#comment-13456358 ]
Hudson commented on HBASE-6504: ------------------------------- Integrated in HBase-0.94 #470 (See [https://builds.apache.org/job/HBase-0.94/470/]) HBASE-6504 Adding GC details prevents HBase from starting in non-distributed mode (Revision 1385027) Result = FAILURE stack : Files : * /hbase/branches/0.94/bin/rolling-restart.sh * /hbase/branches/0.94/bin/start-hbase.sh * /hbase/branches/0.94/bin/stop-hbase.sh > Adding GC details prevents HBase from starting in non-distributed mode > ---------------------------------------------------------------------- > > Key: HBASE-6504 > URL: https://issues.apache.org/jira/browse/HBASE-6504 > Project: HBase > Issue Type: Bug > Affects Versions: 0.94.0 > Reporter: Benoit Sigoure > Assignee: Michael Drzal > Priority: Trivial > Labels: noob > Fix For: 0.96.0, 0.94.3 > > Attachments: HBASE-6504-output.txt, HBASE-6504.patch, > HBASE-6504-v2.patch > > > The {{conf/hbase-env.sh}} that ships with HBase contains a few commented out > examples of variables that could be useful, such as adding > {{-XX:+PrintGCDetails -XX:+PrintGCDateStamps}} to {{HBASE_OPTS}}. This has > the annoying side effect that the JVM prints a summary of memory usage when > it exits, and it does so on stdout: > {code} > $ ./bin/hbase org.apache.hadoop.hbase.util.HBaseConfTool > hbase.cluster.distributed > false > Heap > par new generation total 19136K, used 4908K [0x000000073a200000, > 0x000000073b6c0000, 0x0000000751860000) > eden space 17024K, 28% used [0x000000073a200000, 0x000000073a6cb0a8, > 0x000000073b2a0000) > from space 2112K, 0% used [0x000000073b2a0000, 0x000000073b2a0000, > 0x000000073b4b0000) > to space 2112K, 0% used [0x000000073b4b0000, 0x000000073b4b0000, > 0x000000073b6c0000) > concurrent mark-sweep generation total 63872K, used 0K [0x0000000751860000, > 0x00000007556c0000, 0x00000007f5a00000) > concurrent-mark-sweep perm gen total 21248K, used 6994K [0x00000007f5a00000, > 0x00000007f6ec0000, 0x0000000800000000) > $ ./bin/hbase org.apache.hadoop.hbase.util.HBaseConfTool > hbase.cluster.distributed >/dev/null > (nothing printed) > {code} > And this confuses {{bin/start-hbase.sh}} when it does > {{distMode=`$bin/hbase --config "$HBASE_CONF_DIR" > org.apache.hadoop.hbase.util.HBaseConfTool hbase.cluster.distributed`}}, > because then the {{distMode}} variable is not just set to {{false}}, it also > contains all this JVM spam. > If you don't pay enough attention and realize that 3 processes are getting > started (ZK, HM, RS) instead of just one (HM), then you end up with this > confusing error message: > {{Could not start ZK at requested port of 2181. ZK was started at port: > 2182. Aborting as clients (e.g. shell) will not be able to find this ZK > quorum.}}, which is even more puzzling because when you run {{netstat}} to > see who owns that port, then you won't find any rogue process other than the > one you just started. > I'm wondering if the fix is not to just change the {{if [ "$distMode" == > 'false' ]}} to a {{switch $distMode case (false*)}} type of test, to work > around this annoying JVM misfeature that pollutes stdout. -- 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