Tarantool development patches archive
 help / color / mirror / Atom feed
* [PATCH 0/4] Reuse tuple formats for ephemeral spaces
@ 2019-01-22 14:07 Kirill Yukhin
  2019-01-22 14:07 ` Kirill Yukhin
  0 siblings, 1 reply; 13+ messages in thread
From: Kirill Yukhin @ 2019-01-22 14:07 UTC (permalink / raw)
  To: vdavydov.dev; +Cc: tarantool-patches, Kirill Yukhin

This patchset makes it possible to re-use tuple_format around
multiple ephemeral spaces. This is needed when many SQL requests
are served at the same time. In this case for almost each non-trivial
SELECT request ephemeral space is created with its own format.
Since removal of ephemeral spaces doesn't mean removal of format,
and formats count is limited, it is pretty much simple to run out of
formats.
This occurs on TPC-C br

Issue https://github.com/tarantool/tarantool/issues/3924
Branch https://github.com/tarantool/tarantool/commits/kyukhin/gh-3924-reuse-eph-formats

Kirill Yukhin (4):
  Pass necessary fields to tuple_format contructor
  Set is_temporary flag for formats of ephemeral spaces
  sql: set error type in case of epehemral space creation filure
  Allow to reuse tuple_formats for ephemeral spaces

 src/box/blackhole.c             |   6 +-
 src/box/box.cc                  |   4 +
 src/box/memtx_engine.c          |   6 ++
 src/box/memtx_space.c           |   9 +-
 src/box/space.c                 |   3 +-
 src/box/space_def.c             |  16 ++++
 src/box/space_def.h             |  14 ++++
 src/box/sql.c                   |   6 +-
 src/box/sql/vdbe.c              |   4 +-
 src/box/tuple.c                 |  10 ++-
 src/box/tuple_format.c          | 141 +++++++++++++++++++++++++++++---
 src/box/tuple_format.h          |  32 +++++++-
 src/box/vinyl.c                 |  12 +--
 src/box/vy_lsm.c                |  10 ++-
 src/errinj.h                    |   2 +
 test/box/errinj.result          |   8 +-
 test/sql/errinj.result          |  39 +++++++++
 test/sql/errinj.test.lua        |  14 ++++
 test/unit/tuple_bigref.c        |   1 +
 test/unit/vy_iterators_helper.c |  14 ++--
 test/unit/vy_mem.c              |   5 +-
 test/unit/vy_point_lookup.c     |   5 +-
 22 files changed, 305 insertions(+), 56 deletions(-)

-- 
2.19.1

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

end of thread, other threads:[~2019-01-24 12:39 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-01-22 14:07 [PATCH 0/4] Reuse tuple formats for ephemeral spaces Kirill Yukhin
2019-01-22 14:07 ` Kirill Yukhin
2019-01-22 14:07   ` [PATCH 1/4] Pass necessary fields to tuple_format contructor Kirill Yukhin
2019-01-23  7:53     ` Vladimir Davydov
2019-01-24  8:13       ` Kirill Yukhin
2019-01-22 14:07   ` [PATCH 2/4] Set is_temporary flag for formats of ephemeral spaces Kirill Yukhin
2019-01-23  8:00     ` Vladimir Davydov
2019-01-24  8:53       ` Kirill Yukhin
2019-01-22 14:07   ` [PATCH 3/4] sql: set error type in case of ephemral space creation failure Kirill Yukhin
2019-01-23  8:00     ` Vladimir Davydov
2019-01-22 14:07   ` [PATCH 4/4] Allow to reuse tuple_formats for ephemeral spaces Kirill Yukhin
2019-01-23  8:38     ` Vladimir Davydov
2019-01-24 12:39       ` Kirill Yukhin

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