Tarantool development patches archive
 help / color / mirror / Atom feed
* [PATCH v9 0/6] box: Indexes by JSON path
@ 2019-02-03 10:20 Kirill Shcherbatov
  2019-02-03 10:20 ` [PATCH v9 1/6] lib: update msgpuck library Kirill Shcherbatov
                   ` (5 more replies)
  0 siblings, 6 replies; 15+ messages in thread
From: Kirill Shcherbatov @ 2019-02-03 10:20 UTC (permalink / raw)
  To: tarantool-patches, vdavydov.dev; +Cc: Kirill Shcherbatov

Sometimes field data could have complex document structure.
When this structure is consistent across whole document,
you are able to create an index by JSON path.

Changes in version 9:
    - new test cases for snapshooting, recovery, selects by full
      and partial; primary and secondary indexes
    - fixed corrupted vylog - there was invalid key_part_def
      duplication in vy_log.c
    - fixed vynyl's replace operation
    - support for nullable key_def in
      tuple_extract_key_slowpath_raw even it is never used with
      has_optional_parts = true in Tarantool (since everywhere it
      is used for pk that can't contain nullable parts)
    - better comments everywhere

v8:
https://www.freelists.org/post/tarantool-patches/PATCH-v8-55-box-specify-indexes-in-userfriendly-form,1
v7:
https://www.freelists.org/post/tarantool-patches/PATCH-v7-55-box-specify-indexes-in-userfriendly-form,1
v6:
https://www.freelists.org/post/tarantool-patches/PATCH-v6-88-box-specify-indexes-in-userfriendly-form,1
v5:
https://www.freelists.org/post/tarantool-patches/PATCH-v5-99-box-specify-indexes-in-userfriendly-form,1

http://github.com/tarantool/tarantool/tree/kshch/gh-1012-json-indexes
https://github.com/tarantool/tarantool/issues/1012

Kirill Shcherbatov (6):
  lib: update msgpuck library
  box: introduce tuple_field_raw_by_path routine
  box: introduce JSON Indexes
  box: introduce has_json_paths flag in templates
  box: introduce offset_slot cache in key_part
  box: specify indexes in user-friendly form

 src/box/alter.cc             |   2 +-
 src/box/index_def.c          |  10 +-
 src/box/key_def.c            | 162 +++++++--
 src/box/key_def.h            |  48 ++-
 src/box/lua/schema.lua       | 100 ++++-
 src/box/lua/space.cc         |   5 +
 src/box/lua/tuple.c          |   9 +-
 src/box/memtx_engine.c       |   4 +
 src/box/sql.c                |   1 +
 src/box/sql/build.c          |   1 +
 src/box/sql/select.c         |   3 +-
 src/box/sql/where.c          |   1 +
 src/box/tuple.h              |  60 +--
 src/box/tuple_compare.cc     | 115 ++++--
 src/box/tuple_extract_key.cc | 135 ++++---
 src/box/tuple_format.c       | 441 ++++++++++++++++------
 src/box/tuple_format.h       | 200 ++++++----
 src/box/tuple_hash.cc        |  40 +-
 src/box/vinyl.c              |   4 +
 src/box/vy_log.c             |  61 +++-
 src/box/vy_point_lookup.c    |   4 +-
 src/box/vy_stmt.c            | 202 ++++++++---
 src/lib/msgpuck              |   2 +-
 test/engine/json.result      | 685 +++++++++++++++++++++++++++++++++++
 test/engine/json.test.lua    | 194 ++++++++++
 test/engine/tuple.result     |  16 +-
 test/unit/msgpack.result     |   4 +-
 27 files changed, 2095 insertions(+), 414 deletions(-)
 create mode 100644 test/engine/json.result
 create mode 100644 test/engine/json.test.lua

-- 
2.20.1

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2019-02-04 15:30 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-03 10:20 [PATCH v9 0/6] box: Indexes by JSON path Kirill Shcherbatov
2019-02-03 10:20 ` [PATCH v9 1/6] lib: update msgpuck library Kirill Shcherbatov
2019-02-04  9:48   ` Vladimir Davydov
2019-02-03 10:20 ` [PATCH v9 2/6] box: introduce tuple_field_raw_by_path routine Kirill Shcherbatov
2019-02-04 10:37   ` Vladimir Davydov
2019-02-03 10:20 ` [PATCH v9 3/6] box: introduce JSON Indexes Kirill Shcherbatov
2019-02-04 12:26   ` Vladimir Davydov
2019-02-03 10:20 ` [PATCH v9 4/6] box: introduce has_json_paths flag in templates Kirill Shcherbatov
2019-02-04 12:31   ` Vladimir Davydov
2019-02-03 10:20 ` [PATCH v9 5/6] box: introduce offset_slot cache in key_part Kirill Shcherbatov
2019-02-04 12:56   ` Vladimir Davydov
2019-02-04 13:02     ` [tarantool-patches] " Kirill Shcherbatov
2019-02-04 15:10   ` Vladimir Davydov
2019-02-03 10:20 ` [PATCH v9 6/6] box: specify indexes in user-friendly form Kirill Shcherbatov
2019-02-04 15:30   ` Vladimir Davydov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox