[PATCH 0/4] Fix sql_bind leak

Vladislav Shpilevoy v.shpilevoy at tarantool.org
Tue Dec 11 00:40:37 MSK 2018


The patchset makes struct sql_request consist of raw undecoded
MessagePack and moves its decoding into TX thread as suggested by
Kostja. Now sql_bind parameter array is decoded and freed in TX
thread in a single function. On the contrary, before the patch,
sql_bind parameters array was allocated on iproto thread region
and never was freed.

As a follow up it allowed to move xrow_decode_sql and struct
sql_request to xrow lib where all other binary requests live.

Branch: http://github.com/tarantool/tarantool/tree/gerold103/gh-3828-bind-parameters-leak
Issue: https://github.com/tarantool/tarantool/issues/3828

Vladislav Shpilevoy (4):
  sql: remove sync from sql_request/response
  Revert "box: store sql text and length in sql_request"
  sql: decode bind parameters in TX thread
  sql: move sql_request and xrow_decode_sql to xrow lib

 src/box/execute.c | 100 +++++++---------------------------------------
 src/box/execute.h |  56 +++++++++++---------------
 src/box/iproto.cc |  17 ++++++--
 src/box/xrow.c    |  46 +++++++++++++++++++++
 src/box/xrow.h    |  19 +++++++++
 5 files changed, 118 insertions(+), 120 deletions(-)

-- 
2.17.2 (Apple Git-113)




More information about the Tarantool-patches mailing list