Activity log for bug #1554151

Date Who What changed Old value New value Message
2016-03-07 17:45:37 James Anziano bug added bug
2016-03-07 17:48:15 James Anziano description Steps to reproduce: Make sure your environment is configured to use the dns-integration extension. Have an existing port created. Restart the server. It might be helpful first to insert a line into the beginning of the process_update_port method in neutron/neutron/plugins/ml2/extensions/dns_integration.py that prints out the DNS_DRIVER variable. It will be None the first time this method is called, afterwards it will correctly be an instance of your DNS driver object. After restarting the server, run neutron port-update my-port with any arguments. While the behavior is the same regardless of the argument, the bug only becomes a problem if the arguments are relevant to the DNS extension, such as dns_name or updating the IP address. The command will claim to have completed successfully, but the DNS driver is not loaded until the end of the process, after it has been used. Certain functions will check to make sure the DNS driver has been loaded and will exit silently and prematurely because it hasn't been loaded yet. Any subsequent port-update commands will be fine because the driver is now loaded until the server gets restarted again. Perceived severity: medium Steps to reproduce: Make sure your environment is configured to use the dns-integration extension. Have an existing port created. Restart the server. It might be helpful first to insert a line into the beginning of the process_update_port method in neutron/neutron/plugins/ml2/extensions/dns_integration.py that prints out the DNS_DRIVER variable. It will be None the first time this method is called, afterwards it will correctly be an instance of your DNS driver object. After restarting the server, run neutron port-update my-port with any arguments. While the behavior is the same regardless of the argument, the bug only becomes a problem if the arguments are relevant to the DNS extension, such as dns_name or updating the IP address. The command will claim to have completed successfully, but the DNS driver is not loaded until the end of the process, after it has been used. Certain functions will check to make sure the DNS driver has been loaded and will exit silently and prematurely because it hasn't been loaded yet. Any subsequent port-update commands will be fine because the driver is now loaded until the server gets restarted again. DevStack all-in-one built from master Perceived severity: medium
2016-03-07 17:48:48 James Anziano neutron: assignee James Anziano (janzian)
2016-03-07 17:54:00 Miguel Lavalle neutron: importance Undecided High
2016-03-07 17:54:19 Miguel Lavalle neutron: status New Confirmed
2016-03-07 19:14:09 OpenStack Infra neutron: status Confirmed In Progress
2016-03-08 08:15:15 Andreas Scheuring neutron: milestone mitaka-rc1
2016-03-09 02:57:44 Armando Migliaccio summary After the Neutron server has been restarted, the first create_port or update_port will fail to propagate DNS attributes to external DNS service because the driver not loaded properly. All subsequent create_port or update_port operations will correctly propagate DNS attributes to the external DNS service. update_port failure across server restart
2016-03-09 04:04:16 OpenStack Infra neutron: status In Progress Fix Released