)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":27339,"name":"Michal Arbet","email":"michal.arbet@ultimum.io","username":"michalarbet"},"change_message_id":"4019cfa887f98afb9da349e55f0e9c909d351df1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"c2a59dc6_58168c1d","updated":"2023-04-17 11:41:09.000000000","message":"If we have prechecks working now, shouldn\u0027t we switch high availability to yes by default ? What do you think ?","commit_id":"8572550fd1d1146a2b810f49749a2595d7e6e7b2"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"6cc0923ca98cb51c40317e54461e941e90f02ef0","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":4,"id":"41e82a1e_5143cd4d","in_reply_to":"c2a59dc6_58168c1d","updated":"2023-04-17 12:35:42.000000000","message":"imho we should try in master at least","commit_id":"8572550fd1d1146a2b810f49749a2595d7e6e7b2"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"f75607e2d7e54594a2445554cd44e03f03fa31b0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"3a52402e_03fc60f0","updated":"2023-04-17 19:56:41.000000000","message":"since we moved to precheck should we handle check_mode ?","commit_id":"d53e4dbb02fb11df6e700981d1181710e9d38c60"},{"author":{"_account_id":27339,"name":"Michal Arbet","email":"michal.arbet@ultimum.io","username":"michalarbet"},"change_message_id":"242a4c25e40e847d2cb6e1b17846a8a979f368e5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"663d73d8_19257193","in_reply_to":"3a52402e_03fc60f0","updated":"2023-04-18 15:56:11.000000000","message":"I don\u0027t think you want to exec kolla-ansible prechecks --check ... it doesn\u0027t make sense.","commit_id":"d53e4dbb02fb11df6e700981d1181710e9d38c60"},{"author":{"_account_id":27339,"name":"Michal Arbet","email":"michal.arbet@ultimum.io","username":"michalarbet"},"change_message_id":"2b71a163d912904d0ebf6c11a6d3e1b0c421afa4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"b784d271_278318a0","in_reply_to":"3bed390a_672c8b00","updated":"2023-04-18 16:18:03.000000000","message":"hmm, ok, then we should add check_mode: false to \"List RabbitMQ policies\" task","commit_id":"d53e4dbb02fb11df6e700981d1181710e9d38c60"},{"author":{"_account_id":14200,"name":"Maksim Malchuk","email":"maksim.malchuk@gmail.com","username":"mmalchuk"},"change_message_id":"a499b88bcdc132c0965af53f1e5b5fde38b30568","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"3bed390a_672c8b00","in_reply_to":"663d73d8_19257193","updated":"2023-04-18 16:15:04.000000000","message":"but there was the bug where we\u0027re fixed this: https://bugs.launchpad.net/kolla-ansible/+bug/2002657","commit_id":"d53e4dbb02fb11df6e700981d1181710e9d38c60"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"956d98b5c34083c4402f45730a95fff7579d412c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"e4c0a39a_31b1a16d","in_reply_to":"b784d271_278318a0","updated":"2023-04-19 08:46:33.000000000","message":"Done","commit_id":"d53e4dbb02fb11df6e700981d1181710e9d38c60"}],"ansible/roles/service-precheck/tasks/main.yml":[{"author":{"_account_id":27339,"name":"Michal Arbet","email":"michal.arbet@ultimum.io","username":"michalarbet"},"change_message_id":"f6a569a9d0654646008598d65296575ec4e13d7f","unresolved":true,"context_lines":[{"line_number":38,"context_line":"              Please follow the process described here: https://docs.openstack.org/kolla-ansible/latest/reference/message-queues/rabbitmq.html#high-availability."},{"line_number":39,"context_line":"              Note that this process may take several hours on larger systems, and may cause a degredation in performance at large scale."},{"line_number":40,"context_line":"              If you do not wish to enable this feature, set om_enable_rabbitmq_high_availability to False."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"      delegate_to: \"{{ groups[\u0027rabbitmq\u0027] | first }}\""},{"line_number":43,"context_line":"      run_once: true"},{"line_number":44,"context_line":"      when:"},{"line_number":45,"context_line":"        - container_facts[\u0027rabbitmq\u0027] is defined"},{"line_number":46,"context_line":"        - om_enable_rabbitmq_high_availability | bool"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"8abe778c_9bac1bd5","line":43,"range":{"start_line":41,"start_character":0,"end_line":43,"end_character":20},"updated":"2023-04-16 22:30:59.000000000","message":"I think you should use run_once: true only, and remove delegate_to.","commit_id":"5a4cc774c6dc874a366777cc73f0149988b49218"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"6e9f043244f523def4acf2398805a0476918d048","unresolved":false,"context_lines":[{"line_number":38,"context_line":"              Please follow the process described here: https://docs.openstack.org/kolla-ansible/latest/reference/message-queues/rabbitmq.html#high-availability."},{"line_number":39,"context_line":"              Note that this process may take several hours on larger systems, and may cause a degredation in performance at large scale."},{"line_number":40,"context_line":"              If you do not wish to enable this feature, set om_enable_rabbitmq_high_availability to False."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"      delegate_to: \"{{ groups[\u0027rabbitmq\u0027] | first }}\""},{"line_number":43,"context_line":"      run_once: true"},{"line_number":44,"context_line":"      when:"},{"line_number":45,"context_line":"        - container_facts[\u0027rabbitmq\u0027] is defined"},{"line_number":46,"context_line":"        - om_enable_rabbitmq_high_availability | bool"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"c3c1b252_29c323f8","line":43,"range":{"start_line":41,"start_character":0,"end_line":43,"end_character":20},"in_reply_to":"8abe778c_9bac1bd5","updated":"2023-04-17 09:30:20.000000000","message":"Done","commit_id":"5a4cc774c6dc874a366777cc73f0149988b49218"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"c951da64900b975e8d49b4e4d69b0a6d521e5e72","unresolved":true,"context_lines":[{"line_number":14,"context_line":"  loop_control:"},{"line_number":15,"context_line":"    label: \"{{ service_name }}\""},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"- block:"},{"line_number":18,"context_line":"    - name: Get RabbitMQ container facts"},{"line_number":19,"context_line":"      become: True"},{"line_number":20,"context_line":"      kolla_container_facts:"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"fa026481_42cfac28","line":17,"updated":"2023-04-17 13:38:13.000000000","message":"Should this move to ansible/roles/rabbitmq/tasks/precheck.yml? We don\u0027t need to run it for every service.","commit_id":"8572550fd1d1146a2b810f49749a2595d7e6e7b2"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"945373dd786fcb01ea263afdbe4f1481302ee728","unresolved":false,"context_lines":[{"line_number":14,"context_line":"  loop_control:"},{"line_number":15,"context_line":"    label: \"{{ service_name }}\""},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"- block:"},{"line_number":18,"context_line":"    - name: Get RabbitMQ container facts"},{"line_number":19,"context_line":"      become: True"},{"line_number":20,"context_line":"      kolla_container_facts:"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"a5574043_8e5dfcb7","line":17,"in_reply_to":"aa664deb_6a981ad1","updated":"2023-04-17 15:39:30.000000000","message":"Done","commit_id":"8572550fd1d1146a2b810f49749a2595d7e6e7b2"},{"author":{"_account_id":35263,"name":"Matt Crees","email":"mattc@stackhpc.com","username":"mattcrees"},"change_message_id":"a5c8f168e5566b796b1584c9b6f22a0d4b0e2a79","unresolved":true,"context_lines":[{"line_number":14,"context_line":"  loop_control:"},{"line_number":15,"context_line":"    label: \"{{ service_name }}\""},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"- block:"},{"line_number":18,"context_line":"    - name: Get RabbitMQ container facts"},{"line_number":19,"context_line":"      become: True"},{"line_number":20,"context_line":"      kolla_container_facts:"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"aa664deb_6a981ad1","line":17,"in_reply_to":"fa026481_42cfac28","updated":"2023-04-17 15:20:37.000000000","message":"I\u0027d thought that reconfiguring a service to use durable queues without resetting the state of RabbitMQ was causing the error seen when deploying with ``om_enable_rabbitmq_high_availability \u003d True`` without this precheck.\n\n```ERROR oslo_service.service amqp.exceptions.PreconditionFailed: Exchange.declare: (406) PRECONDITION_FAILED - inequivalent arg \u0027durable\u0027 for exchange \u0027neutron\u0027 in vhost \u0027/\u0027: received \u0027true\u0027 but current is \u0027false\u0027```\n\nHowever, after testing it now it seems that this only occurs if you also reconfigure RabbitMQ to apply the ha-all policy as this causes new queue (the mirrors) to be declared. So yes, it should be OK to just run this precheck in the RabbitMQ task.\n\nIt is worth noting that this means reconfiguring a service without touching RabbitMQ will mean that the preexisitng transient queues are still used, even though the config file specifies durable queues.","commit_id":"8572550fd1d1146a2b810f49749a2595d7e6e7b2"}]}
