{"push_id":957721091,"size":6,"distinct_size":6,"ref":"refs/heads/stable/liberty","head":"f7eb9eab49fe347fd063b11aae49b3f1da443b30","before":"29008d29ac9c57f14b177445749477960517f86a","commits":[{"sha":"1ab1e5873c4254d63c150dd5a61f9b34cfcb90d4","author":{"email":"eda21a895115a96b5307eb44669328e66a47d3f0@mirantis.com","name":"Oleg Bondarev"},"message":"Fix get_subnet_for_dvr() to return correct gateway mac\n\nFix filters to get the right gateway port for a subnet.\nWrong filters led to random port's mac being returned which may cause\nside effects. See bug for details.\n\nCloses-Bug: #1530179\nChange-Id: I8368255f00ab3e9586c8ff28dfe6739541000810\n(cherry picked from commit 0a00205c2a209f20a9d900ddb30f25628a32ebd9)","distinct":true,"url":"https://api.github.com/repos/noironetworks/neutron/commits/1ab1e5873c4254d63c150dd5a61f9b34cfcb90d4"},{"sha":"c12bf81e97fcf21ce913339e581e76f657a8b4aa","author":{"email":"c07372f051639954519ce2dc0f3f92c5dcfe367f@redhat.com","name":"Assaf Muller"},"message":"Fix L3 HA with IPv6\n\nWe currently use garp_master_repeat and garp_master_refresh\nto solve bug 1453855. We need to spawn keepalived only after\nall of the qr/qg ports have been wired so that the\ninitial GARP will be properly sent. Otherwise you get a routing\nblack hole. In lieu of a proper sync method, we used those two keepalived\noptions to send GARPs repeatedly:\n\na) We did not know it never stops spamming the network\nb) It causes VMs to lose their IPv6 default gateway due to a keepalived\n   bug, which has since been fixed, but it would need to be backported\n   to every keepalived version on every distro. Here's the patch:\n   https://github.com/acassen/keepalived/pull/200\n\nThe solution this patch proposes is to drop the repeat and refresh\nkeepalived options. This will fix the IPv6 bug but re-introduce bug\n1453855. So, this patch uses the delay option instead. It turns\nout keepalived sends a GARP when it transitions to MASTER, and then\nit waits a number of seconds determined by the delay option, and\nsends a GARP again. We'll use an aggressive 'delay' setting to make\nsure that when the node boots and the L3/L2 agents start, we'll\ngive the L2 agent enough time to wire the ports as a stopgap solution.\nNote that this only affects initial synchronization time, not failover\ntimes. Failover times will continue to be fast because the ports\nare wired ahead of time, the initial GARP after the state transition\nto MASTER will be sent properly.\n\nConflicts:\n\tneutron/tests/functional/agent/test_l3_agent.py\n\nChange-Id: I7a086472b8742828dae08ffd915c45e94fb4b94e\nCloses-Bug: #1520517\nRelated-Bug: #1453855\n(cherry picked from commit 303cbc6b5b745aadf026627c4cf2e90e3862b586)","distinct":true,"url":"https://api.github.com/repos/noironetworks/neutron/commits/c12bf81e97fcf21ce913339e581e76f657a8b4aa"},{"sha":"9246cffc7ca8f6731c5448e63f779b926f769e78","author":{"email":"0fe8dcd877f9d97966238264486684df9962e384@hp.com","name":"Swaminathan Vasudevan"},"message":"Change check_ports_exist_on_l3agent to pass the subnet_ids\n\nThe get_subnet_ids_on_router is called for every\navailable l3agent in check_ports_exist_on_l3agent.\nThis introduces un-necessary call to the same\nfunction multiple times which is expensive since it\ncalls get_ports internally.\n\nIn large scale the time taken to schedule a VM\non a given N-Node increases.\n\nBy passing the subnet_ids to check_ports_exist_on_l3agent\nwe would be only calling once get_subnet_ids_on_router in\nthe get_l3_agent_candidates.\n\nThis patch addresses the above problem by calling\nget_subnet_ids_on_router just once.\n\nRelated-Bug: #1513678\n\nConflicts:\n\n\tneutron/tests/unit/db/test_agentschedulers_db.py\n\nChange-Id: I9d130f98e07bfe571eee32b827ff9af4010ff0fb\n(cherry picked from commit 062ad0a0a62ab49bd0c27e73fbe93d739f82f410)","distinct":true,"url":"https://api.github.com/repos/noironetworks/neutron/commits/9246cffc7ca8f6731c5448e63f779b926f769e78"},{"sha":"634cf123380d16e0e8b3c1d4d03135aa5fa43590","author":{"email":"d95b56ce41a2e1ac4cecdd398defd7414407cc08@review.openstack.org","name":"Jenkins"},"message":"Merge \"Fix L3 HA with IPv6\" into stable/liberty","distinct":true,"url":"https://api.github.com/repos/noironetworks/neutron/commits/634cf123380d16e0e8b3c1d4d03135aa5fa43590"},{"sha":"78133c2139f36ec8370c2bb2762e5fb15f5d3526","author":{"email":"d95b56ce41a2e1ac4cecdd398defd7414407cc08@review.openstack.org","name":"Jenkins"},"message":"Merge \"Change check_ports_exist_on_l3agent to pass the subnet_ids\" into stable/liberty","distinct":true,"url":"https://api.github.com/repos/noironetworks/neutron/commits/78133c2139f36ec8370c2bb2762e5fb15f5d3526"},{"sha":"f7eb9eab49fe347fd063b11aae49b3f1da443b30","author":{"email":"d95b56ce41a2e1ac4cecdd398defd7414407cc08@review.openstack.org","name":"Jenkins"},"message":"Merge \"Fix get_subnet_for_dvr() to return correct gateway mac\" into stable/liberty","distinct":true,"url":"https://api.github.com/repos/noironetworks/neutron/commits/f7eb9eab49fe347fd063b11aae49b3f1da443b30"}]}