Tarantool development patches archive
 help / color / mirror / Atom feed
From: Vladislav Shpilevoy <v.shpilevoy@tarantool.org>
To: tarantool-patches@freelists.org, Kirill Yukhin <kyukhin@tarantool.org>
Subject: [tarantool-patches] Re: [PATCH 0/5] JSON update preparation
Date: Thu, 22 Aug 2019 23:18:57 +0200	[thread overview]
Message-ID: <9d4fb1ba-2bca-26ab-f1b3-ae977ee95461@tarantool.org> (raw)
In-Reply-To: <cover.1563054879.git.v.shpilevoy@tarantool.org>

Hi! As you asked, I rebased it. But not on the
latest master, because the latest one crashes.
Nonetheless, conflicting part about decimals update
is fixed, so once the master is stable, it should be
pushable without new conflicts.

On 14/07/2019 00:11, Vladislav Shpilevoy wrote:
> The patchset is mainly about rope and its usage. Rope is a data structure
> allowing to modify an array with memory overhead not depending on the array
> size. Only on the number of modifications. It is used when there is a long
> array of something, and a one wants to insert new elements, delete existing
> ones, change their values, but do not rebuild the whole array each time.
> 
> Rope is going to be one of the core data structures of the incoming JSON path
> updates, and this patchset makes it faster and lighter.
> 
> Branch: http://github.com/tarantool/tarantool/tree/gerold103/gh-1261-update-json-prepare
> Issue: https://github.com/tarantool/tarantool/issues/1261
> 
> Vladislav Shpilevoy (5):
>   tuple: remove alloc and alloc_ctx args from update()
>   rope: make rope library macro template
>   tuple: relax struct tuple_update dependency on rope
>   int96: add a missing header
>   tuple: implement update by field name
> 
>  debian/copyright            |   2 +-
>  src/box/errcode.h           |   4 +-
>  src/box/lua/tuple.c         |  10 +-
>  src/box/memtx_space.c       |  27 +-
>  src/box/space.c             |  26 +-
>  src/box/sql/insert.c        |   3 +-
>  src/box/sql/resolve.c       |   4 +-
>  src/box/sql/update.c        |   2 +-
>  src/box/tuple.c             |  18 +-
>  src/box/tuple_update.c      | 292 +++++++++--------
>  src/box/tuple_update.h      |  25 +-
>  src/box/vinyl.c             |  19 +-
>  src/box/vy_upsert.c         |  31 +-
>  src/lib/bit/int96.h         |   1 +
>  src/lib/salad/rope.c        | 479 +++++-----------------------
>  src/lib/salad/rope.h        | 617 +++++++++++++++++++++++++++++++-----
>  test/box/misc.result        |   3 +-
>  test/box/update.result      |   2 +-
>  test/engine/update.result   |  67 ++++
>  test/engine/update.test.lua |  28 ++
>  test/engine/upsert.result   |   2 +-
>  test/unit/column_mask.c     |  33 +-
>  test/unit/rope.c            |   1 -
>  test/unit/rope_avl.c        |   1 -
>  test/unit/rope_basic.c      |   1 -
>  test/unit/rope_common.h     |  41 ++-
>  test/unit/rope_stress.c     |   5 +-
>  27 files changed, 993 insertions(+), 751 deletions(-)
> 

  parent reply	other threads:[~2019-08-22 21:15 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-13 22:11 Vladislav Shpilevoy
2019-07-13 22:11 ` [PATCH 1/5] tuple: remove alloc and alloc_ctx args from update() Vladislav Shpilevoy
2019-07-13 22:11 ` [PATCH 2/5] rope: make rope library macro template Vladislav Shpilevoy
2019-07-13 22:11 ` [PATCH 3/5] tuple: relax struct tuple_update dependency on rope Vladislav Shpilevoy
2019-07-13 22:11 ` [PATCH 4/5] int96: add a missing header Vladislav Shpilevoy
2019-07-13 22:11 ` [PATCH 5/5] tuple: implement update by field name Vladislav Shpilevoy
2019-07-31 12:15 ` [PATCH 0/5] JSON update preparation Vladimir Davydov
2019-07-31 20:36   ` [tarantool-patches] " Vladislav Shpilevoy
2019-08-22 21:18 ` Vladislav Shpilevoy [this message]
2019-08-27 22:08 ` [tarantool-patches] " Kirill Yukhin

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=9d4fb1ba-2bca-26ab-f1b3-ae977ee95461@tarantool.org \
    --to=v.shpilevoy@tarantool.org \
    --cc=kyukhin@tarantool.org \
    --cc=tarantool-patches@freelists.org \
    --subject='[tarantool-patches] Re: [PATCH 0/5] JSON update preparation' \
    /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