Skip to content
Snippets Groups Projects
Commit cda363f3 authored by Vladislav Shpilevoy's avatar Vladislav Shpilevoy
Browse files

swim: fix flaky parts in swim/swim.test.lua

They are caused by

    * too slow network, when SWIM tests are run under high load;

    * UDP packets late arrival or drop.

Follow up #3234
parent 8a20035f
No related branches found
No related tags found
No related merge requests found
...@@ -236,17 +236,9 @@ s1:broadcast(listen_port) ...@@ -236,17 +236,9 @@ s1:broadcast(listen_port)
--- ---
- true - true
... ...
while s2:size() ~= 2 do fiber.sleep(0.01) end while s2:size() ~= 2 or s1:size() ~= 2 do fiber.sleep(0.01) s1:broadcast(listen_port) end
--- ---
... ...
s1:size()
---
- 2
...
s2:size()
---
- 2
...
s2:delete() s2:delete()
--- ---
... ...
...@@ -263,11 +255,10 @@ s1:remove_member('1234') ...@@ -263,11 +255,10 @@ s1:remove_member('1234')
--- ---
- error: 'builtin/swim.lua:<line>: swim:remove_member: invalid UUID' - error: 'builtin/swim.lua:<line>: swim:remove_member: invalid UUID'
... ...
s1:remove_member(uuid(2)) s1:remove_member(uuid(2)) size = s1:size()
--- ---
- true
... ...
s1:size() size
--- ---
- 1 - 1
... ...
...@@ -293,9 +284,8 @@ s1:add_member({uuid = uuid(2)}) ...@@ -293,9 +284,8 @@ s1:add_member({uuid = uuid(2)})
- null - null
- 'swim.add_member: URI and UUID are mandatory' - 'swim.add_member: URI and UUID are mandatory'
... ...
s1:add_member({uri = listen_uri, uuid = uuid(2)}) s1:remove_member(uuid(2)) s1:add_member({uri = listen_uri, uuid = uuid(2)})
--- ---
- true
... ...
s1:add_member({uri = listen_uri, uuid = uuid(2)}) s1:add_member({uri = listen_uri, uuid = uuid(2)})
--- ---
...@@ -306,15 +296,14 @@ s1:size() ...@@ -306,15 +296,14 @@ s1:size()
--- ---
- 2 - 2
... ...
s1:cfg({uuid = uuid(3)}) s1:cfg({uuid = uuid(3)}) old_self = s1:member_by_uuid(uuid(1))
--- ---
- true
... ...
s1:self():uuid() s1:self():uuid()
--- ---
- 00000000-0000-1000-8000-000000000003 - 00000000-0000-1000-8000-000000000003
... ...
s1:member_by_uuid(uuid(1)) old_self
--- ---
- uri: 127.0.0.1:<port> - uri: 127.0.0.1:<port>
status: left status: left
...@@ -848,13 +837,11 @@ s2 = swim.new({uuid = uuid(2), uri = uri(), heartbeat_rate = 0.01}) ...@@ -848,13 +837,11 @@ s2 = swim.new({uuid = uuid(2), uri = uri(), heartbeat_rate = 0.01})
s1_self = s1:self() s1_self = s1:self()
--- ---
... ...
s1:add_member({uuid = s2:self():uuid(), uri = s2:self():uri()}) _ = s1:add_member({uuid = s2:self():uuid(), uri = s2:self():uri()})
--- ---
- true
... ...
s2:add_member({uuid = s1_self:uuid(), uri = s1_self:uri()}) _ = s2:add_member({uuid = s1_self:uuid(), uri = s1_self:uri()})
--- ---
- true
... ...
s1:size() s1:size()
--- ---
......
...@@ -82,30 +82,28 @@ s1:broadcast('127.0.0.1:3333') ...@@ -82,30 +82,28 @@ s1:broadcast('127.0.0.1:3333')
s1:broadcast() s1:broadcast()
s1:broadcast(listen_port) s1:broadcast(listen_port)
while s2:size() ~= 2 do fiber.sleep(0.01) end while s2:size() ~= 2 or s1:size() ~= 2 do fiber.sleep(0.01) s1:broadcast(listen_port) end
s1:size()
s2:size()
s2:delete() s2:delete()
s1.remove_member() s1.remove_member()
s1:remove_member(100) s1:remove_member(100)
s1:remove_member('1234') s1:remove_member('1234')
s1:remove_member(uuid(2)) s1:remove_member(uuid(2)) size = s1:size()
s1:size() size
s1.add_member() s1.add_member()
s1:add_member(100) s1:add_member(100)
s1:add_member({uri = true}) s1:add_member({uri = true})
s1:add_member({uri = listen_uri}) s1:add_member({uri = listen_uri})
s1:add_member({uuid = uuid(2)}) s1:add_member({uuid = uuid(2)})
s1:add_member({uri = listen_uri, uuid = uuid(2)}) s1:remove_member(uuid(2)) s1:add_member({uri = listen_uri, uuid = uuid(2)})
s1:add_member({uri = listen_uri, uuid = uuid(2)}) s1:add_member({uri = listen_uri, uuid = uuid(2)})
s1:size() s1:size()
s1:cfg({uuid = uuid(3)}) s1:cfg({uuid = uuid(3)}) old_self = s1:member_by_uuid(uuid(1))
s1:self():uuid() s1:self():uuid()
s1:member_by_uuid(uuid(1)) old_self
-- Can't remove self. -- Can't remove self.
s1:remove_member(uuid(3)) s1:remove_member(uuid(3))
-- Not existing. -- Not existing.
...@@ -274,8 +272,8 @@ s:delete() ...@@ -274,8 +272,8 @@ s:delete()
s1 = swim.new({uuid = uuid(1), uri = uri(listen_port), heartbeat_rate = 0.01}) s1 = swim.new({uuid = uuid(1), uri = uri(listen_port), heartbeat_rate = 0.01})
s2 = swim.new({uuid = uuid(2), uri = uri(), heartbeat_rate = 0.01}) s2 = swim.new({uuid = uuid(2), uri = uri(), heartbeat_rate = 0.01})
s1_self = s1:self() s1_self = s1:self()
s1:add_member({uuid = s2:self():uuid(), uri = s2:self():uri()}) _ = s1:add_member({uuid = s2:self():uuid(), uri = s2:self():uri()})
s2:add_member({uuid = s1_self:uuid(), uri = s1_self:uri()}) _ = s2:add_member({uuid = s1_self:uuid(), uri = s1_self:uri()})
s1:size() s1:size()
s2:size() s2:size()
s1_view = s2:member_by_uuid(s1_self:uuid()) s1_view = s2:member_by_uuid(s1_self:uuid())
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment