Tarantool development patches archive
 help / color / mirror / Atom feed
From: Nikita Pettik <korablev@tarantool.org>
To: Mergen Imeev <imeevma@tarantool.org>
Cc: tarantool-patches@dev.tarantool.org,
	Vladislav Shpilevoy <v.shpilevoy@tarantool.org>
Subject: Re: [Tarantool-patches] [PATCH 4/5] sql: replace control pragmas by SET
Date: Wed, 27 Nov 2019 17:03:17 +0300	[thread overview]
Message-ID: <20191127140317.GA56049@tarantool.org> (raw)
In-Reply-To: <20191127130156.GA31045@tarantool.org>

On 27 Nov 16:01, Mergen Imeev wrote:
> On Wed, Nov 27, 2019 at 03:49:42PM +0300, Konstantin Osipov wrote:
> > Ok, this goal is nice, but now that it is clear it is a different goal than
> > fixing pragmas, what about making e.g. box.cfg settings available from all
> > interfaces? Adding access to global defaults, not just session defaults? Or
> > plugin settings, like log? Even though the declared  aim is to come up with
> > a general solution, the implementation leaves a lot of questions unanswered.
> > 
> So, at the end we have the following questions:
> 1) Should we return the SQL tuning value when SET is used as
> follows:
> 
> SET <setup name>;

It may sound trite but why not look at other DBs? For instance,
PosgtreSQL uses SHOW command, which looks OK personally to me.
Or alternatively why can't we simply use _sql_settings:select("default_engine")? 
In this case SHOW will be purely SQL shortcut for :select().

> 2) Should we remove _vsession_settings from the problem.

What is the problem? What are alternatives?
 
> 3) If we move sysview out of the problem, where should we move it.

What do you mean by "move sysview out of the problem"?

Could you please clarify last two question.

> I have no answers to these questions. I hope Kirill, Vlad,
> Nikita and Sasha will be able to answer them.
> 
> > On Wed, Nov 27, 2019, 15:21 Mergen Imeev <imeevma@tarantool.org> wrote:
> > 
> > > On Wed, Nov 27, 2019 at 02:39:17PM +0300, Konstantin Osipov wrote:
> > > > * Mergen Imeev <imeevma@tarantool.org> [19/11/27 14:27]:
> > > > > > But how are you going to fix it? By making SET statement powerful
> > > > > > enough to query a value or by making the sysview updatable?
> > > > > >
> > > > > Since all settings are saved in a “struct session”, I
> > > > > think that I will use the same methods PRAGMA used. The
> > > > > system view reads from current_session(), so SET will
> > > > > also read from there.
> > > >
> > > > OK, so you are going to allow SET to return an existing value,
> > > > without setting it. Then what is the point of having a view,
> > > > if you can both get and set the values using SET statement?
> > > >
> > > I agree that _vsession_settings can be moved from this
> > > issue to another. It is here due to historical reasons -
> > > at first it was called _vsql_settings and served as the
> > > only way to get SQL setting values. Even now, even if this
> > > is still the only way to get the values, it can be
> > > transferred to another issue. If we allow to get the
> > > setting value using the SET statement, then this is
> > > definitely worth doing.
> > >
> > > However, the basic concept of _vsession_settings is
> > > slightly different. As I said earlier, it allows you to
> > > get the current values of the session settings from all
> > > interfaces.
> > >
> > > > --
> > > > Konstantin Osipov, Moscow, Russia
> > >

  reply	other threads:[~2019-11-27 14:03 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-27 10:13 [Tarantool-patches] [PATCH 0/5] Introduce SQL SET statement imeevma
2019-11-27 10:13 ` [Tarantool-patches] [PATCH 1/5] sql: remove PRAGMA "count_changes" imeevma
2019-11-27 10:13 ` [Tarantool-patches] [PATCH 2/5] sql: remove PRAGMA "short_column_names" imeevma
2019-11-27 10:13 ` [Tarantool-patches] [PATCH 3/5] temporary: disable boolean.test.sql imeevma
2019-11-27 10:13 ` [Tarantool-patches] [PATCH 4/5] sql: replace control pragmas by SET imeevma
2019-11-27 10:45   ` Mergen Imeev
2019-11-27 10:51   ` Konstantin Osipov
2019-11-27 11:05     ` Mergen Imeev
2019-11-27 11:10       ` Konstantin Osipov
2019-11-27 11:24         ` Mergen Imeev
2019-11-27 11:39           ` Konstantin Osipov
2019-11-27 12:21             ` Mergen Imeev
2019-11-27 12:49               ` Konstantin Osipov
2019-11-27 13:01                 ` Mergen Imeev
2019-11-27 14:03                   ` Nikita Pettik [this message]
2019-11-27 21:50                     ` Konstantin Osipov
2019-11-27 23:22                   ` Vladislav Shpilevoy
2019-11-28 12:31                     ` Konstantin Osipov
2019-11-28 14:01                       ` Nikita Pettik
2019-11-28 15:52                         ` Konstantin Osipov
2019-11-27 23:18       ` Vladislav Shpilevoy
2019-11-27 10:13 ` [Tarantool-patches] [PATCH 5/5] sql: refactor PRAGMA-related code imeevma

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=20191127140317.GA56049@tarantool.org \
    --to=korablev@tarantool.org \
    --cc=imeevma@tarantool.org \
    --cc=tarantool-patches@dev.tarantool.org \
    --cc=v.shpilevoy@tarantool.org \
    --subject='Re: [Tarantool-patches] [PATCH 4/5] sql: replace control pragmas by SET' \
    /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