Sure.
Why I need to remove value from /Event region?
There are various events coming from upstream denoting what changes to be made
for cache wrapped as generic event in /Event region. Dedicated listener using
interest query (Select * from /Event where (someConditionForMe is true)) are
already watching /Event region as continuous query listeners. Once they process
the event, it should be removed from /Event region as clean up. I would say
/Event just works as kind of queue/topic for a use case here.
Even if I comment my code not to remove event entry from region, I still see
listener logs with 2 CREATE events. This is really strange! I can send small
demo separately. I am putting event into region using GemfireTemplate though!
public void handleEvent(CqEvent cqEvent){
if(cqEvent.getBaseOperation().isCreate()) {
logger.info("Event received with BaseOperation: {},
EventKey: {}", cqEvent.getBaseOperation(), cqEvent.getKey());
EVent event = (Event)cqEvent.getNewValue();
logger.info("Event : {}",print(event));
}
[cqListenerContainer-1] INFO c.j.r.d.c.XXXEventListener Event received with
BaseOperation: CREATE, EventKey: 0980abd4-5293-4b9b-98e7-2b8ace18c5e8
[cqListenerContainer-1] INFO c.j.r.d.c. XXXEventListener Event :
<Event><Uuid>0980abd4-5293-4b9b-98e7-2b8ace18c5e8</Uuid></Event>
[cqListenerContainer-1] INFO c.j.r.d.c. XXXEventListener Event received with
BaseOperation: CREATE, EventKey: 0980abd4-5293-4b9b-98e7-2b8ace18c5e8
[cqListenerContainer-1] INFO c.j.r.d.c. XXXEventListener Event :
<Event><Uuid>0980abd4-5293-4b9b-98e7-2b8ace18c5e8</Uuid></Event>
Thanks & Regards,
Dharam
From: Jason Huynh [mailto:[email protected]]
Sent: Tuesday, December 13, 2016 1:50 AM
To: [email protected]
Cc: [email protected]
Subject: Re: Issue with message delivery in CQListener
Hi Dharam,
Would you be able to provide more information? From the provided code, I am
unable to determine why/how a duplicate create event is being sent. It doesn't
look like that should be happening. Is there a reason why you are removing the
value in the cqListener? I would assume that ends up invoking another cq event
back to the listener but as a destroy?
-Jason
On Mon, Dec 12, 2016 at 4:18 AM, Thacker, Dharam
<[email protected]<mailto:[email protected]>> wrote:
Hi Team,
I am facing strange issue with Cq listener.
As sown below, same event is sent to cq listener client 2 times. Could someone
help me to spot if anything wrong here?
Steps I follow,
Rest Service:
// create event from client via web service
eventTemplate.put(event.getUuid(),event);
Cqlistener:
public void handleEvent(CqEvent cqEvent){
if(cqEvent.getBaseOperation().isCreate()) {
logger.info("Event received with BaseOperation: {},
EventKey: {}", cqEvent.getBaseOperation(), cqEvent.getKey());
EVent event = (Event)cqEvent.getNewValue();
logger.info("Event : {}",print(event));
gemfireTemplate.remove(event.getUuid());
}
}
<gfe:cq-listener-container id="cqListenerContainer" cache="client-cache">
<gfe:listener ref="XXXEventListener" query="SELECT * FROM
/Event"/>
</gfe:cq-listener-container>
[cqListenerContainer-1] INFO c.j.r.d.c.XXXEventListener Event received with
BaseOperation: CREATE, EventKey: 0980abd4-5293-4b9b-98e7-2b8ace18c5e8
[cqListenerContainer-1] INFO c.j.r.d.c. XXXEventListener Event :
<Event><Uuid>0980abd4-5293-4b9b-98e7-2b8ace18c5e8</Uuid></Event>
[cqListenerContainer-1] INFO c.j.r.d.c. XXXEventListener Event received with
BaseOperation: CREATE, EventKey: 0980abd4-5293-4b9b-98e7-2b8ace18c5e8
[cqListenerContainer-1] INFO c.j.r.d.c. XXXEventListener Event :
<Event><Uuid>0980abd4-5293-4b9b-98e7-2b8ace18c5e8</Uuid></Event>
Thanks & Regards,
Dharam
This email is confidential and subject to important disclaimers and conditions
including on offers for the purchase or sale of securities, accuracy and
completeness of information, viruses, confidentiality, legal privilege, and
legal entity disclaimers, available at
http://www.jpmorgan.com/pages/disclosures/email
This email is confidential and subject to important disclaimers and conditions
including on offers for the purchase or sale of securities, accuracy and
completeness of information, viruses, confidentiality, legal privilege, and
legal entity disclaimers, available at
http://www.jpmorgan.com/pages/disclosures/email