Tarantool development patches archive
 help / color / mirror / Atom feed
From: "n.pettik" <korablev@tarantool.org>
To: tarantool-patches@freelists.org
Cc: Kirill Shcherbatov <kshcherbatov@tarantool.org>
Subject: [tarantool-patches] Re: [PATCH v3 1/3] schema: add new system space for CHECK constraints
Date: Mon, 13 May 2019 02:04:30 +0300	[thread overview]
Message-ID: <3BCC24C4-8859-496A-B960-D15895D94B89@tarantool.org> (raw)
In-Reply-To: <417a7e5d-d590-a9f1-9e4c-5490180c8689@tarantool.org>



> On 12 May 2019, at 18:52, Kirill Shcherbatov <kshcherbatov@tarantool.org> wrote:
> 
>>>> tarantool> create table t2(id int primary key, constraint fk1 foreign key(id) references t2, constraint fk1 foreign key(id) references t2)
>>>> ---
>>>> - error: Constraint FK1 already exists
>>>> ...
>>>> 
>>> 
>>> And this is a bug in FK
>>> https://github.com/tarantool/tarantool/issues/4183
>> 
>> Still, we have an option to fix it: display proper error message and
>> process clean-up. Please, add a mention that in scope of issue we
>> should also use vdbe_emit_halt_with_presence_test for CK constraints
> Can't understand what do you mean. This is a problem with incorrect usage of
> vdbe_emit_halt_with_presence_test #4183. We may introduce another one
> bug beautifying this error, but should we?

I don’t ask you to add another one bug, but ask you to file this
problem to not forget to fix it when smb will implement #4183.

> Although this is unrelated problem and I don't care with error would
> be raised here.
> 
>>> At first, there is no way to control this state as you propose.
>> 
>> Ok, then we should come up with machinery which will allow us
>> to disable CK constraints, but not other NoSQL triggers.> 
>>> Next, disabling/enabling triggers is required for upgrade() functionality
>>> and is not a part of public API.
>> 
>> From user’s point of view checks are constraints. AFAIR Konstantin
>> asked for a handle to disable check and foreign key constraints.
> Again, what does turning checks on and off have to do with their
> server integration?

You broke optimisation, I suggest way (turning CK constraints on/off) to fix that.
It is not about current patch, but rather about the next one.

>>> So, I've reject xfer optimization when source or destination space has
>>> ck constraints.
>> 
>> This optimisation doesn’t seem to be vital. On the other hand, if we can
>> use it, why not to do so?
> Because in the next patch supporting this change becomes quite expensive
> and pointless, we discussed it in telegram and you agreed.

Agh, AFAIR we decided to turn it on when strings of expressions are equal.
If you don’t really want to introduce handle disabling check constraints now,
then add FIXME comment and open an issue (sql: add handle to disable
constraints). That’s it.

  reply	other threads:[~2019-05-12 23:04 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-16 13:51 [tarantool-patches] [PATCH v3 0/3] box: run checks on insertions in LUA spaces Kirill Shcherbatov
2019-04-16 13:51 ` [tarantool-patches] [PATCH v3 1/3] schema: add new system space for CHECK constraints Kirill Shcherbatov
2019-04-25 20:38   ` [tarantool-patches] " n.pettik
2019-05-07  9:53     ` Kirill Shcherbatov
2019-05-12 13:45       ` n.pettik
2019-05-12 15:52         ` Kirill Shcherbatov
2019-05-12 23:04           ` n.pettik [this message]
2019-05-13  7:11             ` Kirill Shcherbatov
2019-05-13 12:29               ` n.pettik
2019-05-13 13:13                 ` Vladislav Shpilevoy
2019-04-16 13:51 ` [tarantool-patches] [PATCH v3 2/3] box: run check constraint tests on space alter Kirill Shcherbatov
2019-04-25 20:38   ` [tarantool-patches] " n.pettik
2019-05-07  9:53     ` Kirill Shcherbatov
2019-05-07 16:39       ` Konstantin Osipov
2019-05-07 17:47         ` [tarantool-patches] " Kirill Shcherbatov
2019-05-07 20:28           ` Konstantin Osipov
2019-05-11 12:15           ` n.pettik
2019-05-12 21:12             ` Konstantin Osipov
2019-05-13  7:09               ` Kirill Shcherbatov
2019-05-13  7:49                 ` Konstantin Osipov
2019-05-14 16:49       ` n.pettik
2019-04-16 13:51 ` [tarantool-patches] [PATCH v3 3/3] box: user-friendly interface to manage ck constraints Kirill Shcherbatov
2019-04-25 20:38   ` [tarantool-patches] " n.pettik
2019-05-07  9:53     ` Kirill Shcherbatov
2019-05-14 15:02 [tarantool-patches] [PATCH v3 0/3] box: run checks on insertions in LUA spaces Kirill Shcherbatov
2019-05-14 15:02 ` [tarantool-patches] [PATCH v3 1/3] schema: add new system space for CHECK constraints Kirill Shcherbatov
2019-05-14 18:29   ` [tarantool-patches] " 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=3BCC24C4-8859-496A-B960-D15895D94B89@tarantool.org \
    --to=korablev@tarantool.org \
    --cc=kshcherbatov@tarantool.org \
    --cc=tarantool-patches@freelists.org \
    --subject='[tarantool-patches] Re: [PATCH v3 1/3] schema: add new system space for CHECK constraints' \
    /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