Tarantool development patches archive
 help / color / mirror / Atom feed
From: Nikita Pettik <korablev@tarantool.org>
To: Chris Sosnin <k.sosnin@tarantool.org>
Cc: tarantool-patches@dev.tarantool.org,
	Vladislav Shpilevoy <v.shpilevoy@tarantool.org>
Subject: Re: [Tarantool-patches] [PATCH v2] iproto: add an empty body to the unprepare response
Date: Sat, 7 Mar 2020 22:02:28 +0000	[thread overview]
Message-ID: <20200307220228.GF12214@tarantool.org> (raw)
In-Reply-To: <91892E2F-8CEF-4461-9AF5-512016633F8A@tarantool.org>

On 06 Mar 22:58, Chris Sosnin wrote:
> 
> > On 6 Mar 2020, at 20:27, Alexander Turenko <alexander.turenko@tarantool.org> wrote:
> > 
> > On Thu, Mar 05, 2020 at 08:41:35AM +0000, Nikita Pettik wrote:
> >> On 05 Mar 08:41, Kirill Yukhin wrote:
> >>> Hello,
> >>> 
> >>> On 03 мар 19:16, Chris Sosnin wrote:
> >>>> Absence of the body in the unprepare response forces users to perform
> >>>> additional checks to avoid errors. Adding an empty body fixes this problem.
> >>>> 
> >>>> Closes #4769
> >>>> ---
> >>>> branch: https://github.com/tarantool/tarantool/tree/ksosnin/gh-4769-unprepare-response-body
> >>>> issue: https://github.com/tarantool/tarantool/issues/4769
> >>>> 
> >>>> As Nikita suggested, I created box/iproto.test.lua, and basically
> >>>> inserted wrappers for requests testing from box-py for future usage.
> >>> 
> >>> Could you please rename the test to be not so generic?
> >>> Like box/gh-4769-iproto-unprep-body or whatever.
> >> 
> >> Kirill, this test is going to assemble all iproto-related tests
> >> which don't rely on net.box module. Setting up all preparations
> >> required for raw iproto communication results in duplicating ~30-40
> >> lines of code in each test file.
> > 
> > Technically there are two ways to extract helpers from a 'core =
> > tarantool' test:
> > 
> > * Add it to, say, test/box/box.lua and to _G.protected_globals.
> > * Add it to a separate Lua file in test/box/lua and to 'lua_libs' field
> >  in test/box/suite.ini. After this you can use `require` for this
> >  module in a test.
> 
> This also seems like a fine solution, if we are to stick to the SOP, I will do this.
> 
> However, I’m not sure whether this patch fixes a bug, it is stated in the code
> that there’s nothing to send in case of unprepare, perhaps it is a feature?

It's neither bug nor feature. I didn't realize that all other
requests have empty body (what is more, docs say that nop hasn't body
but in fact nop does have body tho) while was writing this code.
As it is stated in the issue, to unify raw statement processing it is
better to add empty body to unprepare response - just refactoring that
may simplify smb's life. That's it.

Anyway, I will introduce box/iproto.test.lua since stacked diag is
a feature. (It is so ironic that developers straggle from decision
which was taken solely by Kirill.)
 
> I will resend v3 if no one gives other proposals.
> Thank you for participating in discussion!
> 
> > 
> > So technically you're not blocked here. Both ways are available and
> > don't lead to much code duplication, but the process (SOP) requires to
> > add a test for a bug to a separate file. (Personally I still don't sure
> > it is good, but anyway.)
> > 
> > NB: 'receive', not 'recieve'. Very often typo.
> 
> Thanks for the catch here too, I fixed it for the future.
> 
> > 
> > WBR, Alexander Turenko.
> 

  parent reply	other threads:[~2020-03-07 22:02 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-03 16:16 Chris Sosnin
2020-03-03 22:33 ` Vladislav Shpilevoy
2020-03-04  8:14   ` Chris Sosnin
2020-03-04 22:39     ` Vladislav Shpilevoy
2020-03-05  5:41 ` Kirill Yukhin
2020-03-05  8:41   ` Nikita Pettik
2020-03-06 17:27     ` Alexander Turenko
2020-03-06 19:58       ` Chris Sosnin
2020-03-06 20:39         ` Alexander Turenko
2020-03-07 22:02         ` Nikita Pettik [this message]
2020-03-08 17:13           ` Alexander Turenko
2020-03-15 15:34       ` Vladislav Shpilevoy
2020-03-17  8:04         ` Kirill Yukhin
2020-03-16 20:33 ` Konstantin Osipov

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=20200307220228.GF12214@tarantool.org \
    --to=korablev@tarantool.org \
    --cc=k.sosnin@tarantool.org \
    --cc=tarantool-patches@dev.tarantool.org \
    --cc=v.shpilevoy@tarantool.org \
    --subject='Re: [Tarantool-patches] [PATCH v2] iproto: add an empty body to the unprepare response' \
    /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