[ 
https://issues.apache.org/jira/browse/GEODE-1471?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15310606#comment-15310606
 ] 

Barry Oglesby commented on GEODE-1471:
--------------------------------------

Details from the customer:
{noformat}
We are using the Async queue mechanism when inserting objects into the regions, 
which is defined as follows:
<async-event-queue id="myQueue" persistent="false" parallel="true" 
batch-size="10"
        disk-store-name="queue-overflow" maximum-queue-memory="256">
                <gateway-event-filter>
                        <class-name>imdg.listeners.myClassFilter</class-name>
                </gateway-event-filter>
                <gateway-event-substitution-filter>
                        
<class-name>imdg.listeners.myClassSubstitutionFilter</class-name>
                </gateway-event-substitution-filter>
                <async-event-listener>
                        <class-name>imdg.listeners.myClassListener</class-name>
                </async-event-listener>
</async-event-queue>

In gemfire version 8.2,these were the steps for inserting the object to the 
queue :

- SubstitutionFilter : we are taking the required objects from the event object 
and return them as the result to the filter.
- Filter: beforeEnqueue method is invoked and it’s decided if the object will 
be passed to the listener. (In our filter classes - if the object is null we 
are not sending it to the listener)
- Listener: gets the de-serialized value, processes it puts it in the relevant 
regions.

Seems like in geode we are not passing through beforeEnqueue method in the 
Fillter step, and the null objects are not been filtered.
This means that when there is no object to pass through the queue, still null 
will be passed, and in the listener code, when asking for the de-serialized 
value, we are getting also the null object, which results in a Null Pointer 
Exception.

Was anything changed recently in the Async queue mechanism?
{noformat}

> GatewayEventFilter callbacks are not invoked when an AsyncEventQueues is 
> configured using xml
> ---------------------------------------------------------------------------------------------
>
>                 Key: GEODE-1471
>                 URL: https://issues.apache.org/jira/browse/GEODE-1471
>             Project: Geode
>          Issue Type: Bug
>          Components: wan
>            Reporter: Barry Oglesby
>            Assignee: Barry Oglesby
>
> None of the {{GatewayEventFilter}} callbacks are invoked when configuring 
> {{AsyncEventQueues}} using xml.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to