From: Vladislav Shpilevoy <v.shpilevoy@tarantool.org> To: tarantool-patches@freelists.org Cc: vdavydov.dev@gmail.com Subject: [PATCH 0/4] Outdate disconnected session Date: Fri, 7 Dec 2018 18:46:31 +0300 [thread overview] Message-ID: <cover.1544197465.git.v.shpilevoy@tarantool.org> (raw) Once a connection is closed, a long-running user request can not learn about this occasion. Even box.sesion.push() still works and on_disconnect triggers are not run. This patch makes things simpler: * disconnected session is marked as dead. So a user can determine if a connection is closed by looking at session type == 'dead', or checking for errors from box.session.push(); * on_disconnect triggers are run right after disconnect. Even if there are some active requests. Branch: http://github.com/tarantool/tarantool/tree/gerold103/gh-3859-outdate-session-on-disconnect Issue: https://github.com/tarantool/tarantool/issues/3859 Vladislav Shpilevoy (4): iproto: rename disconnect cmsg to destroy iproto: fire on_disconnect right after disconnect session: introduce 'dead' type session: kill a session of a closed connection src/box/iproto.cc | 78 +++++++++++++++++++++++++++------------ src/box/session.cc | 2 + src/box/session.h | 14 +++++++ test/box/net.box.result | 21 ++++++++--- test/box/net.box.test.lua | 13 +++++-- test/box/push.result | 50 +++++++++++++++++++++++++ test/box/push.test.lua | 22 +++++++++++ 7 files changed, 169 insertions(+), 31 deletions(-) -- 2.17.2 (Apple Git-113)
next reply other threads:[~2018-12-07 15:46 UTC|newest] Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-12-07 15:46 Vladislav Shpilevoy [this message] 2018-12-07 15:46 ` [PATCH 1/4] iproto: rename disconnect cmsg to destroy Vladislav Shpilevoy 2018-12-07 17:36 ` [tarantool-patches] " Konstantin Osipov 2018-12-11 12:54 ` [tarantool-patches] " Vladislav Shpilevoy 2018-12-07 15:46 ` [PATCH 2/4] iproto: fire on_disconnect right after disconnect Vladislav Shpilevoy 2018-12-07 17:37 ` [tarantool-patches] " Konstantin Osipov 2018-12-11 12:55 ` [tarantool-patches] " Vladislav Shpilevoy 2018-12-07 15:46 ` [PATCH 3/4] session: introduce 'dead' type Vladislav Shpilevoy 2018-12-07 17:38 ` [tarantool-patches] " Konstantin Osipov 2018-12-07 20:40 ` [tarantool-patches] " Vladislav Shpilevoy 2018-12-07 22:21 ` Konstantin Osipov 2018-12-07 22:42 ` Vladislav Shpilevoy 2018-12-07 15:46 ` [PATCH 4/4] session: kill a session of a closed connection Vladislav Shpilevoy 2018-12-07 17:35 ` [tarantool-patches] [PATCH 0/4] Outdate disconnected session Konstantin Osipov 2018-12-11 16:12 ` [tarantool-patches] " Vladislav Shpilevoy 2018-12-07 17:41 ` [tarantool-patches] " Konstantin Osipov 2018-12-11 16:13 ` [tarantool-patches] " Vladislav Shpilevoy
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=cover.1544197465.git.v.shpilevoy@tarantool.org \ --to=v.shpilevoy@tarantool.org \ --cc=tarantool-patches@freelists.org \ --cc=vdavydov.dev@gmail.com \ --subject='Re: [PATCH 0/4] Outdate disconnected session' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox