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:03:00 UTC

[jira] [Assigned] (GEODE-3620) Gfsh 'alter runtime -- log-disk-space-limit' throws NPE if log-file-size-limit is not set

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

Kenneth Howe reassigned GEODE-3620:
-----------------------------------

    Assignee: Kenneth Howe

> 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
>            Assignee: 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)