From: imeevma@tarantool.org To: korablev@tarantool.org, tsafin@tarantool.org, tarantool-patches@dev.tarantool.org Subject: [Tarantool-patches] [PATCH v3 0/3] sql: fix order of inserted rows Date: Wed, 15 Apr 2020 10:09:38 +0300 [thread overview] Message-ID: <cover.1586933931.git.imeevma@gmail.com> (raw) This patch-set fixes order of inserted rows in case ephemeral space is used during INSERT into space with sequence. The order now is the same in which these values were inserted originally. Wrong order could lead to an error in case NULL was inserted into field with sequence. https://github.com/tarantool/tarantool/issues/4256 https://github.com/tarantool/tarantool/tree/imeevma/gh-4256-fix-order-during-insertion #ChangeLog - The inserted values will now be inserted in the order in which they were given in case of INSERT into space with sesquence (gh-4256). Changes: v1: - Patch fixed the problem but the logic was too complex. v2: - After exanding of ephemeral space formats, solution become simpler. v3: - Expansion of ephemeral space format was divided into two patches. Mergen Imeev (3): box: extend ephemeral space format sql: specify field types in ephemeral space format sql: do not change order of inserted values src/box/space_def.c | 12 ++-- src/box/space_def.h | 5 +- src/box/sql.c | 73 +++++++++++++++++----- src/box/sql/insert.c | 27 +++++++- src/box/sql/select.c | 2 + src/box/sql/sqlInt.h | 2 + src/box/sql/vdbe.c | 19 +----- src/box/tuple_format.c | 22 +++---- ...256-do-not-change-order-during-insertion.result | 44 +++++++++++++ ...6-do-not-change-order-during-insertion.test.sql | 13 ++++ 10 files changed, 167 insertions(+), 52 deletions(-) create mode 100644 test/sql/gh-4256-do-not-change-order-during-insertion.result create mode 100644 test/sql/gh-4256-do-not-change-order-during-insertion.test.sql -- 2.7.4
next reply other threads:[~2020-04-15 7:09 UTC|newest] Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-04-15 7:09 imeevma [this message] 2020-04-15 7:09 ` [Tarantool-patches] [PATCH v3 1/3] box: extend ephemeral space format imeevma 2020-04-15 7:09 ` [Tarantool-patches] [PATCH v3 2/3] sql: specify field types in " imeevma 2020-04-15 7:09 ` [Tarantool-patches] [PATCH v3 3/3] sql: do not change order of inserted values imeevma 2020-04-16 0:09 ` Nikita Pettik 2020-04-16 8:33 ` Mergen Imeev 2020-04-16 13:29 ` [Tarantool-patches] [PATCH v3 0/3] sql: fix order of inserted rows Nikita Pettik
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=cover.1586933931.git.imeevma@gmail.com \ --to=imeevma@tarantool.org \ --cc=korablev@tarantool.org \ --cc=tarantool-patches@dev.tarantool.org \ --cc=tsafin@tarantool.org \ --subject='Re: [Tarantool-patches] [PATCH v3 0/3] sql: fix order of inserted rows' \ /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