Hi Denis
12.11.2016, 16:19, "Denis Sotnikov" <
deanso...@gmail.com>:
> i do not make blocking calls from elliptics thread.
> i call async write_data with attached callback and get stucked.
> this happens if i set reconnect_timeout in session = 1s.
> so during 2nd call(from elliptics thread) client tries to reconnect by itself (i do nothing)
> and get stucked.
> this happens because you posting reconnect event to the same elliptics thread and waiting on future
Reconnect does not start in the context of IO thread, i.e. when you call write_data() it can not end up stucking in waiting
for reconnection. There is a dedicated reconnection thread which performs all the work.
write_data() merely allocates transaction structures and queues them into appropriate remote states or sometimes it calls
completion callback directly, i.e. not postponing this to IO completion threads.
Please show me your client log (at the highest possible log level) and code if you can