From: "Alexander V. Tikhonov" <avtikhon@tarantool.org>
To: Alexander Turenko <alexander.turenko@tarantool.org>
Cc: avtikhon <avtikhon@tarantool.org>, tarantool-patches@freelists.org
Subject: [tarantool-patches] [PATCH v1] test: use unix sockets iproto
Date: Wed, 5 Jun 2019 14:32:56 +0300 [thread overview]
Message-ID: <a60fd350738b47d9a14f4664d36c66232af4eb2f.1559734330.git.avtikhon@tarantool.org> (raw)
From: avtikhon <avtikhon@tarantool.org>
Enabled use_unix_sockets and use_unix_sockets_iproto options
to use unix sockets iproto instead of TcpPortDispatcher which
was previously introduced to eliminate the race condition when
two workers trying to use the same port: the idea was that each
worker used its own ports range. Really these ports could race
with client ports (from, say, net.box or replication), which
typically didn't use bind() and so bound to a random available
port (despite any dispatched ranges) and could produce
'Address already in use' error.
Closes: #4008
---
Github: https://github.com/tarantool/tarantool/tree/avtikhon/gh-4008-test-in-parallel-iproto
Issue: https://github.com/tarantool/tarantool/issues/4008
test/app/suite.ini | 1 +
test/box/suite.ini | 1 +
test/engine/suite.ini | 1 +
test/engine_long/suite.ini | 1 +
test/long_run-py/suite.ini | 1 +
test/replication/status.result | 10 +++++-----
test/replication/status.test.lua | 6 +++---
test/replication/suite.ini | 1 +
test/sql/suite.ini | 1 +
test/vinyl/suite.ini | 1 +
test/wal_off/suite.ini | 1 +
test/xlog-py/suite.ini | 1 +
test/xlog/suite.ini | 1 +
13 files changed, 19 insertions(+), 8 deletions(-)
diff --git a/test/app/suite.ini b/test/app/suite.ini
index 4f9e51550..dd802d98c 100644
--- a/test/app/suite.ini
+++ b/test/app/suite.ini
@@ -4,5 +4,6 @@ description = application server tests
script = app.lua
lua_libs = lua/fiber.lua
use_unix_sockets = True
+use_unix_sockets_iproto = True
is_parallel = True
pretest_clean = True
diff --git a/test/box/suite.ini b/test/box/suite.ini
index c7b75c173..9197e3c0f 100644
--- a/test/box/suite.ini
+++ b/test/box/suite.ini
@@ -6,5 +6,6 @@ disabled = rtree_errinj.test.lua tuple_bench.test.lua
release_disabled = errinj.test.lua errinj_index.test.lua rtree_errinj.test.lua upsert_errinj.test.lua iproto_stress.test.lua
lua_libs = lua/fifo.lua lua/utils.lua lua/bitset.lua lua/index_random_test.lua lua/push.lua lua/identifier.lua
use_unix_sockets = True
+use_unix_sockets_iproto = True
is_parallel = True
pretest_clean = True
diff --git a/test/engine/suite.ini b/test/engine/suite.ini
index 64ddafa81..ee0814dd6 100644
--- a/test/engine/suite.ini
+++ b/test/engine/suite.ini
@@ -3,6 +3,7 @@ core = tarantool
description = tarantool multiengine tests
script = box.lua
use_unix_sockets = True
+use_unix_sockets_iproto = True
release_disabled = errinj.test.lua errinj_ddl.test.lua
config = engine.cfg
#disabled = replica_join.test.lua
diff --git a/test/engine_long/suite.ini b/test/engine_long/suite.ini
index 2447344fb..97d869042 100644
--- a/test/engine_long/suite.ini
+++ b/test/engine_long/suite.ini
@@ -5,6 +5,7 @@ script = box.lua
long_run = delete_replace_update.test.lua delete_insert.test.lua
lua_libs = suite.lua
use_unix_sockets = True
+use_unix_sockets_iproto = True
config = engine.cfg
is_parallel = True
pretest_clean = True
diff --git a/test/long_run-py/suite.ini b/test/long_run-py/suite.ini
index 9050f9b77..110bbb548 100644
--- a/test/long_run-py/suite.ini
+++ b/test/long_run-py/suite.ini
@@ -7,4 +7,5 @@ valgrind_disabled =
release_disabled =
lua_libs = suite.lua
use_unix_sockets = True
+use_unix_sockets_iproto = True
is_parallel = True
diff --git a/test/replication/status.result b/test/replication/status.result
index f9d20a923..a1e51e435 100644
--- a/test/replication/status.result
+++ b/test/replication/status.result
@@ -234,9 +234,9 @@ master.upstream.idle < 1
---
- true
...
-master.upstream.peer:match("localhost")
+master.upstream.peer:match("unix/")
---
-- localhost
+- unix/
...
master.downstream == nil
---
@@ -348,7 +348,7 @@ test_run:cmd("set variable master_port to 'replica.master'")
replica_uri = os.getenv("LISTEN")
---
...
-box.cfg{replication = {"guest@localhost:" .. master_port, replica_uri}}
+box.cfg{replication = {"guest@unix/:" .. master_port, replica_uri}}
---
...
master_id = test_run:get_server_id('default')
@@ -369,9 +369,9 @@ master.upstream.peer:match("guest")
---
- guest
...
-master.upstream.peer:match("localhost")
+master.upstream.peer:match("unix/")
---
-- localhost
+- unix/
...
master.downstream == nil
---
diff --git a/test/replication/status.test.lua b/test/replication/status.test.lua
index 8a82fe9ae..a26fec74b 100644
--- a/test/replication/status.test.lua
+++ b/test/replication/status.test.lua
@@ -86,7 +86,7 @@ master.uuid == box.space._cluster:get(master_id)[2]
master.upstream.status == "follow"
master.upstream.lag < 1
master.upstream.idle < 1
-master.upstream.peer:match("localhost")
+master.upstream.peer:match("unix/")
master.downstream == nil
-- replica's status
@@ -125,14 +125,14 @@ test_run:cmd("clear filter")
test_run:cmd('switch replica')
test_run:cmd("set variable master_port to 'replica.master'")
replica_uri = os.getenv("LISTEN")
-box.cfg{replication = {"guest@localhost:" .. master_port, replica_uri}}
+box.cfg{replication = {"guest@unix/:" .. master_port, replica_uri}}
master_id = test_run:get_server_id('default')
master = box.info.replication[master_id]
master.id == master_id
master.upstream.status == "follow"
master.upstream.peer:match("guest")
-master.upstream.peer:match("localhost")
+master.upstream.peer:match("unix/")
master.downstream == nil
test_run:cmd('switch default')
diff --git a/test/replication/suite.ini b/test/replication/suite.ini
index 0ca85933b..ac35b94a7 100644
--- a/test/replication/suite.ini
+++ b/test/replication/suite.ini
@@ -7,6 +7,7 @@ release_disabled = catch.test.lua errinj.test.lua gc.test.lua gc_no_space.test.l
config = suite.cfg
lua_libs = lua/fast_replica.lua lua/rlimit.lua
use_unix_sockets = True
+use_unix_sockets_iproto = True
long_run = prune.test.lua
is_parallel = True
pretest_clean = True
diff --git a/test/sql/suite.ini b/test/sql/suite.ini
index ebaf81a53..03c0175bf 100644
--- a/test/sql/suite.ini
+++ b/test/sql/suite.ini
@@ -3,6 +3,7 @@ core = tarantool
description = sql tests
script = app.lua
use_unix_sockets = True
+use_unix_sockets_iproto = True
config = engine.cfg
is_parallel = True
lua_libs = lua/sql_tokenizer.lua
diff --git a/test/vinyl/suite.ini b/test/vinyl/suite.ini
index f6783105f..54e6618d6 100644
--- a/test/vinyl/suite.ini
+++ b/test/vinyl/suite.ini
@@ -6,6 +6,7 @@ release_disabled = errinj.test.lua errinj_ddl.test.lua errinj_gc.test.lua errinj
config = suite.cfg
lua_libs = suite.lua stress.lua large.lua txn_proxy.lua ../box/lua/utils.lua
use_unix_sockets = True
+use_unix_sockets_iproto = True
long_run = stress.test.lua large.test.lua write_iterator_rand.test.lua dump_stress.test.lua select_consistency.test.lua throttle.test.lua
is_parallel = True
# throttle.test.lua temporary disabled for gh-4168
diff --git a/test/wal_off/suite.ini b/test/wal_off/suite.ini
index b384c0a74..637678c26 100644
--- a/test/wal_off/suite.ini
+++ b/test/wal_off/suite.ini
@@ -3,6 +3,7 @@ core = tarantool
script = wal.lua
description = tarantool/box, wal_mode = none
use_unix_sockets = True
+use_unix_sockets_iproto = True
is_parallel = True
pretest_clean = True
disabled = iterator_lt_gt.test.lua
diff --git a/test/xlog-py/suite.ini b/test/xlog-py/suite.ini
index 18737e48f..39440d859 100644
--- a/test/xlog-py/suite.ini
+++ b/test/xlog-py/suite.ini
@@ -4,4 +4,5 @@ description = legacy python tests
script = box.lua
lua_libs = lua/fiber.lua lua/fifo.lua
use_unix_sockets = True
+use_unix_sockets_iproto = True
is_parallel = True
diff --git a/test/xlog/suite.ini b/test/xlog/suite.ini
index 06cfbb068..689d2b871 100644
--- a/test/xlog/suite.ini
+++ b/test/xlog/suite.ini
@@ -7,6 +7,7 @@ valgrind_disabled =
release_disabled = errinj.test.lua panic_on_lsn_gap.test.lua panic_on_broken_lsn.test.lua checkpoint_threshold.test.lua
config = suite.cfg
use_unix_sockets = True
+use_unix_sockets_iproto = True
long_run = snap_io_rate.test.lua
is_parallel = True
pretest_clean = True
--
2.17.1
next reply other threads:[~2019-06-05 11:33 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-05 11:32 Alexander V. Tikhonov [this message]
2019-06-07 3:14 ` [tarantool-patches] " Alexander Turenko
-- strict thread matches above, loose matches on Subject: below --
2019-04-04 8:49 [tarantool-patches] " avtikhon
2019-04-03 14:30 avtikhon
2019-04-03 13:57 avtikhon
2019-04-03 13:44 avtikhon
2019-04-03 13:38 avtikhon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=a60fd350738b47d9a14f4664d36c66232af4eb2f.1559734330.git.avtikhon@tarantool.org \
--to=avtikhon@tarantool.org \
--cc=alexander.turenko@tarantool.org \
--cc=tarantool-patches@freelists.org \
--subject='Re: [tarantool-patches] [PATCH v1] test: use unix sockets iproto' \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox