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

Michael Martell updated GEODE-8592:
-----------------------------------
    Description: 
As reported on StackOverflow 
([https://stackoverflow.com/questions/64045931/repeated-ui-calls-to-geode-native-client-attributesmutator-setcachelistener)],
 this looks like a bug with AttributesMutator when setting multiple 
CacheListeners.

If I have a button on a UI that registers a listener, sync not async, and click 
it several times, then repeatedly setting listeners on a region hangs:

A {{Cache c}} is already initialized. This is using the C# Geode Native Client.

 ```

{{IRegion<string, Object> d = c.GetRegion<string, Object>("deal");

try
\{
    Logs.Trace("Registering key");
    d.GetSubscriptionService().RegisterKeys(s);
    d.AttributesMutator.SetCacheListener(new LDeal<string, Object>(c, AddDeal));
}
catch (Exception ex)
\{
    new ApplicationException("Can't register key: " + clOrdId, ex);
}}}

```

Capturing screenshots from StackOverflow in the attachments.
       Priority: Minor  (was: Major)

> Hang in SetCacheListener
> ------------------------
>
>                 Key: GEODE-8592
>                 URL: https://issues.apache.org/jira/browse/GEODE-8592
>             Project: Geode
>          Issue Type: Bug
>          Components: native client
>            Reporter: Michael Martell
>            Priority: Minor
>
> As reported on StackOverflow 
> ([https://stackoverflow.com/questions/64045931/repeated-ui-calls-to-geode-native-client-attributesmutator-setcachelistener)],
>  this looks like a bug with AttributesMutator when setting multiple 
> CacheListeners.
> If I have a button on a UI that registers a listener, sync not async, and 
> click it several times, then repeatedly setting listeners on a region hangs:
> A {{Cache c}} is already initialized. This is using the C# Geode Native 
> Client.
>  ```
> {{IRegion<string, Object> d = c.GetRegion<string, Object>("deal");
> try
> \{
>     Logs.Trace("Registering key");
>     d.GetSubscriptionService().RegisterKeys(s);
>     d.AttributesMutator.SetCacheListener(new LDeal<string, Object>(c, 
> AddDeal));
> }
> catch (Exception ex)
> \{
>     new ApplicationException("Can't register key: " + clOrdId, ex);
> }}}
> ```
> Capturing screenshots from StackOverflow in the attachments.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to