Skip to content

Commit 6bdfa82

Browse files
committed
ovsdb: do not trigger twice delete message
1 parent 3b56263 commit 6bdfa82

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

ovs/ovsdb.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -216,6 +216,10 @@ func (o *OvsMonitor) bridgeAdded(bridgeUUID string, row *libovsdb.RowUpdate) {
216216
}
217217

218218
func (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

269273
func (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

319327
func (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

Comments
 (0)