From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp44.i.mail.ru (smtp44.i.mail.ru [94.100.177.104]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 23CB4469710 for ; Tue, 5 May 2020 00:43:43 +0300 (MSK) From: Vladislav Shpilevoy Date: Mon, 4 May 2020 23:43:41 +0200 Message-Id: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [Tarantool-patches] [PATCH 1/1] session: deprecate box.session.push() 'sync' List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: tarantool-patches@dev.tarantool.org, kyukhin@tarantool.org box.session.push() has two parameters - data to push and 'sync'. The sync is a request ID with which the out of bound data should be pushed into a socket. This was introduced as a workaround for #3450, and is useless since its resolution. A user anyway can't push to different sessions, where that parameter could be useful. And pushing into requests of the same session, on the contrary, is something not really needed anywhere, not portable to non-binary session types (console, background), and is just dangerous since it is easy to add a bug here. The patch makes the parameter deprecated. Now on its usage there will be a rate limited warning in the logs. Part of #4689 --- Branch: http://github.com/tarantool/tarantool/tree/gerold103/gh-4689-push-sync-deprecate-2.4 Issue: https://github.com/tarantool/tarantool/issues/4689 The commit is for branch 2.4 only. src/box/lua/session.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/box/lua/session.c b/src/box/lua/session.c index 64453463a..d80e63ece 100644 --- a/src/box/lua/session.c +++ b/src/box/lua/session.c @@ -387,6 +387,8 @@ lbox_session_push(struct lua_State *L) sync = luaL_touint64(L, 2); if (sync != 0 || (lua_isnumber(L, 2) && lua_tonumber(L, 2) == 0)) { + say_warn_ratelimited("box.session.push() 'sync' " + "parameter is deprecated"); lua_pop(L, 1); break; } -- 2.21.1 (Apple Git-122.3)