From: Alexander Turenko <alexander.turenko@tarantool.org>
To: Mergen Imeev <imeevma@tarantool.org>
Cc: tarantool-patches@dev.tarantool.org
Subject: Re: [Tarantool-patches] [PATCH v2 test-run 1/1] sql: add another way to change SQL default engine
Date: Mon, 30 Dec 2019 06:09:04 +0300 [thread overview]
Message-ID: <20191230030904.ajxcgod553i424e2@tkn_work_nb> (raw)
In-Reply-To: <c0f30b2e1e5fe6155c9812d1c7188941b6d2eab5.1577629010.git.imeevma@gmail.com>
> >> diff --git a/lib/tarantool_server.py b/lib/tarantool_server.py
> >> index 6f71b5b..20a398e 100644
> >> --- a/lib/tarantool_server.py
> >> +++ b/lib/tarantool_server.py
> >> @@ -145,12 +145,19 @@ class LuaTest(Test):
> >> return True
> >>
> >> engine = self.run_params['engine']
> >> - command = "pragma sql_default_engine='{}'".format(engine)
> >> - result = self.send_command(command, ts, 'sql')
> >> - result = result.replace('\r\n', '\n')
> >> - if result != '---\n- row_count: 0\n...\n':
> >> - sys.stdout.write(result)
> >> - return False
> >> +
> >> + command_new = ("UPDATE \"_session_settings\" SET \"value\" = '{}' " + \
> >> + "WHERE \"name\" = 'sql_default_engine'").format(engine)
> >> + result_new = self.send_command(command_new, ts, 'sql')
> >> + result_new = result_new.replace('\r\n', '\n')
> >> +
> >> + command_old = "pragma sql_default_engine='{}'".format(engine)
> >> + result_old = self.send_command(command_old, ts, 'sql')
> >> + result_old = result_old.replace('\r\n', '\n')
> >> + if result_new != '---\n- row_count: 1\n...\n':
> >> + if result_old != '---\n- row_count: 0\n...\n':
> >> + sys.stdout.write(result_old)
> >> + return False
> >
> > I would make it like so:
> >
> > 1. Send "pragma ...", await a result.
> > - If succeeds, return True.
> > - Otherwise proceed with the step 2.
> > 2. Send "UPDATE ...", await a result.
> > - If succeeds, return True.
> > - Otherwise return False.
> >
> Fixed.
Ouch, occasionally I misdirected you. Sorry. I intend to say that we
should send the new-style command first and only then (if it fails) send
old-style "pragma ..." command.
This way we'll optimize the case when the new tarantool is tested that
will be most often case after some time.
> > This way we'll save one extra hop on a fresh tarantool. Not so big
> > overhead for an action that is run once for a test, but we can overcome
> > it and pay nothing, so it looks worthful for me.
next prev parent reply other threads:[~2019-12-30 3:09 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-29 14:20 imeevma
2019-12-30 3:09 ` Alexander Turenko [this message]
2019-12-30 9:55 ` Mergen Imeev
2019-12-30 17:14 ` Alexander Turenko
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=20191230030904.ajxcgod553i424e2@tkn_work_nb \
--to=alexander.turenko@tarantool.org \
--cc=imeevma@tarantool.org \
--cc=tarantool-patches@dev.tarantool.org \
--subject='Re: [Tarantool-patches] [PATCH v2 test-run 1/1] sql: add another way to change SQL default engine' \
/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