This adds a janitor worker to the L3 DB module that will run every 5 minutes looking for floating IP ports with the device_id of 'PENDING'. If it finds any, it will keep track of the port ID to see if any stay in 'PENDING' with the next iteration. If the device ID is still PENDING after 5 minutes, it means one of two things has happened. Either the server died after creating the floating IP port, but before creating the floating IP itself; or, it died after creating the floating IP port and the floating IP record, but before updating the device_id of the floating IP port to the floating IP ID. The janitor handles both cases by deleting the floating IP port if it has no associated floating IP and by updating the floating IP port device ID if it does have an associated floating IP. Related-Bug: #1540844 Closes-Bug: #1648098 Change-Id: I684a822553a5a0c54513ca7d20ccaf3c74180593
832 B
832 B