msemys / esjc

EventStore Java Client
MIT License
108 stars 27 forks source link

After HEARTBEAT TIMEOUT volatile subscriptions no longer pick up events #39

Closed ontehfritz closed 6 years ago

ontehfritz commented 6 years ago

2018-07-25 05:45:37:259 +0000 INFO com.github.msemys.esjc.tcp.handler.HeartbeatHandler - Closing TCP connection [/10.137.152.13:1113, L/172.17.0.4:46540] due to HEARTBEAT TIMEOUT. 2018-07-25 05:45:37:265 +0000 INFO com.github.msemys.esjc.EventStore - Connection to [/10.137.152.13:1113, L/172.17.0.4:46540] closed. 2018-07-25 05:45:38:373 +0000 INFO com.github.msemys.esjc.EventStore - Connection to [/10.137.152.13:1113, L/172.17.0.4:56154] established. 2018-07-25 05:45:38:375 +0000 INFO com.github.msemys.esjc.tcp.handler.AuthenticationHandler - Authentication SUCCESS 2018-07-25 05:45:38:376 +0000 INFO com.github.msemys.esjc.tcp.handler.IdentificationHandler - Identification [ESJC-1d2b4e11-e185-4fbd-b97a-7d63036c59c8] SUCCESS

I think after the reconnect my volatile subscription needs to be reinitialised, because it no longer picks up events when this happens. Can this process be confirmed, on what to do when a disconnect happens?

msemys commented 6 years ago

This is normal behavior of volatile subscription - when connection is lost, subscription is closed. If you need that subscription will be automatically resubscribed after client reconnect, you should use catch-up subscription eventstore.subscribeToXXXXXFrom(...).

ontehfritz commented 6 years ago

Thanks,I figured it functioned this way. I am actually using persistent connection now, so far working flawlessly, and I don't miss any events. Thanks for your time!