Wednesday, 4 March 2015

SUBSCRIBE ISSUE WITH GEMFIRE (CONNECTION CONNECTS AND DISCONNECTS )




                                           SUBSCRIBE ISSUE WITH GEMFIRE (CONNECTION CONNECTS                                                     AND DISCONNECTS )


Lately this evening I got stuck with an issue with one of or Gemfire Clients not able to subscribe to our gemfire cache.

We are using CQ Services of Gemfire to give our external client to query our cache .

Now one of our client informed us that post their overnight release they are not been able to  get any updates from our gemfire cache.

On looking deep into the logs of our Gemfire it seemed like their system was connecting and disconnecting again and again , this process of connection creation and disconnection was continuously happening but there weren't any more errors on our side.

With having no clue on our side , we tried to replicate the scenario in our lower ENV's

Here we asked the same client to connect their lower ENV to one of our lower ENV , increase their logs to level of trace , increase Gemfire logs to 'all' .

Once they connected and our cache attempted to send them the data as part of subscription notification , we were able to replicate the problem of connecting and disconnecting system .

But as the logs were at their deepest level , we noticed an exception on their side .

Now this exception was due to their own wrong code ( it was a business level exception ) , which they weren't catching properly.

Now once they fixed this issue , and reconnected to our server , they were able to get updates from our server and the issue of rigorous connection-disconnection also stopped .

So what I Assume  : If a client level application exception occurs , gemfire subscription process stops the subscription and tries to connect again and again try to publish the same message . This was causing the connecting-disconnecting problem to appear .

So if someone is too facing the same problem , they can increase the log levels on client side and analyze that log for more info.