From: Kirill Shcherbatov <kshcherbatov@tarantool.org>
To: tarantool-patches@freelists.org,
Vladislav Shpilevoy <v.shpilevoy@tarantool.org>
Subject: [tarantool-patches] Re: [PATCH v4 4/4] box: user-friendly interface to manage ck constraints
Date: Thu, 23 May 2019 13:41:39 +0300 [thread overview]
Message-ID: <55d520b5-40b1-1446-a319-ae2df06f4da1@tarantool.org> (raw)
In-Reply-To: <ab390cec-6e5c-8bd4-ca71-105bbc50f001@tarantool.org>
Hi! Thank you for the review.
>> the last operation would fail because 1.1 is silently
>> cast to integer 1 which is not greater than 1.
>
> 1. I do not see that comment on the branch.
...
>> +box.schema.ck_constraint_mt = ck_constraint_mt
>
> 2. Please, do not expose ck_constraint_mt.
> box.schema.<space/index>_mt are public and documented
> metatables to replace certain DML DQL operations with
> user's one.
>
> Checks does not provide methods except drop, so it
> makes no sense to make their metatable configurable.
>
> It means, that you don't need to wrap checks below.
Ok. Done.
>> +/**
>> + * Make ck_constraints available in Lua, via ck_constraint[]
>> + * array.
>> + * Returns a new table representing a space on top of the Lua
>> + * stack.
>
> 3. Representing a space? How lbox_ck_constraint can return a space?
> As I see, it does not return anything. It just modifies an existing
> space table.
>
>> + */
>> +static void
>> +lbox_ck_constraint(struct lua_State *L, struct space *space, int i)
Updated comment.
>
> 4. lbox_ck_constraint_what? If a function is not a getter, it should
> have a verb saying what the function does.
>
> What is 'i' argument? Index of space table?
This code is all similar to the code that is near it...
> 5. Why do you avoid serialization? What will happen,
> if I will write
>
> tarantool> s1.ck_constraint.physics
I don't like space_id to be show. It may differ.
>
> 6. The test does not check, that after a constraint is
> dropped, a tuple can be inserted violating the dropped
> constraint.
It is not so, actually I test exactly this case.
>
> Also, I do not see a test, that a user can't insert
> constraints with the same names.
Appended.
Tnx!
next prev parent reply other threads:[~2019-05-23 10:41 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-16 13:56 [tarantool-patches] [PATCH v4 0/4] box: run checks on insertions in LUA spaces Kirill Shcherbatov
2019-05-16 13:56 ` [tarantool-patches] [PATCH v4 1/4] schema: add new system space for CHECK constraints Kirill Shcherbatov
2019-05-19 16:01 ` [tarantool-patches] " Vladislav Shpilevoy
2019-05-23 10:32 ` Kirill Shcherbatov
2019-05-26 12:03 ` Vladislav Shpilevoy
2019-05-31 13:45 ` Kirill Shcherbatov
2019-05-16 13:56 ` [tarantool-patches] [PATCH v4 2/4] box: run check constraint tests on space alter Kirill Shcherbatov
2019-05-19 16:02 ` [tarantool-patches] " Vladislav Shpilevoy
2019-05-23 10:37 ` Kirill Shcherbatov
2019-05-16 13:56 ` [tarantool-patches] [PATCH v4 3/4] box: introduce column_mask for ck constraint Kirill Shcherbatov
2019-05-19 16:02 ` [tarantool-patches] " Vladislav Shpilevoy
2019-05-23 10:38 ` Kirill Shcherbatov
2019-05-26 12:03 ` Vladislav Shpilevoy
2019-05-31 13:45 ` Kirill Shcherbatov
2019-05-16 13:56 ` [tarantool-patches] [PATCH v4 4/4] box: user-friendly interface to manage ck constraints Kirill Shcherbatov
2019-05-19 16:02 ` [tarantool-patches] " Vladislav Shpilevoy
2019-05-23 10:41 ` Kirill Shcherbatov [this message]
2019-05-26 12:04 ` Vladislav Shpilevoy
2019-05-31 13:45 ` Kirill Shcherbatov
2019-06-03 21:15 ` Vladislav Shpilevoy
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=55d520b5-40b1-1446-a319-ae2df06f4da1@tarantool.org \
--to=kshcherbatov@tarantool.org \
--cc=tarantool-patches@freelists.org \
--cc=v.shpilevoy@tarantool.org \
--subject='[tarantool-patches] Re: [PATCH v4 4/4] box: user-friendly interface to manage ck 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