Before this commit vtep-ctl hung forever if it didn't manage to reach the database.
This caused the testcase "ovn -- 3 HVs, 1 VIFs/HV, 1 GW, 1 LS" to hang occasionally, because ovsdb-server could be killed before ovs-vtep called vtep-ctl. This mimics the behaviour of ovs-vsctl, ovn-nbctl and ovn-sbctl. Signed-off-by: Daniele Di Proietto <[email protected]> CC: Ansis Atteka <[email protected]> CC: Gurucharan Shetty <[email protected]> --- vtep/vtep-ctl.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/vtep/vtep-ctl.c b/vtep/vtep-ctl.c index c3789d2..604d19d 100644 --- a/vtep/vtep-ctl.c +++ b/vtep/vtep-ctl.c @@ -135,6 +135,11 @@ main(int argc, char *argv[]) seqno = ovsdb_idl_get_seqno(idl); for (;;) { ovsdb_idl_run(idl); + if (!ovsdb_idl_is_alive(idl)) { + int retval = ovsdb_idl_get_last_error(idl); + ctl_fatal("%s: database connection failed (%s)", + db, ovs_retval_to_string(retval)); + } if (seqno != ovsdb_idl_get_seqno(idl)) { seqno = ovsdb_idl_get_seqno(idl); -- 2.1.4 _______________________________________________ dev mailing list [email protected] http://openvswitch.org/mailman/listinfo/dev
