diff --git a/debian/control b/debian/control index 01285666fee7ea65adb0969fb1a9fe0a14de75d2..71632d85a56ab52e16d631bccbfdc1743ff3f6c9 100644 --- a/debian/control +++ b/debian/control @@ -20,6 +20,7 @@ Conflicts: tarantool-common (<< 1.5.3), tarantool-lts-common, tarantool-lts, tarantool-lts-modules, + tarantool-lts-client, tarantool-lts-postgresql-module, tarantool-lts-mysql-module, tarantool-lts-dev, @@ -49,6 +50,7 @@ Conflicts: tarantool-lts-common, tarantool-lts-postgresql-module, tarantool-lts-mysql-module, tarantool-lts-dev, + tarantool-lts-client, tarantool-dbg (<< 1.5.2), tarantool-common (<< 1.6~), tarantool-client (<< 1.6~), @@ -83,6 +85,7 @@ Conflicts: tarantool-lts-common, tarantool-lts-modules, tarantool-lts-postgresql-module, tarantool-lts-mysql-module, + tarantool-lts-client, tarantool-lts-dev, tarantool-dbg (<< 1.5.2), tarantool-common (<< 1.6~), diff --git a/doc/www/content/newsite/download.yml.in b/doc/www/content/newsite/download.yml.in index d0019a454549b3baf6f2bb845b08dd6fd205e306..d9bdd48ed82543fd47823a51550138ad4490d207 100644 --- a/doc/www/content/newsite/download.yml.in +++ b/doc/www/content/newsite/download.yml.in @@ -22,7 +22,7 @@ blocks : `<http://tarantool.org/dist/master/ubuntu>`_. At the moment the repository contains builds for Ubuntu - "Precise", "Trusty", "Saucy". It can be added to your + "Precise", "Trusty", "Saucy", "Vivid". It can be added to your apt sources list with: .. code-block:: bash @@ -76,7 +76,7 @@ blocks : from `Apple Developer`_ web-site. .. _Apple Developer: https://developer.apple.com/downloads/ - - - "Fedora 19, 20 and Rawhide" + - - "Fedora 19, 20, 21, 22" - format : rst content: | Fedora repository is available at diff --git a/doc/www/content/newsite/index.yml b/doc/www/content/newsite/index.yml index f396d11c27d354fc1cc1d57e0eaaca5128422381..83fcd48238e3517e65fb5a51d7a9670bb495e311 100644 --- a/doc/www/content/newsite/index.yml +++ b/doc/www/content/newsite/index.yml @@ -6,7 +6,7 @@ template: "index" blocks : header: - "Tarantool" - - "Get your data in RAM. Get compute close to data. Enjoy the performance" + - "Get your data in RAM. Get compute close to data. Enjoy the performance." features: - format: rst content: > diff --git a/extra/rpm/mock/tarantool-fedora-21-i386.cfg b/extra/rpm/mock/tarantool-fedora-21-i386.cfg new file mode 100644 index 0000000000000000000000000000000000000000..5d77d87cb0e5323a1439e2557542716740c120a5 --- /dev/null +++ b/extra/rpm/mock/tarantool-fedora-21-i386.cfg @@ -0,0 +1,68 @@ +config_opts['root'] = 'fedora-21-i386' +config_opts['target_arch'] = 'i386' +config_opts['legal_host_arches'] = ('i386', 'i586', 'i686', 'x86_64') +config_opts['chroot_setup_cmd'] = 'install @buildsys-build' +config_opts['dist'] = 'fc21' # only useful for --resultdir variable subst +config_opts['extra_chroot_dirs'] = [ '/run/lock', ] +config_opts['releasever'] = '21' + +config_opts['yum.conf'] = """ +[main] +cachedir=/var/cache/yum +keepcache=1 +debuglevel=2 +reposdir=/dev/null +logfile=/var/log/yum.log +retries=20 +obsoletes=1 +gpgcheck=0 +assumeyes=1 +syslog_ident=mock +syslog_device= + +# repos + +[fedora] +name=fedora +metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch +failovermethod=priority +gpgkey=file:///etc/pki/mock/RPM-GPG-KEY-fedora-21-primary +gpgcheck=1 + +[updates] +name=updates +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f$releasever&arch=$basearch +failovermethod=priority +gpgkey=file:///etc/pki/mock/RPM-GPG-KEY-fedora-21-primary +gpgcheck=1 + +[updates-testing] +name=updates-testing +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-f$releasever&arch=$basearch +failovermethod=priority +enabled=0 + +[local] +name=local +baseurl=http://kojipkgs.fedoraproject.org/repos/f21-build/latest/i386/ +cost=2000 +enabled=0 + +[fedora-debuginfo] +name=fedora-debuginfo +metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-debug-$releasever&arch=$basearch +failovermethod=priority +enabled=0 + +[updates-debuginfo] +name=updates-debuginfo +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-debug-f$releasever&arch=$basearch +failovermethod=priority +enabled=0 + +[updates-testing-debuginfo] +name=updates-testing-debuginfo +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-debug-f$releasever&arch=$basearch +failovermethod=priority +enabled=0 +""" diff --git a/extra/rpm/mock/tarantool-fedora-21-x86_64.cfg b/extra/rpm/mock/tarantool-fedora-21-x86_64.cfg new file mode 100644 index 0000000000000000000000000000000000000000..ac48a3212d8381d0eccde2e8f43ddff2ed2e7e2c --- /dev/null +++ b/extra/rpm/mock/tarantool-fedora-21-x86_64.cfg @@ -0,0 +1,68 @@ +config_opts['root'] = 'fedora-21-x86_64' +config_opts['target_arch'] = 'x86_64' +config_opts['legal_host_arches'] = ('x86_64',) +config_opts['chroot_setup_cmd'] = 'install @buildsys-build' +config_opts['dist'] = 'fc21' # only useful for --resultdir variable subst +config_opts['extra_chroot_dirs'] = [ '/run/lock', ] +config_opts['releasever'] = '21' + +config_opts['yum.conf'] = """ +[main] +cachedir=/var/cache/yum +keepcache=1 +debuglevel=2 +reposdir=/dev/null +logfile=/var/log/yum.log +retries=20 +obsoletes=1 +gpgcheck=0 +assumeyes=1 +syslog_ident=mock +syslog_device= + +# repos + +[fedora] +name=fedora +metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch +failovermethod=priority +gpgkey=file:///etc/pki/mock/RPM-GPG-KEY-fedora-21-primary +gpgcheck=1 + +[updates] +name=updates +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f$releasever&arch=$basearch +failovermethod=priority +gpgkey=file:///etc/pki/mock/RPM-GPG-KEY-fedora-21-primary +gpgcheck=1 + +[updates-testing] +name=updates-testing +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-f$releasever&arch=$basearch +failovermethod=priority +enabled=0 + +[local] +name=local +baseurl=http://kojipkgs.fedoraproject.org/repos/f21-build/latest/x86_64/ +cost=2000 +enabled=0 + +[fedora-debuginfo] +name=fedora-debuginfo +metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-debug-$releasever&arch=$basearch +failovermethod=priority +enabled=0 + +[updates-debuginfo] +name=updates-debuginfo +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-debug-f$releasever&arch=$basearch +failovermethod=priority +enabled=0 + +[updates-testing-debuginfo] +name=updates-testing-debuginfo +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-debug-f$releasever&arch=$basearch +failovermethod=priority +enabled=0 +""" diff --git a/extra/rpm/mock/tarantool-fedora-22-i386.cfg b/extra/rpm/mock/tarantool-fedora-22-i386.cfg new file mode 100644 index 0000000000000000000000000000000000000000..513106374b00a8f0bc889ec1463309defa75fa29 --- /dev/null +++ b/extra/rpm/mock/tarantool-fedora-22-i386.cfg @@ -0,0 +1,60 @@ + +config_opts['root'] = 'fedora-22-i386' +config_opts['target_arch'] = 'i386' +config_opts['legal_host_arches'] = ('i386', 'i586', 'i686', 'x86_64') +config_opts['chroot_setup_cmd'] = 'install @buildsys-build' +config_opts['dist'] = 'fc22' # only useful for --resultdir variable subst +config_opts['extra_chroot_dirs'] = [ '/run/lock', ] +config_opts['releasever'] = '22' + +config_opts['yum.conf'] = """ +[main] +keepcache=1 +debuglevel=2 +reposdir=/dev/null +logfile=/var/log/yum.log +retries=20 +obsoletes=1 +gpgcheck=0 +assumeyes=1 +syslog_ident=mock +syslog_device= +# repos +[fedora] +name=fedora +metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch +failovermethod=priority +gpgkey=file:///etc/pki/mock/RPM-GPG-KEY-fedora-22-primary +gpgcheck=1 +[updates] +name=updates +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f$releasever&arch=$basearch +failovermethod=priority +gpgkey=file:///etc/pki/mock/RPM-GPG-KEY-fedora-22-primary +gpgcheck=1 +[updates-testing] +name=updates-testing +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-f$releasever&arch=$basearch +failovermethod=priority +enabled=0 +[local] +name=local +baseurl=http://kojipkgs.fedoraproject.org/repos/f22-build/latest/i386/ +cost=2000 +enabled=0 +[fedora-debuginfo] +name=fedora-debuginfo +metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-debug-$releasever&arch=$basearch +failovermethod=priority +enabled=0 +[updates-debuginfo] +name=updates-debuginfo +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-debug-f$releasever&arch=$basearch +failovermethod=priority +enabled=0 +[updates-testing-debuginfo] +name=updates-testing-debuginfo +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-debug-f$releasever&arch=$basearch +failovermethod=priority +enabled=0 +""" diff --git a/extra/rpm/mock/tarantool-fedora-22-x86_64.cfg b/extra/rpm/mock/tarantool-fedora-22-x86_64.cfg new file mode 100644 index 0000000000000000000000000000000000000000..80796d5bfabbd7e49d8b7d413927545731886694 --- /dev/null +++ b/extra/rpm/mock/tarantool-fedora-22-x86_64.cfg @@ -0,0 +1,60 @@ + +config_opts['root'] = 'fedora-22-x86_64' +config_opts['target_arch'] = 'x86_64' +config_opts['legal_host_arches'] = ('x86_64',) +config_opts['chroot_setup_cmd'] = 'install @buildsys-build' +config_opts['dist'] = 'fc22' # only useful for --resultdir variable subst +config_opts['extra_chroot_dirs'] = [ '/run/lock', ] +config_opts['releasever'] = '22' + +config_opts['yum.conf'] = """ +[main] +keepcache=1 +debuglevel=2 +reposdir=/dev/null +logfile=/var/log/yum.log +retries=20 +obsoletes=1 +gpgcheck=0 +assumeyes=1 +syslog_ident=mock +syslog_device= +# repos +[fedora] +name=fedora +metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch +failovermethod=priority +gpgkey=file:///etc/pki/mock/RPM-GPG-KEY-fedora-22-primary +gpgcheck=1 +[updates] +name=updates +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f$releasever&arch=$basearch +failovermethod=priority +gpgkey=file:///etc/pki/mock/RPM-GPG-KEY-fedora-22-primary +gpgcheck=1 +[updates-testing] +name=updates-testing +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-f$releasever&arch=$basearch +failovermethod=priority +enabled=0 +[local] +name=local +baseurl=http://kojipkgs.fedoraproject.org/repos/f22-build/latest/x86_64/ +cost=2000 +enabled=0 +[fedora-debuginfo] +name=fedora-debuginfo +metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-debug-$releasever&arch=$basearch +failovermethod=priority +enabled=0 +[updates-debuginfo] +name=updates-debuginfo +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-debug-f$releasever&arch=$basearch +failovermethod=priority +enabled=0 +[updates-testing-debuginfo] +name=updates-testing-debuginfo +metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-debug-f$releasever&arch=$basearch +failovermethod=priority +enabled=0 +""" diff --git a/src/box/box.cc b/src/box/box.cc index 6c63519e279aaf037e8604bb2ecbd7fdad9befc8..9f872196dfeb4872bf57d62bee555c34108be49d 100644 --- a/src/box/box.cc +++ b/src/box/box.cc @@ -114,6 +114,12 @@ box_check_uri(const char *source, const char *option_name) } } +static void +box_check_replication_source(void) +{ + box_check_uri(cfg_gets("replication_source"), "replication_source"); +} + static enum wal_mode box_check_wal_mode(const char *mode_name) { @@ -150,16 +156,16 @@ box_check_config() { box_check_wal_mode(cfg_gets("wal_mode")); box_check_uri(cfg_gets("listen"), "listen"); - box_check_uri(cfg_gets("replication_source"), "replication_source"); + box_check_replication_source(); box_check_readahead(cfg_geti("readahead")); box_check_rows_per_wal(cfg_geti("rows_per_wal")); box_check_wal_mode(cfg_gets("wal_mode")); } extern "C" void -box_set_replication_source(const char *source) +box_set_replication_source(void) { - box_check_uri(source, "replication_source"); + const char *source = cfg_gets("replication_source"); bool old_is_replica = recovery->remote.reader; bool new_is_replica = source != NULL; @@ -187,15 +193,17 @@ box_set_replication_source(const char *source) } extern "C" void -box_set_listen(const char *uri) +box_set_listen(void) { + const char *uri = cfg_gets("listen"); box_check_uri(uri, "listen"); iproto_set_listen(uri); } extern "C" void -box_set_wal_mode(const char *mode_name) +box_set_wal_mode(void) { + const char *mode_name = cfg_gets("wal_mode"); enum wal_mode mode = box_check_wal_mode(mode_name); if (mode != recovery->wal_mode && (mode == WAL_FSYNC || recovery->wal_mode == WAL_FSYNC)) { @@ -211,38 +219,39 @@ box_set_wal_mode(const char *mode_name) } extern "C" void -box_set_log_level(int level) +box_set_log_level(void) { - say_set_log_level(level); + say_set_log_level(cfg_geti("log_level")); } extern "C" void -box_set_io_collect_interval(double interval) +box_set_io_collect_interval(void) { - ev_set_io_collect_interval(loop(), interval); + ev_set_io_collect_interval(loop(), cfg_getd("io_collect_interval")); } extern "C" void -box_set_snap_io_rate_limit(double limit) +box_set_snap_io_rate_limit(void) { - recovery_update_io_rate_limit(recovery, limit); + recovery_update_io_rate_limit(recovery, cfg_getd("snap_io_rate_limit")); } extern "C" void -box_set_too_long_threshold(double threshold) +box_set_too_long_threshold(void) { - too_long_threshold = threshold; + too_long_threshold = cfg_getd("too_long_threshold"); } extern "C" void -box_set_readahead(int readahead) +box_set_readahead(void) { + int readahead = cfg_geti("readahead"); box_check_readahead(readahead); iobuf_set_readahead(readahead); } extern "C" void -box_set_panic_on_wal_error(int /* yesno */) +box_set_panic_on_wal_error(void) { recovery_setup_panic(recovery, cfg_geti("panic_on_snap_error"), @@ -627,11 +636,12 @@ box_init(void) cfg_gets("wal_dir"), recover_row, NULL); recovery_set_remote(recovery, - cfg_gets("replication_source")); + cfg_gets("replication_source")); recovery_setup_panic(recovery, cfg_geti("panic_on_snap_error"), cfg_geti("panic_on_wal_error")); + if (recovery_has_data(recovery)) { /* Tell Sophia engine LSN it must recover to. */ int64_t checkpoint_id = @@ -660,7 +670,7 @@ box_init(void) port_init(); iproto_init(); - box_set_listen(cfg_gets("listen")); + box_set_listen(); int rows_per_wal = box_check_rows_per_wal(cfg_geti("rows_per_wal")); enum wal_mode wal_mode = box_check_wal_mode(cfg_gets("wal_mode")); diff --git a/src/box/box.h b/src/box/box.h index 6ea05d50e1c6946ad252b82dcc668135b7a0fdb1..3ca093176c1f0b6d57c2d033a47cdcf8a4df493c 100644 --- a/src/box/box.h +++ b/src/box/box.h @@ -102,14 +102,14 @@ box_process_subscribe(int fd, struct xrow_header *header); void box_check_config(); -void box_set_listen(const char *uri); -void box_set_replication_source(const char *source); -void box_set_wal_mode(const char *mode); -void box_set_log_level(int level); -void box_set_io_collect_interval(double interval); -void box_set_snap_io_rate_limit(double limit); -void box_set_too_long_threshold(double threshold); -void box_set_readahead(int readahead); +void box_set_listen(void); +void box_set_replication_source(void); +void box_set_wal_mode(void); +void box_set_log_level(void); +void box_set_io_collect_interval(void); +void box_set_snap_io_rate_limit(void); +void box_set_too_long_threshold(void); +void box_set_readahead(void); extern struct recovery_state *recovery; diff --git a/src/box/lua/load_cfg.lua b/src/box/lua/load_cfg.lua index e62f8a4abccaa069338ca8af200c048fa3a72d1e..3bec896c17d782171c90df155680ca133f928b81 100644 --- a/src/box/lua/load_cfg.lua +++ b/src/box/lua/load_cfg.lua @@ -4,18 +4,19 @@ local ffi = require('ffi') ffi.cdef([[ void check_cfg(); void load_cfg(); -void box_set_wal_mode(const char *mode); -void box_set_listen(const char *uri); -void box_set_replication_source(const char *source); -void box_set_log_level(int level); -void box_set_readahead(int readahead); -void box_set_io_collect_interval(double interval); -void box_set_too_long_threshold(double threshold); -void box_set_snap_io_rate_limit(double limit); -void box_set_panic_on_wal_error(int); +void box_set_wal_mode(void); +void box_set_listen(void); +void box_set_replication_source(void); +void box_set_log_level(void); +void box_set_readahead(void); +void box_set_io_collect_interval(void); +void box_set_too_long_threshold(void); +void box_set_snap_io_rate_limit(void); +void box_set_panic_on_wal_error(void); ]]) local log = require('log') +local json = require('json') -- see default_cfg below local default_sophia_cfg = { @@ -215,10 +216,15 @@ local function reload_cfg(oldcfg, cfg) end for key in pairs(cfg) do local val = newcfg[key] - if oldcfg[key] ~= val then - dynamic_cfg[key](val) + local oldval = oldcfg[key] + if oldval ~= val then rawset(oldcfg, key, val) - log.info("set '%s' configuration option to '%s'", key, val) + if not pcall(dynamic_cfg[key]) then + rawset(oldcfg, key, oldval) -- revert the old value + return box.error() -- re-throw + end + log.info("set '%s' configuration option to %s", key, + json.encode(val)) end end if type(box.on_reload_configuration) == 'function' then @@ -270,9 +276,9 @@ local function load_cfg(cfg) for key, fun in pairs(dynamic_cfg) do local val = cfg[key] if val ~= nil and not dynamic_cfg_skip_at_load[key] then - fun(cfg[key]) + fun() if val ~= default_cfg[key] then - log.info("set '%s' configuration option to '%s'", key, val) + log.info("set '%s' configuration option to %s", key, json.encode(val)) end end end diff --git a/src/box/lua/snapshot_daemon.lua b/src/box/lua/snapshot_daemon.lua index c7a2c410da7d108e7e388903b8236d1a0e47384a..7551839adcdb2949f3cc3edcdffff0ce53d2ff62 100644 --- a/src/box/lua/snapshot_daemon.lua +++ b/src/box/lua/snapshot_daemon.lua @@ -219,18 +219,18 @@ do setmetatable(daemon, { __index = { - set_snapshot_period = function(snapshot_period) - daemon.snapshot_period = snapshot_period + set_snapshot_period = function() + daemon.snapshot_period = box.cfg.snapshot_period reload(daemon) return end, - set_snapshot_count = function(snapshot_count) - if math.floor(snapshot_count) ~= snapshot_count then + set_snapshot_count = function() + if math.floor(box.cfg.snapshot_count) ~= box.cfg.snapshot_count then box.error(box.error.CFG, "snapshot_count", "must be an integer") end - daemon.snapshot_count = snapshot_count + daemon.snapshot_count = box.cfg.snapshot_count reload(daemon) end } diff --git a/src/box/relay.cc b/src/box/relay.cc index ae851e5d2bf210ae9d7c2d3f64ea9285ddd27778..a5beec36ba59d80ad77e04c295715b5aa0e61a73 100644 --- a/src/box/relay.cc +++ b/src/box/relay.cc @@ -30,7 +30,6 @@ */ #include "relay.h" #include <say.h> -#include <fiber.h> #include "scoped_guard.h" #include "recovery.h" @@ -103,9 +102,8 @@ replication_join(int fd, struct xrow_header *packet, struct tt_uuid server_uuid = uuid_nil; xrow_decode_join(packet, &server_uuid); - struct cord cord; - cord_costart(&cord, "join", replication_join_f, &relay); - cord_cojoin(&cord); + cord_costart(&relay.cord, "join", replication_join_f, &relay); + cord_cojoin(&relay.cord); /** * Call the server-side hook which stores the replica uuid * in _cluster hook after sending the last row but before diff --git a/src/box/relay.h b/src/box/relay.h index 29c1ae114d68ae52a0063ef1868aa1304dcef4ef..8f50f81247414db17ca44bfeb5da1fa7aba694c6 100644 --- a/src/box/relay.h +++ b/src/box/relay.h @@ -31,12 +31,15 @@ * SUCH DAMAGE. */ #include "evio.h" +#include "fiber.h" struct xrow_header; /** State of a replication relay. */ class Relay { public: + /** The thread in which we relay data to the replica. */ + struct cord cord; /** Replica connection */ struct ev_io io; /* Request sync */ diff --git a/src/lua/log.lua b/src/lua/log.lua index d086bcc6dfb7b0c18c6dc8030e851d99f7bc9710..02f9303d9085cd6bc0cd4b643db450a57d832049 100644 --- a/src/lua/log.lua +++ b/src/lua/log.lua @@ -4,6 +4,8 @@ local ffi = require('ffi') ffi.cdef[[ typedef void (*sayfunc_t)(int level, const char *filename, int line, const char *error, const char *format, ...); + void + say_set_log_level(int new_level); extern sayfunc_t _say; extern void say_logrotate(int); @@ -70,5 +72,9 @@ return { logger_pid = function() return tonumber(ffi.C.logger_pid) - end + end, + + level = function(level) + return ffi.C.say_set_log_level(level) + end, } diff --git a/test/app/console.test.lua b/test/app/console.test.lua index ad99b7c11928eb34d3ef09fcbfb20ed011ac65f4..212b5e13ed0581e59641230ed5296b643d09292d 100755 --- a/test/app/console.test.lua +++ b/test/app/console.test.lua @@ -6,9 +6,10 @@ local socket = require('socket') local yaml = require('yaml') local fiber = require('fiber') local ffi = require('ffi') +local log = require('log') -- Supress console log messages -ffi.C.box_set_log_level(4) +log.level(4) local CONSOLE_SOCKET = '/tmp/tarantool-test-console.sock' local IPROTO_SOCKET = '/tmp/tarantool-test-iproto.sock' diff --git a/test/box/cfg.result b/test/box/cfg.result index 937a4bfe27939c570c7a07d9c45afe70fc91f83f..5269212912bf4b0cc28db18fef755ee6c0053382 100644 --- a/test/box/cfg.result +++ b/test/box/cfg.result @@ -2,7 +2,7 @@ --# push filter 'admin: .*' to 'admin: <uri>' box.cfg.nosuchoption = 1 --- -- error: '[string "-- load_cfg.lua - internal file..."]:265: Attempt to modify a read-only +- error: '[string "-- load_cfg.lua - internal file..."]:271: Attempt to modify a read-only table' ... cfg_filter(box.cfg) @@ -34,7 +34,7 @@ cfg_filter(box.cfg) -- must be read-only box.cfg() --- -- error: '[string "-- load_cfg.lua - internal file..."]:211: bad argument #1 to ''pairs'' +- error: '[string "-- load_cfg.lua - internal file..."]:212: bad argument #1 to ''pairs'' (table expected, got nil)' ... cfg_filter(box.cfg) @@ -66,23 +66,23 @@ cfg_filter(box.cfg) -- check that cfg with unexpected parameter fails. box.cfg{sherlock = 'holmes'} --- -- error: '[string "-- load_cfg.lua - internal file..."]:167: Error: cfg parameter +- error: '[string "-- load_cfg.lua - internal file..."]:168: Error: cfg parameter ''sherlock'' is unexpected' ... -- check that cfg with unexpected type of parameter failes box.cfg{listen = {}} --- -- error: '[string "-- load_cfg.lua - internal file..."]:187: Error: cfg parameter +- error: '[string "-- load_cfg.lua - internal file..."]:188: Error: cfg parameter ''listen'' should be one of types: string, number' ... box.cfg{wal_dir = 0} --- -- error: '[string "-- load_cfg.lua - internal file..."]:181: Error: cfg parameter +- error: '[string "-- load_cfg.lua - internal file..."]:182: Error: cfg parameter ''wal_dir'' should be of type string' ... box.cfg{coredump = 'true'} --- -- error: '[string "-- load_cfg.lua - internal file..."]:181: Error: cfg parameter +- error: '[string "-- load_cfg.lua - internal file..."]:182: Error: cfg parameter ''coredump'' should be of type boolean' ... -------------------------------------------------------------------------------- @@ -90,17 +90,17 @@ box.cfg{coredump = 'true'} -------------------------------------------------------------------------------- box.cfg{slab_alloc_arena = "100500"} --- -- error: '[string "-- load_cfg.lua - internal file..."]:181: Error: cfg parameter +- error: '[string "-- load_cfg.lua - internal file..."]:182: Error: cfg parameter ''slab_alloc_arena'' should be of type number' ... box.cfg{sophia = "sophia"} --- -- error: '[string "-- load_cfg.lua - internal file..."]:175: Error: cfg parameter +- error: '[string "-- load_cfg.lua - internal file..."]:176: Error: cfg parameter ''sophia'' should be a table' ... box.cfg{sophia = {threads = "threads"}} --- -- error: '[string "-- load_cfg.lua - internal file..."]:181: Error: cfg parameter +- error: '[string "-- load_cfg.lua - internal file..."]:182: Error: cfg parameter ''sophia.threads'' should be of type number' ... --------------------------------------------------------------------------------