- Aug 19, 2021
-
-
VitaliyaIoffe authored
Follow-up #6185
-
Mergen Imeev authored
-
Mergen Imeev authored
After this patch SQL built-in function QUOTE() will return the argument in case DOUBLE value is given. If the argument is not number, string representation of the argument will be returned. Closes #6239 @TarantoolBot document Title: QUOTE() and DOUBLE argument After this patch function QUOTE() will return argument in case it receives DOUBLE value as an argument. The same for all other numeric types. In case it was given value of non-numeric type, it will return string representation of the argument.
-
VitaliyaIoffe authored
New release policy defines pre-release tags: *-alpha*, *-beta*, *-rc*. Packages with these tags must be published to pre-release folder in the S3 repo. Was added PRERELEASE_REPO_S3_DIR path to all workflows with packaging *.rpm and *.deb and fixed conditions for updating the S3 repo. Needs for: #6185
-
VitaliyaIoffe authored
New release policy provides new rules for publishing packages. Now, only major version is defining bucket repo, for more convenience use next naming series-<MAJOR_VERSION>. Needs for: #6185
-
VitaliyaIoffe authored
According to the new release policy live packages are not allowed. Only releases and pre-releases would be published to the S3. Needs for: #6185
-
Igor Munkin authored
This patch enables all tests in tarantool/luajit to be run in CI, since all issues found with them are finally resolved in scope of the commit 847b096e ('luajit: bump new version'). Follows up #6098 Follows up tarantool/tarantool-qa#120 Reviewed-by:
Sergey Kaplun <skaplun@tarantool.org> Reviewed-by:
Vitaliia Ioffe <v.ioffe@tarantool.org> Signed-off-by:
Igor Munkin <imun@tarantool.org>
-
Igor Munkin authored
* ARM64: Fix exit stub patching. * arm64: fix cur_L restoration on error throw Closes #6098 Closes #6189 Part of #5629 Relates to #6323 Follows up #1516
-
Igor Munkin authored
This patch adds changelog entry for commit 027775ff ('lua: refactor port_lua_do_dump and encode_lua_call'). Follows up #6248 Follows up #4617 Signed-off-by:
Igor Munkin <imun@tarantool.org>
-
Igor Munkin authored
This patch adds changelog entry for commit ba5398c7 ('luajit: bump new version'). Follows up #6224 Follows up #6227 Signed-off-by:
Igor Munkin <imun@tarantool.org>
-
Mergen Imeev authored
This patch introduces arithmetic for DECIMAL in SQL. After this patch, DECIMAL values can participate in arithmetic along with INTEGER, UNSIGNED, DOUBLE, and other DECIMAL values. Part of #4415
-
Mergen Imeev authored
This patch introduces implicit and explicit cast of the DECIMAL field in SQL. Implicit cast to and from DECIMAL is precise. Explicit conversion to decimal and back could lead to loss of precision. Part of #4415
-
Mergen Imeev authored
This patch introduces a decimal field type. However, implicit and explicit casts and arithmetic operations for this type will be presented in next few patches. Literals also will be introduced later. Part of #4415
-
Mergen Imeev authored
This patch introduces function decimal_is_neg() which checks that decimal is less than zero. Needed for #4415
-
- Aug 18, 2021
-
-
Egor Elchinov authored
RW transactions used to commit without problems after rollback of transactions holding stories responsible to track their reads. That behaviour led to unserializable results. This patch fixes this problem. Closes #6325
-
mechanik20051988 authored
There are two cases in lua trigger implementation, which leads to access to freed memory: if trigger removes itself and if trigger yields and someone destroy it. These problems was fixed by remembering the necessary fields from the trigger structure in local variables before calling trigger function. Closes #6266
-
Mergen Imeev authored
After this patch, SCALAR values will be able to be compared with values of any other scalar type. The comparison will be done according to the SCALAR rules, which means boolean values < numeric values < string values < binary values < uuid values. Closes #6221 @TarantoolBot document Title: SCALAR and NUMBER values in SQL SCALAR values can now be compared with values of any other scalar type, but cannot be implicitly cast to any other scalar type. This means that SCALAR values cannot participate in arithmetic, bitwise operations, concatenation, or functions that, by definition, do not accept SCALAR values. NUMBER values now also cannot be implicitly cast to any other numeric type, which means that NUMBER values cannot participate in arithmetic and bitwise operations, or in functions that, by definition, do not accept NUMBER values.
-
Mergen Imeev authored
Part of #6221
-
Mergen Imeev authored
Part of #6221
-
Mergen Imeev authored
This patch disallows arithmetic operations for SCALAR and NUMBER values. It also corrects the description of the error that is generated when an inappropriate value participates in an arithmetic operation. Part of #6221
-
Mergen Imeev authored
This patch disallows implicit cast during INSERT and UPDATE from SCALAR to any other scalar types and from NUMBER to any other numeric types. Part of #6221
-
Mergen Imeev authored
This patch re-introduces the NUMBER and SCALAR meta-types. They were introduced some time ago, however there were some problems with how they worked and some properties of these meta-types were not implemented. New properties of meta-type SCALAR in SQL: 1) typeof() with SCALAR argument returns "scalar"; 2) Any value of any scalar type can be implicitly cast to SCALAR; 3) SCALAR values can be compared with any value of any other scalar type; 4) SCALAR values cannot be implicitly cast to any other scalar type; 5) SCALAR values cannot participate in arithmetic or bitwise operations; 6) SCALAR values cannot be concatenated with other values. New properties of meta-type NUMBER in SQL: 1) typeof() with NUMBER argument returns "number"; 2) Any value of a numeric type can be implicitly cast to NUMBER; 3) NUMBER values can be implicitly cast to SCALAR; 4) NUMBER cannot be implicitly cast to any other numeric type; 5) NUMBER values cannot participate in arithmetic or bitwise operations; This patch only applies 1) and 2) for both meta-types. All other properties will be presented in the next patches. Part of #6221
-
Mergen Imeev authored
This patch removes the enum field_type from the struct MEM since the only place where this field was used is in the typeof() function. After this patch, typeof() will return "NULL" if it receives NULL. Prior to this patch, the field type was returned if it was set, otherwise it was returned "boolean". Another reason for the removal was that field_type was quite volatile and could change in unexpected places. Also, this patch made another change: values of the field type NUMBER will now be processed by the typeof() as INTEGER or DOUBLE, depending on the storage type. However, this will be fixed in the next patch. Part of #5956 Needed for #6221
-
Mergen Imeev authored
Prior to this patch, most ephemeral space fields were defined using the SCALAR type. After this patch, almost all fields will be properly defined. However, there are still cases where SCALAR will be set by default. For example, in IN, where rules is still not defined (#4692). Another example is when a field is not resolved because of a too complex query. Part of #6213
-
Mergen Imeev authored
This patch renames sql_ephemeral_space_new() to sql_template_space_new() and sql_ephemeral_space_def_new() to sql_template_space_def_new(). The objects created by these functions are not really ephemeral space or space_def and have a single purpose - to create a "template" space that will be used later when creating real space. Needed for #6213
-
Yaroslav Dynnikov authored
Import of `table.new` module was removed as a part of net.box refactoring in commit 954194a1. The `table.new` method became unavailable in Tarantool. This commit returns it back and adds a corresponding regression test. Closes #6330
-
Aleksandr Lyapunov authored
Fix option argument in user.grant function
-
Nikita Pettik authored
It makes sense to abort only in-progress transactions while we are going to abort all transactions on DDL TX preparation step. Already prepared, committed or aborted transactions turn out to be uninteresting for us. Follow-up #5998
-
Mons Anderson authored
FORCE_CONFIG=true is preventing local .rocks/config-5.1.lua from loading. Local config is often used to populate rocks_servers with own rocks servers and with original luarocks This patch changes FORCE_CONFIG to true in generated luarocks.core.hardcoded to allow using project-side config-5.1.lua for luarocks configuration to avoid dirty and ugly hacks
-
Egor Elchinov authored
fiber.top testing used to be broken under arm platforms because of the assumption that fiber.top functionality must be enabled at build time. This patch modifies the test for this case. Follow-up #6272
-
Egor Elchinov authored
MacOS has its own libunwind which works not good with fibers under M1. Backtraces need to be enabled again after #6060 is fixed. Other arm backtraces are temporarily disabled too for #6222. Closes #6272
-
EvgenyMekhanik authored
Currently, when calling 'close' method for connection, unsent requests are lost. Disable appropriate check until corresponding (#6338) issue will be resolved.
-
mechanik20051988 authored
Since tarantool can use different allocators, we need a single interface for getting statistics that is suitable for all allocators. Follow-up #5419
-
mechanik20051988 authored
The ability to select an allocator for memtx has been added to tarantool. To test a new type of allocator, all tests must also be run with it. Implemented new option, which allows to set allocator for memtx. If you wan't to choose allocator type for tests, run test-run.py with --memtx-allocator="small" or --memtx-allocator="system". Allocator type is passed via MEMTX_ALLOCATOR environment variable to the test.
-
Nikita Pettik authored
Firstly, Allocator::stats() must accept callback function and its argument to fulfill small interfaces. Secondly, unify stats and store both system and small allocators statistics in the same structure in order to use ::stats() method in foreach_allocator() helper. Follow-up #5419
-
Nikita Pettik authored
- Remove two delayed free lists from memtx_engine; - Use memtx_allocators_init/memtx_allocators_destroy to initialize and destroy memtx allocators; - Use memtx_allocators_set_mode() to set delayed free mode. Follow-up #5419
-
Nikita Pettik authored
That includes: - foreach_memtx_allocator() - for each basic allocator (Small and Sys so far) we declare corresponding MemtxAllocator. So to iterate over all allocators and invoke same function we are going to use this helper; - memtx_allocators_init() - invoke ::create() of each Allocator and corresponding MemtxAllocator; - memtx_allocators_destroy() - invoke ::destroy() of each Allocator and corresponding MemtxAllocator; - memtx_allocators_set_mode() - set given delayed free mode for each MemtxAllocator. Follow-up #5419
-
Nikita Pettik authored
It is considered to be wrapper (MemtxAllocator is parameterized by ordinary allocator like Small or System) encapsulating allocator and providing its own delayed deletion strategy. Follow-up #5419
-
Nikita Pettik authored
This is helper to set proper tuple_format vtable depending on allocator symbolic name. Follow-up #5419
-
Nikita Pettik authored
Let's initialize them in the dedicated allocator.cc source file Follow-up #5419
-