I think the problem on gfsh show metrics is caused by GEODE-2676. Since it
talks about mbeans it would be helpful if you added to it how it impacts
the gfsh show metrics command.
Currently PartiionedRegions do not support hit/miss count. Vote
for: GEODE-2685.

I think the totalHit/Miss count incing by two instead of one is an unfiled
bug. Internally PRs are implemented by both ParitionedRegion and
BucketRegion. Perhaps each of these is incrementing.


On Tue, May 2, 2017 at 2:15 PM, Srikanth Manvi <manv...@gmail.com> wrote:

> 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