On timedout, WaitUntil() method return a positive ETIMEDOUT error number.
It never returns -ETIMEDOUT.
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
int ret = 0;
while (!done) {
ret = ping_recvd_cond.WaitUntil(lock, until);
- if (ret == -ETIMEDOUT)
+ if (ret == ETIMEDOUT)
break;
}
return ret;
cmd = {'prefix': 'mon dump', 'format':'json'}
ret, buf, out = self.rados.mon_command(json.dumps(cmd), b'')
for mon in json.loads(buf.decode('utf8'))['mons']:
- buf = json.loads(self.rados.ping_monitor(mon['name']))
- assert buf.get('health')
+ while True:
+ buf = json.loads(self.rados.ping_monitor(mon['name']))
+ if buf.get('health'):
+ break
def test_create(self):
self.rados.create_pool('foo')