- Dec 09, 2024
-
-
This patch makes schema_object_type to be exported. NO_DOC=picodata internal patch NO_CHANGELOG=picodata internal patch NO_TEST=picodata internal patch
-
NO_DOC=picodata internal patch NO_CHANGELOG=picodata internal patch NO_TEST=picodata internal patch
-
NO_CHANGELOG=bug fix for unreleased feature NO_DOC=bug fix for unreleased feature
-
1. Pass `docker build --build-arg TARANTOOL_VERSION=...` to ensure the resulting image contains the correct version. 2. Pass it in the CI trigger variables. 3. Fix CI jobs relationships: "docker" stage needs "deploy-packages". 4. Minor fixes in job names. NO_DOC=internal NO_TEST=internal NO_CHANGELOG=internal
-
This patch helps us create and write to non-default loggers provided by `say.h`. We'll use this mainly for audit log in picodata. NO_DOC=internal NO_TEST=internal NO_CHANGELOG=internal
-
Add to console lua api function that overrides sql executor NO_DOC=picodata internal patch NO_CHANGELOG=picodata internal patch NO_TEST=picodata internal patch
-
Picodata is built statically, and name crypto clashes between `src/lib/crypto` and libcrypto from `openssl`. To resolve the ambiguity this patch renames tarantool library to `tcrypto`. NO_DOC=picodata internal patch NO_CHANGELOG=picodata internal patch NO_TEST=picodata internal patch
-
In the picodata-support branch, the tarantool.a library is built instead of a tarantool executable. So tests cannot be launched because of the lack of the executable. This commit adds this executable. NO_DOC=just an executable is added NO_TEST=just an executable is added NO_CHANGELOG=just an executable is added
-
NO_DOC=picodata internal patch NO_CHANGELOG=picodata internal patch NO_TEST=picodata internal patch
-
Was broken because `tarantool_free` checks if the current process is the main one and not the child, which was forked at some point (at what point?). This check was implemented by saving the original process's id in the static variable master_pid, which got set when the code got loaded the first time into memory. So we broke this when we started forking the process in picodata, which resulted in `master_pid` being set to the pid of the picodata's "supervisor" process, which doesn't even enter tarantool runtime. The fix is simple - save master_pid first thing when running tarantool_main.
-
-
-
Dmitry Ivanov authored
NO_DOC=internal NO_TEST=internal NO_CHANGELOG=internal This patch fixes the following problem at build time: checking for regex.h... yes checking for library containing regfree... none required checking for compatible POSIX regex... no configure: error: broken POSIX regex!
-
NO_DOC=internal NO_TEST=internal NO_CHANGELOG=internal
-
-
Dmitry Ivanov authored
NO_DOC=picodata internal patch NO_CHANGELOG=picodata internal patch NO_TEST=picodata internal patch fix(build): Prevent sasl's makefile rules from staining vendor Turns out Cyrus SASL doesn't use AM_MAINTAINER_MODE or anything to prevent autotools from re-configuring the project at build time. This patch "fixes" that by maiming autotools' paths in Makefile. NO_DOC=internal NO_TEST=internal NO_CHANGELOG=internal fix(build): add missing headers to libsasl NO_DOC=internal NO_TEST=internal NO_CHANGELOG=internal This patch fixes the following problem at build time: ``` cyrus-sasl-2.1.28/lib/saslutil.c:280:3: error: implicit declaration of function 'time' [-Wimplicit-function-declaration] 280 | time(&now); | ^~~~ cyrus-sasl-2.1.28/lib/saslutil.c:66:1: note: 'time' is defined in header '<time.h>'; this is probably fixable by adding '#include <time.h>' 65 | #include "saslint.h" +++ |+#include <time.h> 66 | #include <saslutil.h> cyrus-sasl-2.1.28/lib/saslutil.c: In function 'getranddata': cyrus-sasl-2.1.28/lib/saslutil.c:364:41: error: implicit declaration of function 'clock' [-Wimplicit-function-declaration] 364 | ret[1] ^= (unsigned short) (clock() & 0xFFFF); | ^~~~~ cyrus-sasl-2.1.28/lib/saslutil.c:364:41: note: 'clock' is defined in header '<time.h>'; this is probably fixable by adding '#include <time.h>' cyrus-sasl-2.1.28/lib/saslutil.c: In function 'get_fqhostname': cyrus-sasl-2.1.28/lib/saslutil.c:563:42: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare] 563 | || strlen (result->ai_canonname) > namelen -1) { | ^ make[9]: *** [Makefile:643: saslutil.lo] Error 1 ```
-
-
-
- tarantool is now a static library - main(argc, argv) -> tarantool_main(argc, argv, cb, cb_data) - callback is called before running lua script
-
Closes #9237 Add exports for fiber_set_name_n, fiber_name, fiber_id, fiber_csw & fiber_find. Also make fiber_set_joinable, fiber_set_ctx & fiber_get_ctx interpret NULL as the current fiber. @TarantoolBot document Title: add basic fiber api to ffi exports. 5 basic functions can now be used via ffi api, which were previously only accessible via lua api: fiber_set_name_n, fiber_name, fiber_id, fiber_csw & fiber_find. fiber_set_joinable now interprets NULL as current fiber.
-
NO_DOC=internal change NO_TEST=internal change
-
Rename the members as well. Keep uint16_t in box_check_acess_space as it is for other exported functions NO_DOC=picodata internal patch NO_CHANGELOG=picodata internal patch NO_TEST=picodata internal patch
-
NO_DOC=picodata internal patch NO_CHANGELOG=picodata internal patch NO_TEST=picodata internal patch Co-authored-by:
Yaroslav Dynnikov <yaroslav.dynnikov@gmail.com>
-
This reverts commit 0d8458d4.
-
Add a trigger to run tarantool-module CI tests when a new docker image is released (on tag). NO_DOC=internal NO_TEST=internal NO_CHANGELOG=internal
-
NO_DOC=internal NO_TEST=internal NO_CHANGELOG=internal
-
Introduce API for opening a read view over the specified spaces and indexes and creating iterators over the index read views. NO_DOC=picodata patch
-
-
box_auth_data_prepare() method declared to return a tuple while in reality it returned a region allocated message pack string. Fixed. NO_DOC=picodata internal patch NO_CHANGELOG=picodata internal patch NO_TEST=picodata internal patch
-
Dmitry Ivanov authored
test-run.py sets OMP_NUM_THREADS which causes this test to misbehave: it doesn't expect to see a warning regarding the use of this env var as the first log line. Alternatively, we could update test-run's submodule, but in practice this breaks other tests e.g. replication-luatest/linearizable_test.lua. NO_DOC=internal NO_TEST=internal NO_CHANGELOG=internal
-
OpenMP is no longer used since commit 4f617b70 ("box: introduce memtx_sort_threads config parameter"). All dependencies on libgomp should be removed. Follow-up #7689 NO_DOC=build NO_TEST=build
-
Closes #3389 Closes #7689 Closes #4646 @TarantoolBot document Title: new box.cfg parameter memtx_sort_threads The parameter sets the number of threads used to sort keys of secondary indexes on loading memtx database. The parameter cannot be changed dynamically (as it does not make sense). Maximum value is 256, minimum is 1. Default is to use all available cores. Usage example: ``` box.cfg{memtx_sort_threads=4} ```
-
The algorithm runs sort in multiple threads and does not use OpenMP. It has better threads utilization right from the beginning but probably a worse constant than parallel qsort. See details in code comments. Besides sort is not performed in calling thread but instead in spawned worker threads. Calling thread yields waiting for worker threads to finish. Exception is small data size, in this case sorting is executed in calling thread saving time on spawning a thread. This should speed up test execution. This is existing behaviour of qsort_arg but data size threshold is reduced from 128000 to 1024. Part of #3389 NO_CHANGELOG=internal NO_DOC=internal
-
1. Current commit introduces 'box_auth_data_prepare()' to prepare a data string for any supported authentication methods. 2. The user name argument is refactored in the auth methods: the null-terminated string is replaced with an address range approach. Now Rust users don't need to re-allocate username with CString. 3. Password length type was set to uint32_t (previously it was size_t, int, uint32_t for different functions). Tarantool uses murmur3a, so all the hashed strings should be up to 32 bit long. NO_DOC=picodata internal patch NO_CHANGELOG=picodata internal patch NO_TEST=picodata internal patch
-
Add the temporary path for macos CI. NO_DOC=picodata internal patch NO_CHANGELOG=picodata internal patch NO_TEST=picodata internal patch
-
Introduce new methods: 1. box_user_id_by_name - get the user identifier by name; 2. box_effective_user_id - get current effective user identifier; 3. box_session_user_id - get current session user identifier; 4. box_session_su - change current session user; NO_DOC=picodata internal patch NO_CHANGELOG=picodata internal patch NO_TEST=picodata internal patch
-
Introduce fully temporary spaces: same as data-temporary space but with temporary metadata. Basically temporary spaces now do not exist on restart and do not exist on replicas. They can also be created, altered and deleted when box.cfg.read_only = true. To avoid conflicts with spaces created on replicas, the temporary space ids by default start in a special range starting at BOX_SPACE_ID_TEMPORARY_MIN. Temporary spaces currently do not support several features e.g. foreign key references (to and from), functional indexes, sql sequences, sql triggers, etc. This may change in the future. Implementing temporary spaces requires temporary tuples to be inserted into system spaces: tuples which are neither replicated or persisted. This mostly done in on_replace_dd_* triggers by dropping the txn->stmt->row. Closes #8323 @TarantoolBot document Title: Introduce fully temporary spaces with temporary metadata Temporary spaces are now data-temporary spaces with temporary metadata. Created by specifying { type = "temporary" } in the options. Temporary spaces will not exist upon server restart and will not exist on replicas. They can also be created in read-only mode.
-
A tiny preparatory commit for meta-temporary spaces NO_DOC=refactoring NO_TEST=refactoring NO_CHANGELOG=refactoring
-
Move code that handles txn row counters into a separate function in preparation of meta-temporary spaces introduction. NO_DOC=refactoring NO_TEST=refactoring NO_CHANGELOG=refactoring
-
Everywhere where we refer to temporary spaces we now say data-temporary. This is because temporary spaces were never truly temporary because their definitions would still be persisted and replicated and they couldn't be created on read-only replicas. In a following commit we will introduce a new fully temporary type of spaces, which will be just called 'temporary', so this commit signifies this terminology change. NO_DOC=renaming NO_CHANGELOG=renaming NO_TEST=renaming
-