Thanks Barry,

It solved the problem .

    if (bean == null) {//try with function because internal region does't have 
bean
      Set<DistributedMember> matchedMembers = new HashSet<DistributedMember>();
      matchedMembers = CliUtil.getMembersForeRegionViaFunction(cache, region, 
true);
      return matchedMembers;
    }
    
Can we publish this fix over open community.

Thanks,
Dinesh Akhand

-----Original Message-----
From: Barry Oglesby [mailto:bogle...@pivotal.io] 
Sent: Monday, July 10, 2017 11:58 PM
To: dev@geode.apache.org
Subject: Re: Query for JMX "Async Event Queue properties"

Dinesh,

The getRegionAssociatedMembers method looks like it could be improved.

It currently does this:

- gets the distributed MBean for the region
- if one doesn't exist it returns null
- if one does exist, it gets the members for that bean (which are the members 
with that region)
- if there are none, it tries to get the members using a function
- returns the members

Instead of returning null if the MBean can't be found, it could try using the 
function.

I made a hack fix to do that and the query worked:

Cluster-1 gfsh>query --query="select * from 
/AsyncEventQueue_db_PARALLEL_GATEWAY_SENDER_QUEUE"

Result     : true
startCount : 0
endCount   : 20
Rows       : 1

DSFID | action | bucketId | callbackArgument | creationTime  |
deserializedValue |                       enumListenerEvent
       |                 eventId                 |
 eventSequenceID               | initialized | key | keyToConflate |
numberOfParts |            operation             | possibleDuplicate |
 rawValue      | region | regionPath | regionToConflate |
      senderCallbackArgument                         |  serializedValue   |
serializedValueNotAvailable | serializedValueSize | shadowKey | sizeInBytes
| substituteValue |                         value
 | valueIsObject | valueToConflate | versionTimeStamp
----- | ------ | -------- | ---------------- | ------------- |
----------------- |
-------------------------------------------------------------- |
--------------------------------------- |
------------------------------------------ | ----------- | --- |
------------- | ------------- | -------------------------------- |
----------------- | ------------------ | ------ | ---------- |
---------------- |
---------------------------------------------------------------------- |
------------------ | --------------------------- | ------------------- |
--------- | ----------- | --------------- |
------------------------------------------------------ | ------------- |
--------------- | ----------------
-134  | 0      | 0        | null             | 1499708631487 | 0
      | org.apache.geode.internal.cache.EnumListenerEvent.AFTER_CREATE | 
org.apache.geode.internal.cache.EventID |
org.apache.geode.cache.wan.EventSequenceID | true        | 0   | 0
    | 9             | org.apache.geode.cache.Operation | false
| org.json.JSONArray | null   | /data      | /data            |
org.apache.geode.internal.cache.wan.GatewaySenderEventCallbackArgument |
org.json.JSONArray | false                       | 17                  |
113       | 365         | null            |
org.apache.geode.internal.cache.VMCachedDeserializable | 1             | 0
              | 1499708631486

You could write your own function to do the same thing.

I tried that and got:

Cluster-1 gfsh>execute function --id=QueryAsyncEventQueueRegionFunction
--result-collector=QueryAsyncEventQueueRegionFunctionResultCollector
Execution summary

      Member ID/Name        | Function Execution Result
--------------------------- |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
server1(40603)<v1>:1027 |
SenderEventImpl[id=EventIDid=25bytes;threadID=0x10000|1;sequenceID=0;bucketId=0];action=0;operation=CREATE;region=/data;key=0;value=0;valueIsObject=1;numberOfParts=9;callbackArgument=GatewaySenderEventCallbackArgumen..


Thanks,
Barry Oglesby


On Fri, Jun 16, 2017 at 5:38 AM, Dinesh Akhand <dines...@amdocs.com> wrote:

> Hi Team
>
> Regarding the following metrics:
>
> /AsyncEventQueue_XYZ_PARALLEL_GATEWAY_SENDER_QUEUE:PartitionedRegionStats.
> dataStoreEntryCount
> /AsyncEventQueue_XYZ_PARALLEL_GATEWAY_SENDER_QUEUE:PartitionedRegionStats.
> dataStoreBytesInUse
>
>
> I found only count for async queue in JMX , it called here 
> EventQueueSize = PartitionedRegionStats.dataStoreEntryCount
>
> /** AsyncEventQueue Stats **/
>   public static final String ASYNCEVENTQUEUE_EVENTS_QUEUE_SIZE = 
> "eventQueueSize"
>
> we having Missing  PartitionedRegionStats.dataStoreBytesInUse in JMX 
> for Async Qeueue.
>
> Can you help me , which property I need to map for it.
>
> Thanks,
> Dinesh Akhand
>
>
> This message and the information contained herein is proprietary and 
> confidential and subject to the Amdocs policy statement,
>
> you may review at https://www.amdocs.com/about/email-disclaimer < 
> https://www.amdocs.com/about/email-disclaimer>
>
This message and the information contained herein is proprietary and 
confidential and subject to the Amdocs policy statement,

you may review at https://www.amdocs.com/about/email-disclaimer 
<https://www.amdocs.com/about/email-disclaimer>

Reply via email to