)]}'
{"devstack/plugin.sh":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"5674136402de07f041adb3734ab9026af0d9abbf","unresolved":false,"context_lines":[{"line_number":1134,"context_line":"    if ! [[ -z $default_routes ]]; then"},{"line_number":1135,"context_line":"        # \"replace\" should ignore \"RTNETLINK answers: File exists\""},{"line_number":1136,"context_line":"        # error if the route wasn\u0027t flushed by the bgp setup we did earlier."},{"line_number":1137,"context_line":"        echo \"$default_routes\" | xargs -n 5 sudo ip -6 route replace"},{"line_number":1138,"context_line":"    fi"},{"line_number":1139,"context_line":""},{"line_number":1140,"context_line":"}"}],"source_content_type":"text/x-sh","patch_set":1,"id":"7faddb67_3746d423","line":1137,"range":{"start_line":1137,"start_character":8,"end_line":1137,"end_character":68},"updated":"2019-07-22 19:27:03.000000000","message":"If there are multiple default routes, doesn\u0027t this just revert the first one?","commit_id":"4c7fc80f2357156931939dbe5314fa6b23c5848f"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"8f7057f15d4a017f456bcb049536079c30181a59","unresolved":false,"context_lines":[{"line_number":1134,"context_line":"    if ! [[ -z $default_routes ]]; then"},{"line_number":1135,"context_line":"        # \"replace\" should ignore \"RTNETLINK answers: File exists\""},{"line_number":1136,"context_line":"        # error if the route wasn\u0027t flushed by the bgp setup we did earlier."},{"line_number":1137,"context_line":"        echo \"$default_routes\" | xargs -n 5 sudo ip -6 route replace"},{"line_number":1138,"context_line":"    fi"},{"line_number":1139,"context_line":""},{"line_number":1140,"context_line":"}"}],"source_content_type":"text/x-sh","patch_set":1,"id":"7faddb67_083a95cc","line":1137,"range":{"start_line":1137,"start_character":8,"end_line":1137,"end_character":68},"in_reply_to":"7faddb67_280e7132","updated":"2019-07-22 21:42:58.000000000","message":"Not Quagga - lines 1020 to 1022 do remove the default route...","commit_id":"4c7fc80f2357156931939dbe5314fa6b23c5848f"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"ea9e58bd291bebfbae832538b1b178eda47182fb","unresolved":false,"context_lines":[{"line_number":1134,"context_line":"    if ! [[ -z $default_routes ]]; then"},{"line_number":1135,"context_line":"        # \"replace\" should ignore \"RTNETLINK answers: File exists\""},{"line_number":1136,"context_line":"        # error if the route wasn\u0027t flushed by the bgp setup we did earlier."},{"line_number":1137,"context_line":"        echo \"$default_routes\" | xargs -n 5 sudo ip -6 route replace"},{"line_number":1138,"context_line":"    fi"},{"line_number":1139,"context_line":""},{"line_number":1140,"context_line":"}"}],"source_content_type":"text/x-sh","patch_set":1,"id":"7faddb67_f7a6fc53","line":1137,"range":{"start_line":1137,"start_character":8,"end_line":1137,"end_character":68},"in_reply_to":"7faddb67_3746d423","updated":"2019-07-22 20:05:21.000000000","message":"rather, the last route... \n\nbecause route replace will not add more routes, it will just replace the existing route..\n\nI feel this approach is correct. In rare cases however, someone\u0027s devstack machine may have more than one default route, with different metrics... \n\nHowever, the failures we\u0027re seeing in the CI are strange: http://logs.openstack.org/10/670510/11/check/manila-tempest-minimal-dsvm-lvm/99b5b47/logs/devstacklog.txt.gz#_2019-07-22_17_58_38_471\n\nThe routes are weird - they are on the same interface, only different gateways - the gateways seem to be SLAAC-provided addresses.","commit_id":"4c7fc80f2357156931939dbe5314fa6b23c5848f"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"74fa4d7152de99daa22f6adfa2b8a182f7413a66","unresolved":false,"context_lines":[{"line_number":1134,"context_line":"    if ! [[ -z $default_routes ]]; then"},{"line_number":1135,"context_line":"        # \"replace\" should ignore \"RTNETLINK answers: File exists\""},{"line_number":1136,"context_line":"        # error if the route wasn\u0027t flushed by the bgp setup we did earlier."},{"line_number":1137,"context_line":"        echo \"$default_routes\" | xargs -n 5 sudo ip -6 route replace"},{"line_number":1138,"context_line":"    fi"},{"line_number":1139,"context_line":""},{"line_number":1140,"context_line":"}"}],"source_content_type":"text/x-sh","patch_set":1,"id":"7faddb67_280e7132","line":1137,"range":{"start_line":1137,"start_character":8,"end_line":1137,"end_character":68},"in_reply_to":"7faddb67_3dc1d581","updated":"2019-07-22 21:41:25.000000000","message":"I don\u0027t really understand why we are restoring these routes anyways.  Do we know that quagga is removing them sometimes?","commit_id":"4c7fc80f2357156931939dbe5314fa6b23c5848f"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"0ad9743ac963bdf7516ee8656c1fe2ce00056f4f","unresolved":false,"context_lines":[{"line_number":1134,"context_line":"    if ! [[ -z $default_routes ]]; then"},{"line_number":1135,"context_line":"        # \"replace\" should ignore \"RTNETLINK answers: File exists\""},{"line_number":1136,"context_line":"        # error if the route wasn\u0027t flushed by the bgp setup we did earlier."},{"line_number":1137,"context_line":"        echo \"$default_routes\" | xargs -n 5 sudo ip -6 route replace"},{"line_number":1138,"context_line":"    fi"},{"line_number":1139,"context_line":""},{"line_number":1140,"context_line":"}"}],"source_content_type":"text/x-sh","patch_set":1,"id":"7faddb67_3dc1d581","line":1137,"range":{"start_line":1137,"start_character":8,"end_line":1137,"end_character":68},"in_reply_to":"7faddb67_f7a6fc53","updated":"2019-07-22 20:57:09.000000000","message":"Yeah this doesn\u0027t seem to be the right fix, I was trying to restore both routes rather than replace both by the last.\n\nOn a machine with two IPv4 defaults:\n\nroot@ubuntu-devstack:/opt/stack# ip -4 route | cut -d \u0027 \u0027 -f1,2,3,4,5 | grep default                                                                                                                                                          \ndefault via 192.168.18.1 dev eth1\ndefault via 192.168.121.1 dev eth0\nroot@ubuntu-devstack:/opt/stack# default_routes\u003d$(ip -4 route | cut -d \u0027 \u0027 -f1,2,3,4,5 | grep default)\nroot@ubuntu-devstack:/opt/stack# echo $default_routes\ndefault via 192.168.18.1 dev eth1 default via 192.168.121.1 dev eth0\nroot@ubuntu-devstack:/opt/stack# echo $default_routes | xargs -n 5 sudo ip -4 route replace                                                                                                                                                   \nroot@ubuntu-devstack:/opt/stack# ip -4 route | cut -d \u0027 \u0027 -f1,2,3,4,5 | grep default \ndefault via 192.168.121.1 dev eth0\ndefault via 192.168.121.1 dev eth0","commit_id":"4c7fc80f2357156931939dbe5314fa6b23c5848f"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"797ca116985112259596542c63e1147dd298faf1","unresolved":false,"context_lines":[{"line_number":1013,"context_line":""},{"line_number":1014,"context_line":"function setup_ipv6 {"},{"line_number":1015,"context_line":""},{"line_number":1016,"context_line":"    # This will fail with mutltiple default routes and is not needed in CI"},{"line_number":1017,"context_line":"    # but may be useful when developing with devstack locally"},{"line_number":1018,"context_line":"    if [ $(trueorfalse False MANILA_RESTORE_IPV6_DEFAULT_ROUTE) \u003d\u003d True ]; then"},{"line_number":1019,"context_line":"        # save IPv6 default route to add back later after enabling forwarding"}],"source_content_type":"text/x-sh","patch_set":4,"id":"7faddb67_55efa1e8","line":1016,"range":{"start_line":1016,"start_character":26,"end_line":1016,"end_character":35},"updated":"2019-07-24 18:50:22.000000000","message":"multiple","commit_id":"8d17bdd18cf7502198d44120268533eb65fb3694"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"78d6388f323d34b74e1c94311e9139d750a4a8c6","unresolved":false,"context_lines":[{"line_number":1013,"context_line":""},{"line_number":1014,"context_line":"function setup_ipv6 {"},{"line_number":1015,"context_line":""},{"line_number":1016,"context_line":"    # This will fail with mutltiple default routes and is not needed in CI"},{"line_number":1017,"context_line":"    # but may be useful when developing with devstack locally"},{"line_number":1018,"context_line":"    if [ $(trueorfalse False MANILA_RESTORE_IPV6_DEFAULT_ROUTE) \u003d\u003d True ]; then"},{"line_number":1019,"context_line":"        # save IPv6 default route to add back later after enabling forwarding"}],"source_content_type":"text/x-sh","patch_set":4,"id":"7faddb67_751dfdbb","line":1016,"range":{"start_line":1016,"start_character":26,"end_line":1016,"end_character":35},"in_reply_to":"7faddb67_55efa1e8","updated":"2019-07-24 19:10:25.000000000","message":"Thanks!","commit_id":"8d17bdd18cf7502198d44120268533eb65fb3694"}]}
