Hello Geode Community,

I am creating 2 regions, one is of type=PARTITION and the other is of the
type=LOCAL and observe the following

- "*totalHitCount"* and "*totalMissCount"* jumps by 2 for every hit/miss
for Partitioned region and it jumps by 1 for the local region. Is this by
design (if so, whats the reasoning behind it) or a bug ?

- The *"hitCount"* and *"missCount"* for a partitioned region always
(at-least in my simple test) displays -1, So is there no way to know the
correct hit/miss counts for partitioned regions ?

- When I run the *show metrics* command by specifying a member (*gfsh>show
metrics --region=/Customer_Partition --member=geode-server2*)  I get a NPE
(stacktrace below).


Please let me know if any of the above needs a JIRA, I can create one.


*gfsh>create region --name=Customer_Partition --enable-statistics=true
--type=PARTITION*

*gfsh>create region --name=Customer_Local --enable-statistics=true
--type=LOCAL*
*gfsh>get --key=404 --region=/Customer_Partition*

Result      : false

*gfsh>show metrics*

Cluster-wide Metrics

Category  |        Metric         | Value

--------- | --------------------- | -----

cluster   | totalHeapSize         | 10923

cache     | totalRegionEntryCount | 0

          | totalRegionCount      | 5

*          | totalMissCount        | 2*


*gfsh>get --key=404 --region=/Customer_Local*

Result      : false

*gfsh>show metrics*

Cluster-wide Metrics

Category  |        Metric         | Value

--------- | --------------------- | -----

cluster   | totalHeapSize         | 10923

cache     | totalRegionEntryCount | 0

          | totalRegionCount      | 5
*          | totalMissCount        | 3*


*gfsh>put --key=1 --value="1" --region=/Customer*
*gfsh>put --key=1 --value="1" --region=/Customer_Local*


gfsh>get --key=1 --region=/Customer_Partition
Result      : true

*gfsh>show metrics --region=/Customer_Partition*
Cluster-wide Region Metrics

Category  |            Metric            | Value
--------- | ---------------------------- | -----
cluster   | member count                 | 1
          | region entry count           | 1
region    | lastModifiedTime             | -1
          | lastAccessedTime             | -1
*          | missCount                    | -1*
*          | hitCount                     | -1*
          | hitRatio                     | -1


*gfsh>show metrics --region=/Customer_Partition --member=geode-server2*
Could not process command due to GemFire error.
#SBjava.lang.NullPointerException
    at com.sun.proxy.$Proxy81.getMissCount(Unknown Source)
    at
org.apache.geode.management.internal.cli.commands.MiscellaneousCommands.getRegionMetricsFromMember(MiscellaneousCommands.java:1970)
    at
org.apache.geode.management.internal.cli.commands.MiscellaneousCommands.showMetrics(MiscellaneousCommands.java:1200)
    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:497)
    at
org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:216)
    at
org.apache.geode.management.internal.cli.remote.RemoteExecutionStrategy.execute(RemoteExecutionStrategy.java:91)
    at
org.apache.geode.management.internal.cli.remote.CommandProcessor.executeCommand(CommandProcessor.java:117)
    at
org.apache.geode.management.internal.cli.remote.CommandStatementImpl.process(CommandStatementImpl.java:71)
    at
org.apache.geode.management.internal.cli.remote.MemberCommandService.processCommand(MemberCommandService.java:52)
    at
org.apache.geode.management.internal.beans.MemberMBeanBridge.processCommand(MemberMBeanBridge.java:1639)
    at
org.apache.geode.management.internal.beans.MemberMBean.processCommand(MemberMBean.java:404)
    at
org.apache.geode.management.internal.beans.MemberMBean.processCommand(MemberMBean.java:397)
    at sun.reflect.GeneratedMethodAccessor298.invoke(Unknown Source)
    at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:71)
    at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
    at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:275)
    at
com.sun.jmx.mbeanserver.ConvertingMethod.invokeWithOpenReturn(ConvertingMethod.java:193)
    at
com.sun.jmx.mbeanserver.ConvertingMethod.invokeWithOpenReturn(ConvertingMethod.java:175)
    at
com.sun.jmx.mbeanserver.MXBeanIntrospector.invokeM2(MXBeanIntrospector.java:117)
    at
com.sun.jmx.mbeanserver.MXBeanIntrospector.invokeM2(MXBeanIntrospector.java:54)
    at
com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:237)
    at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:138)
    at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:252)
    at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
    at
com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
    at
javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1468)
    at
javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:76)
    at
javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1309)
    at
javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1401)
    at
javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:829)
    at sun.reflect.GeneratedMethodAccessor76.invoke(Unknown Source)
    at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:323)
    at sun.rmi.transport.Transport$1.run(Transport.java:200)
    at sun.rmi.transport.Transport$1.run(Transport.java:197)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
    at
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)
    at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
    at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$256(TCPTransport.java:683)
    at java.security.AccessController.doPrivileged(Native Method)
    at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
    at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)



*gfsh>list members*
    Name      | Id
------------- | ----------------------------------------------
locator1      | 10.8.4.198(locator1:9798:locator)<ec><v0>:1024
geode-server2 | 10.8.4.198(geode-server2:9799)<v1>:1025



*gfsh>version --full*
Build-Date: 2017-03-27 21:52:42 -0700
Build-Id: abaker 0
Build-Java-Version: 1.8.0_121
Build-Platform: Mac OS X 10.12.3 x86_64
Product-Name: Apache Geode
Product-Version: 1.1.1
Source-Date: 2017-03-27 21:36:40 -0700
Source-Repository: release/1.1.1
Source-Revision: e2081044ea0afca1cb38d62c7f34e7363b45ad97
Native version: native code unavailable
Running on: /10.8.4.


Thanks,
Srikanth Manvi

Reply via email to