You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Kenneth Howe (JIRA)" <ji...@apache.org> on 2017/09/14 18:02:00 UTC
[jira] [Created] (GEODE-3620) Gfsh 'alter runtime --
log-disk-space-limit' throws NPE if log-file-size-limit is not set
Kenneth Howe created GEODE-3620:
-----------------------------------
Summary: Gfsh 'alter runtime -- log-disk-space-limit' throws NPE if log-file-size-limit is not set
Key: GEODE-3620
URL: https://issues.apache.org/jira/browse/GEODE-3620
Project: Geode
Issue Type: Bug
Components: gfsh
Reporter: Kenneth Howe
Steps to reproduce:
* With gfsh, start a locator and server
{code}
$ gfsh
_________________________ __
/ _____/ ______/ ______/ /____/ /
/ / __/ /___ /_____ / _____ /
/ /__/ / ____/ _____/ / / / /
/______/_/ /______/_/ /_/ 1.3.0-SNAPSHOT
Monitor and Manage Apache Geode
gfsh>start locator --name=locator1 --port=12345
Starting a Geode Locator in /Users/khowe/work/GEM-1632/locator1...
...
Successfully connected to: JMX Manager [host=10.118.33.251, port=1099]
Cluster configuration service is up and running.
gfsh>start server --name=server1 --server-port=54321
Starting a Geode Server in /Users/khowe/work/GEM-1632/server1...
...
Server in /Users/khowe/work/GEM-1632/server1 on 10.118.33.251[54321] as server1 is currently online.
...
{code}
* Still connected in gfsh, try to set the log-disk-space-limit
{code}
gfsh>alter runtime --log-disk-space-limit=1000
Could not process command due to error. Error while processing command <[GfshParseResult@ac4bae8 method = alterRuntimeConfig@AlterRuntimeConfigCommand, instance = org.apache.geode.management.internal.cli.commands.AlterRuntimeConfigCommand@4e406694, arguments = 'null,null,null,null,1000,null,null,null,null,null,null,null,null,null,null']> Reason : java.lang.NullPointerException
at java.util.TreeMap.compare(TreeMap.java:1294)
at java.util.TreeMap.put(TreeMap.java:538)
at java.util.TreeSet.add(TreeSet.java:255)
at org.apache.geode.management.internal.cli.commands.AlterRuntimeConfigCommand.alterRuntimeConfig(AlterRuntimeConfigCommand.java:193)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:216)
at org.apache.geode.management.internal.cli.remote.CommandExecutor.invokeCommand(CommandExecutor.java:54)
at org.apache.geode.management.internal.cli.remote.CommandExecutor.execute(CommandExecutor.java:37)
at org.apache.geode.management.internal.cli.remote.OnlineCommandProcessor.executeCommand(OnlineCommandProcessor.java:131)
at org.apache.geode.management.internal.beans.MemberMBeanBridge.processCommand(MemberMBeanBridge.java:1577)
at org.apache.geode.management.internal.beans.MemberMBean.processCommand(MemberMBean.java:406)
...
{code}
Running a version of gfsh with some addtional debug code added I am able to see the NPE on the server. From {{server1/server1.log}}:
{code}
[error 2017/09/14 10:30:49.363 PDT server1 <Function Execution Processor1> tid=0x4b] Exception happened on : 10.118.33.251(server1:14796)<v1>:1025
java.lang.NullPointerException
at org.apache.geode.internal.io.MainWithChildrenRollingFileHandler.findChildrenExcept(MainWithChildrenRollingFileHandler.java:235)
at org.apache.geode.internal.io.MainWithChildrenRollingFileHandler.checkDiskSpace(MainWithChildrenRollingFileHandler.java:138)
at org.apache.geode.internal.io.MainWithChildrenRollingFileHandler.checkDiskSpace(MainWithChildrenRollingFileHandler.java:130)
at org.apache.geode.internal.logging.ManagerLogWriter.checkDiskSpace(ManagerLogWriter.java:345)
at org.apache.geode.internal.logging.ManagerLogWriter.switchLogs(ManagerLogWriter.java:288)
at org.apache.geode.internal.logging.ManagerLogWriter.configChanged(ManagerLogWriter.java:124)
at org.apache.geode.internal.logging.log4j.LogWriterAppender.configChanged(LogWriterAppender.java:212)
at org.apache.geode.internal.logging.log4j.LogWriterAppenders.configChanged(LogWriterAppenders.java:284)
at org.apache.geode.distributed.internal.RuntimeDistributionConfigImpl.setLogDiskSpaceLimit(RuntimeDistributionConfigImpl.java:118)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.geode.distributed.internal.AbstractDistributionConfig.setAttributeObject(AbstractDistributionConfig.java:614)
at org.apache.geode.internal.AbstractConfig.setAttribute(AbstractConfig.java:432)
at org.apache.geode.management.internal.cli.functions.AlterRuntimeConfigFunction.execute(AlterRuntimeConfigFunction.java:74)
at org.apache.geode.internal.cache.MemberFunctionStreamingMessage.process(MemberFunctionStreamingMessage.java:186)
at org.apache.geode.distributed.internal.DistributionMessage.scheduleAction(DistributionMessage.java:374)
at org.apache.geode.distributed.internal.DistributionMessage$1.run(DistributionMessage.java:440)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.apache.geode.distributed.internal.DistributionManager.runUntilShutdown(DistributionManager.java:666)
at org.apache.geode.distributed.internal.DistributionManager$9$1.run(DistributionManager.java:1112)
at java.lang.Thread.run(Thread.java:745)
{code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)