-
Couldn't load subscription status.
- Fork 33
Description
-
Environment
Tarantool version: Tarantool Enterprise 3.6.0-entrypoint-17-g068fb6f
Vshard version: 0.1.36
OS: Garuda linux (x86-x64)
-
Bug description: the
vtestmodule is not adapted for cluster which has replicaset with ssl replication. -
Reproducer:
local t = require('luatest') local vtest = require('test.luatest_helpers.vtest') local vutil = require('vshard.util') local fio = require('fio') local g = t.group('ssl') local cfg_template = { sharding = { { replicas = { replica_1_a = { master = true, }, replica_1_b = {}, }, is_ssl = true, }, { replicas = { replica_2_a = { master = true, }, replica_2_b = {}, }, is_ssl = true, }, }, bucket_count = 100, } local global_cfg = vtest.config_new(cfg_template) g.before_all(function() t.run_only_if(vutil.feature.ssl) vtest.cluster_new(g, global_cfg) vtest.cluster_bootstrap(g, global_cfg) vtest.cluster_rebalancer_disable(g) vtest.cluster_wait_fullsync(g) end) g.after_all(function() g.cluster:drop() end) g.test_1 = function(g) require('log').info('!\tStart...') end
-
Actual result (ssl_test.result):
File: /tmp/t/001_router-luatest/ssl.result Tarantool version is 3.6.0-entrypoint-17-g068fb6f TAP version 13 1..1 # Started on Thu Oct 16 21:59:29 2025 # Starting group: ssl replica_1_a | Incorrect value for option 'replication': Invalid URI table: expected {uri = string, params = table} or {string, params = table} {"type ":"ClientError","code":59,"name":"CFG","option":"replication","details":"Invalid URI table: expected {uri = string, params = table} or {string, param s = table}","trace":[{"file":"[C]","line":4294967295}]} replica_1_a | fatal error, exiting the event loop replica_2_a | Incorrect value for option 'replication': Invalid URI table: expected {uri = string, params = table} or {string, params = table} {"type ":"ClientError","code":59,"name":"CFG","option":"replication","details":"Invalid URI table: expected {uri = string, params = table} or {string, param s = table}","trace":[{"file":"[C]","line":4294967295}]} replica_2_a | fatal error, exiting the event loop replica_1_b | Incorrect value for option 'replication': Invalid URI table: expected {uri = string, params = table} or {string, params = table} {"type ":"ClientError","code":59,"name":"CFG","option":"replication","details":"Invalid URI table: expected {uri = string, params = table} or {string, param s = table}","trace":[{"file":"[C]","line":4294967295}]} replica_1_b | fatal error, exiting the event loop replica_2_b | Incorrect value for option 'replication': Invalid URI table: expected {uri = string, params = table} or {string, params = table} {"type ":"ClientError","code":59,"name":"CFG","option":"replication","details":"Invalid URI table: expected {uri = string, params = table} or {string, param s = table}","trace":[{"file":"[C]","line":4294967295}]} replica_2_b | fatal error, exiting the event loop -
Expected behavior: successfully passed test
-
Problems:
-
urimodule cannot parse uris of the type:{uri_string, params = {...}} -
cluster_newfunction incorrectly sets listen option of master and replicas. It doesn't pass ssl-related data to it like ssl_cert_file, ssl_key_file, ssl_ca_file e.t.c. It causesER_INVALID_MSGPACKerror which is spammed every second. -
If we change
cluster_newin such a way that uri will be passed byurimodule and listen option will consists of ssl-related data we will getSSL_Read unexpected eof while readingerror. No idead what can cause the third bug!
-