@@ -216,6 +216,10 @@ func (o *OvsMonitor) bridgeAdded(bridgeUUID string, row *libovsdb.RowUpdate) {
216216}
217217
218218func (o * OvsMonitor ) bridgeDeleted (bridgeUUID string , row * libovsdb.RowUpdate ) {
219+ // for some reason ovs can trigger multiple time this event
220+ if _ , ok := o .bridgeCache [bridgeUUID ]; ! ok {
221+ return
222+ }
219223 delete (o .bridgeCache , bridgeUUID )
220224
221225 logging .GetLogger ().Infof ("Bridge \" %s(%s)\" got deleted" ,
@@ -267,6 +271,10 @@ func (o *OvsMonitor) interfaceAdded(interfaceUUID string, row *libovsdb.RowUpdat
267271}
268272
269273func (o * OvsMonitor ) interfaceDeleted (interfaceUUID string , row * libovsdb.RowUpdate ) {
274+ // for some reason ovs can trigger multiple time this event
275+ if _ , ok := o .interfaceCache [interfaceUUID ]; ! ok {
276+ return
277+ }
270278 delete (o .interfaceCache , interfaceUUID )
271279
272280 logging .GetLogger ().Infof ("Interface \" %s(%s)\" got deleted" ,
@@ -317,6 +325,10 @@ func (o *OvsMonitor) portAdded(portUUID string, row *libovsdb.RowUpdate) {
317325}
318326
319327func (o * OvsMonitor ) portDeleted (portUUID string , row * libovsdb.RowUpdate ) {
328+ // for some reason ovs can trigger multiple time this event
329+ if _ , ok := o .portCache [portUUID ]; ! ok {
330+ return
331+ }
320332 delete (o .portCache , portUUID )
321333
322334 logging .GetLogger ().Infof ("Port \" %s(%s)\" got deleted" ,
0 commit comments