test: update test-run
Strengthen test_run:cmd() against temporary connection failures (#193). We recently added 'replication/box_set_replication_stress' test that may exceed file descriptor limit. When test_run:cmd() function executes a command ('switch master' in the case), it tries to create a new socket and connect it to test-run's inspector, but it may fail to do so in the case, because of the file descriptor limit. The sockets that the test produces are closed in background, so if we'll keep trying to create and connect a socket we'll succeed once. This is exactly that the test-run's patch doing: it fails test_run:cmd() function only if a socket cannot be connected during 100 seconds. I guess that the reason why sockets are not closed immediately is that relays wait until replicas will close its side of a socket and only then closes its side. Didn't investigate it deeper, to be honest. (cherry picked from commit 5fccf003)
Loading
Please register or sign in to comment