[Tarantool-patches] [PATCH] Move txn from shema to a separate module (use C API instead of FFI)

Leonid Vasiliev lvasiliev at tarantool.org
Thu Nov 28 11:10:07 MSK 2019


On 11/27/19 11:31 AM, Konstantin Osipov wrote:
> * Alexander Turenko <alexander.turenko at tarantool.org> [19/11/27 00:17]:
>>>> https://github.com/tarantool/tarantool/issues/4427
>>>
>>>> https://github.com/tarantool/tarantool/tree/lvasiliev/gh-4427-move-some-stuff-from-ffi-to-c-api
>>>
>>> Please add a test case. And an explanation of how the fix solves
>>> the issue. The patch is an overkill - the trace is going through
>>> box_txn_rollback_to_savepoint, so moving it off ffi to C api
>>> should be sufficient.
>>
>> I would add a bit more context here. The original patch was made by
>> Sergey O. and I asked for extracting all related functions into its own
>> 'module'. See links below.
>>
>> https://lists.tarantool.org/pipermail/tarantool-patches/2019-September/006747.html
>> https://lists.tarantool.org/pipermail/tarantool-patches/2019-September/000734.html
>>
>> The moving of just one function should be sufficient, you're right.
>> However it is not much more work then extracting all those related
>> function into tnx.{c,h,lua}. So I think it worth to do just here.
>>
>> Are you agree that box/lua/txn.* is more proper place for those
>> functions then box/lua/schema.lua?
> 
> The move also converts these functions from ffi to plain C.
> This is what I am objecting against.
> 

Hi, thanks for your review.
1) About a test case - the bug has been detected on already exist test.
2) The problem was caused by sandwich stack Lua-FFI-> C-API-> Lua (a 
term of Vyacheslav Egorov). So, no FFI - no problem. We should not use 
FFI in box_txn_rollback_to_savepoint.
3) Alexandr point: Move all txn stuff from schema to a separate module, 
IMHO it's a good idea. Why not?
4) About converts others txn functions from FFI to C-API:
I think it's a good practice, use one or the other (FFI or C-API) in module


More information about the Tarantool-patches mailing list