[tarantool-patches] Re: [PATCH 1/1] box: add a method to check if transaction is open

Vladislav Shpilevoy v.shpilevoy at tarantool.org
Sun Sep 23 13:11:58 MSK 2018


For me LGTM as well. Kirill, please, push it.

On 22/09/2018 03:00, Alexander Turenko wrote:
> Hi!
> 
> LGTM for the whole patchset.
> 
> Vlad, can you look at the patchset, please?
> 
> branch: romankhabibov/gh-3518-check-if-txn
> issue: https://github.com/tarantool/tarantool/issues/3518
> 
> WBR, Alexander Turenko.
> 
> On Sat, Sep 22, 2018 at 01:29:15AM +0300, roman.habibov1 at yandex.ru wrote:
>>
>> Hi! Thanks for review.
>>
>>> Can be reduced to just `box.is_in_txn = builtin.box_txn`.
>> Done.
>>
>> commit 34325f03ab2abc3e3cf237b2310819734447e076
>> Author: Roman Khabibov <roman.habibov1 at yandex.ru>
>> Date:   Fri Sep 7 02:54:28 2018 +0300
>>
>>      box: add a method to check if txn is open
>>      
>>      Closes: #3518.
>>
>> diff --git a/src/box/lua/schema.lua b/src/box/lua/schema.lua
>> index 74b7064..8a804f0 100644
>> --- a/src/box/lua/schema.lua
>> +++ b/src/box/lua/schema.lua
>> @@ -64,6 +64,8 @@ ffi.cdef[[
>>                       const char *key, const char *key_end);
>>       /** \endcond public */
>>       /** \cond public */
>> +    bool
>> +    box_txn();
>>       int64_t
>>       box_txn_id();
>>       int
>> @@ -321,6 +323,8 @@ box.begin = function()
>>       end
>>   end
>>   
>> +box.is_in_txn = builtin.box_txn
>> +
>>   box.savepoint = function()
>>       local csavepoint = builtin.box_txn_savepoint()
>>       if csavepoint == nil then
>> diff --git a/test/box/misc.result b/test/box/misc.result
>> index d9f8d4e..325af3b 100644
>> --- a/test/box/misc.result
>> +++ b/test/box/misc.result
>> @@ -67,6 +67,7 @@ t
>>     - index
>>     - info
>>     - internal
>> +  - is_in_txn
>>     - on_commit
>>     - on_rollback
>>     - once
>> diff --git a/test/box/transaction.result b/test/box/transaction.result
>> index e024084..8a4d11d 100644
>> --- a/test/box/transaction.result
>> +++ b/test/box/transaction.result
>> @@ -43,6 +43,30 @@ box.begin() box.rollback();
>>   box.commit();
>>   ---
>>   ...
>> +--
>> +-- gh-3518: Add is_in_txn().
>> +--
>> +-- no active transaction - false
>> +box.is_in_txn();
>> +---
>> +- false
>> +...
>> +-- active transaction - true
>> +box.begin();
>> +---
>> +...
>> +box.is_in_txn();
>> +---
>> +- true
>> +...
>> +-- no active transaction - false
>> +box.commit();
>> +---
>> +...
>> +box.is_in_txn();
>> +---
>> +- false
>> +...
>>   fiber = require('fiber');
>>   ---
>>   ...
>> diff --git a/test/box/transaction.test.lua b/test/box/transaction.test.lua
>> index e1d258e..8f7dfed 100644
>> --- a/test/box/transaction.test.lua
>> +++ b/test/box/transaction.test.lua
>> @@ -19,6 +19,19 @@ box.begin() box.rollback() box.rollback();
>>   box.begin() box.rollback();
>>   -- no current transaction - implicit begin
>>   box.commit();
>> +
>> +--
>> +-- gh-3518: Add is_in_txn().
>> +--
>> +-- no active transaction - false
>> +box.is_in_txn();
>> +-- active transaction - true
>> +box.begin();
>> +box.is_in_txn();
>> +-- no active transaction - false
>> +box.commit();
>> +box.is_in_txn();
>> +
>>   fiber = require('fiber');
>>   function sloppy()
>>       box.begin()




More information about the Tarantool-patches mailing list