Hi, When we talk about a reconnection, we mean the recovery after an unexpected interruption of the previous connection, which is operated by the library and implies that the previous session has closed and a new one is established.
Hence, we talk about something that was not supposed to happen, but might have been caused by an external (e.g. network) problem.

We define "temporary" the condition in which a session has closed and the new one hasn't been established yet.
It is a temporary state because it is not permanent; but, actually, we have no control on the real duration of this state.

Upon such recovery, the LSProxy tries to fill the gap in updates in some way.
In particular, in MERGE mode, it asks for the snapshot on the new session and this restores the current state.
From the application point of view, it receives a single update which is the merging of all updates occurred during the gap
(or nothing at all, if no updates occurred or the state has finally remained the same).
Unless unfiltered dispatching was requested, this is still consistent with the subscription "contract".
The recovery is more complicated in DISTINCT mode; if you are interested in what happens exactly, please confirm.