)]}'
{".zuul.yaml":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"94d4bc21ad2a811dc751b13003d6a3294b77c94c","unresolved":true,"context_lines":[{"line_number":634,"context_line":"          # Disable other non-essential services that we don\u0027t need for this"},{"line_number":635,"context_line":"          # job."},{"line_number":636,"context_line":"          c-bak: false"},{"line_number":637,"context_line":"          # enable a second scheduler to ensure only one runs the discover hosts perodic"},{"line_number":638,"context_line":"          n-sch: true"},{"line_number":639,"context_line":"        devstack_local_conf:"},{"line_number":640,"context_line":"          post-config:"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"dcee2cbf_12e864cd","line":637,"updated":"2025-01-21 12:34:50.000000000","message":"the second scheduler does not have proper config:\n```\nJan 10 15:00:31 np0039534930 nova-scheduler[39483]: ERROR nova     self._start()\nJan 10 15:00:31 np0039534930 nova-scheduler[39483]: ERROR nova   File \"/opt/stack/data/venv/lib/python3.12/site-packages/oslo_db/sqlalchemy/enginefacade.py\", line 530, in _start\nJan 10 15:00:31 np0039534930 nova-scheduler[39483]: ERROR nova     self._setup_for_connection(\nJan 10 15:00:31 np0039534930 nova-scheduler[39483]: ERROR nova   File \"/opt/stack/data/venv/lib/python3.12/site-packages/oslo_db/sqlalchemy/enginefacade.py\", line 644, in _setup_for_connection\nJan 10 15:00:31 np0039534930 nova-scheduler[39483]: ERROR nova     raise exception.CantStartEngineError(\nJan 10 15:00:31 np0039534930 nova-scheduler[39483]: ERROR nova oslo_db.exception.CantStartEngineError: No sql_connection parameter is established\n```\nhttps://zuul.opendev.org/t/openstack/build/f91de2eff294408f96f2391a10fe9dcc/log/compute1/logs/screen-n-sch.txt","commit_id":"b227783cda682b2f56a953570182c4d93180e2c9"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"23a06b208828aedaa954b6737d7ea744f846dbe1","unresolved":true,"context_lines":[{"line_number":634,"context_line":"          # Disable other non-essential services that we don\u0027t need for this"},{"line_number":635,"context_line":"          # job."},{"line_number":636,"context_line":"          c-bak: false"},{"line_number":637,"context_line":"          # enable a second scheduler to ensure only one runs the discover hosts perodic"},{"line_number":638,"context_line":"          n-sch: true"},{"line_number":639,"context_line":"        devstack_local_conf:"},{"line_number":640,"context_line":"          post-config:"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"dd22f565_970b260e","line":637,"in_reply_to":"c49c2fa6_36dd75b0","updated":"2025-01-22 08:48:56.000000000","message":"I agree that the job is just a nice to have but not mandatory to land this. So you can move that to a followup patch. At the moment I don\u0027t have suggestion how to make the db connection available on the second node.","commit_id":"b227783cda682b2f56a953570182c4d93180e2c9"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"c0afff362df0a08d2f383b14880b1754306f2e1a","unresolved":true,"context_lines":[{"line_number":634,"context_line":"          # Disable other non-essential services that we don\u0027t need for this"},{"line_number":635,"context_line":"          # job."},{"line_number":636,"context_line":"          c-bak: false"},{"line_number":637,"context_line":"          # enable a second scheduler to ensure only one runs the discover hosts perodic"},{"line_number":638,"context_line":"          n-sch: true"},{"line_number":639,"context_line":"        devstack_local_conf:"},{"line_number":640,"context_line":"          post-config:"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"c49c2fa6_36dd75b0","line":637,"in_reply_to":"dcee2cbf_12e864cd","updated":"2025-01-21 14:15:51.000000000","message":"yep its becasue the db connection url is not in the comptue node nova.conf\n\ni have not had time to fiture out what to add to fix that.\n\ni kind of did the job change more as a nice to have.\n\ndo you think it is required or have any suggestion on how to fix this?","commit_id":"b227783cda682b2f56a953570182c4d93180e2c9"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"12f7d53c60a86c991f2eec3b533a2fe485843a8a","unresolved":true,"context_lines":[{"line_number":634,"context_line":"          # Disable other non-essential services that we don\u0027t need for this"},{"line_number":635,"context_line":"          # job."},{"line_number":636,"context_line":"          c-bak: false"},{"line_number":637,"context_line":"          # enable a second scheduler to ensure only one runs the discover hosts perodic"},{"line_number":638,"context_line":"          n-sch: true"},{"line_number":639,"context_line":"        devstack_local_conf:"},{"line_number":640,"context_line":"          post-config:"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"34f92d3e_85d0ac83","line":637,"in_reply_to":"dd22f565_970b260e","updated":"2025-02-06 13:08:17.000000000","message":"ack ill drop it for now.\nI\u0027ll have to look into devstack to figure out how to do that and it might need a patch to make it possible.","commit_id":"b227783cda682b2f56a953570182c4d93180e2c9"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"c07c710db45da067669909fb2e998217a99cc777","unresolved":true,"context_lines":[{"line_number":640,"context_line":"          post-config:"},{"line_number":641,"context_line":"            $NOVA_CONF:"},{"line_number":642,"context_line":"              scheduler:"},{"line_number":643,"context_line":"                discover_hosts_in_cells_interval: 30"},{"line_number":644,"context_line":"    # Perform setup for the multi-cell environment. Note that this runs"},{"line_number":645,"context_line":"    # before devstack is setup on the controller host."},{"line_number":646,"context_line":"    pre-run: playbooks/nova-multi-cell/pre.yaml"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"30d12bce_c5264937","line":643,"updated":"2025-01-10 14:29:43.000000000","message":"Note to reviewers.\n\nI\u0027m just turning this on so that we can look at the logs and see that only one of the two scheduler instances actually runs the periodic.\n\nwe technialy dont need to do this but it does not hurt","commit_id":"b227783cda682b2f56a953570182c4d93180e2c9"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"d882a11ec62bf0d94461934009c9facfb659cc46","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"6a994120_804e70bb","updated":"2025-01-07 18:37:41.000000000","message":"we are going to tack this with https://blueprints.launchpad.net/nova/+spec/distributed-host-discovery\n\nill update topic and commit message when i respin.","commit_id":"5f034efa20cd5efbd049a72e128d312c68b6ea76"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"0a15ef2e10ed5cc33dd13d681a29ace390399374","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"7885c1db_2b7aeb4c","updated":"2025-01-14 16:04:59.000000000","message":"Looks good to me.","commit_id":"b227783cda682b2f56a953570182c4d93180e2c9"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"5246fce06afe198960a95099fe8555814a0b4e95","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"d4d4a33c_6fc85201","updated":"2025-01-21 12:30:38.000000000","message":"recheck \n\nnova-scheduler failed to start:\n```\nJan 10 15:00:31 np0039534930 nova-scheduler[39483]: ERROR nova     self._start()\nJan 10 15:00:31 np0039534930 nova-scheduler[39483]: ERROR nova   File \"/opt/stack/data/venv/lib/python3.12/site-packages/oslo_db/sqlalchemy/enginefacade.py\", line 530, in _start\nJan 10 15:00:31 np0039534930 nova-scheduler[39483]: ERROR nova     self._setup_for_connection(\nJan 10 15:00:31 np0039534930 nova-scheduler[39483]: ERROR nova   File \"/opt/stack/data/venv/lib/python3.12/site-packages/oslo_db/sqlalchemy/enginefacade.py\", line 644, in _setup_for_connection\nJan 10 15:00:31 np0039534930 nova-scheduler[39483]: ERROR nova     raise exception.CantStartEngineError(\nJan 10 15:00:31 np0039534930 nova-scheduler[39483]: ERROR nova oslo_db.exception.CantStartEngineError: No sql_connection parameter is established\n```","commit_id":"b227783cda682b2f56a953570182c4d93180e2c9"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"94d4bc21ad2a811dc751b13003d6a3294b77c94c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"180f62b0_973c7ab2","updated":"2025-01-21 12:34:50.000000000","message":"scheduler startup failure in the multicell job is relevant to the zuul change in this patch.","commit_id":"b227783cda682b2f56a953570182c4d93180e2c9"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"a17c808657c9ba50341e80d85bc13ee3f96b70a8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"e97ca534_3c35a667","updated":"2025-02-11 08:51:42.000000000","message":"Looks good. Thanks!","commit_id":"e98393c5c26743ec4c862af3e1a4beaa7f2d174b"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"15220aacf983bfd67420eed798e2b6ec5d204043","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"5241e16d_295ce338","updated":"2025-02-17 13:20:56.000000000","message":"The implementation looks good to me given the consensus we had on the design.","commit_id":"e98393c5c26743ec4c862af3e1a4beaa7f2d174b"},{"author":{"_account_id":34860,"name":"Amit Uniyal","email":"auniyal@redhat.com","username":"auniyal"},"change_message_id":"72689677dd72ff3a36174fbe2b14d86d57e3fce2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"6b28ba41_b4e81f69","updated":"2025-02-18 05:07:42.000000000","message":"recheck\nbuild-openstack-releasenotes faild, seems unrealted also passed earlier","commit_id":"e98393c5c26743ec4c862af3e1a4beaa7f2d174b"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"6e673b591933f58776a02768301105ebc54b569b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"4dac4f58_9e35ea77","updated":"2025-02-17 23:56:13.000000000","message":"recheck tox coverage timeout\n\nthis may have just been a slow node\n\nthe intial test setup too 6 mins to start runing the jobs.\nthere was no indication fo slow mirrors and the \n\nthere also ising a gap bettwen the timeout and the last log\n\n2025-02-17 19:39:55.575819 | ubuntu-noble | {0} nova.tests.unit.console.test_websocketproxy.NovaProxyRequestHandlerDBTestCase.test_new_websocket_client_db_instance_not_found [0.608600s] ... ok\n\n2025-02-17 19:39:56.207692 | ubuntu-noble | {0} nova.tests.unit.console.test_websocketproxy.NovaProxyRequestHandlerDBTestCase.test_new_websocket_client_db_internal_access_path [0.627509s] ... ok\n\n2025-02-17 19:39:56.344777 | RUN END RESULT_TIMED_OUT: [untrusted : opendev.org/zuul/zuul-jobs/playbooks/tox/run.yaml@master]\n\nso there isint an indication fo it hanging \n\nalthough looking at the output it does look like the test are runnign serially\nit shoud be runnign in parallel. that unrelated to this patch.","commit_id":"e98393c5c26743ec4c862af3e1a4beaa7f2d174b"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"a99cf60c3dfd83318813f461b27a62f63881cbff","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"3a7bb3b8_f491b4cb","updated":"2025-02-17 18:15:17.000000000","message":"recheck unrelated failure","commit_id":"e98393c5c26743ec4c862af3e1a4beaa7f2d174b"}],"nova/scheduler/manager.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"d882a11ec62bf0d94461934009c9facfb659cc46","unresolved":true,"context_lines":[{"line_number":29,"context_line":"from oslo_serialization import jsonutils"},{"line_number":30,"context_line":"from oslo_service import periodic_task"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"from nova.compute import utils as compute_utils"},{"line_number":34,"context_line":"import nova.conf"},{"line_number":35,"context_line":"from nova import exception"}],"source_content_type":"text/x-python","patch_set":2,"id":"9993234f_72e017f5","line":32,"updated":"2025-01-07 18:37:41.000000000","message":"and drop this","commit_id":"5f034efa20cd5efbd049a72e128d312c68b6ea76"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"fe45d0172eaa4b0bc37b9d9539a22ecfd709adb2","unresolved":false,"context_lines":[{"line_number":29,"context_line":"from oslo_serialization import jsonutils"},{"line_number":30,"context_line":"from oslo_service import periodic_task"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"from nova.compute import utils as compute_utils"},{"line_number":34,"context_line":"import nova.conf"},{"line_number":35,"context_line":"from nova import exception"}],"source_content_type":"text/x-python","patch_set":2,"id":"f459090f_8772318a","line":32,"in_reply_to":"9993234f_72e017f5","updated":"2025-01-10 13:59:06.000000000","message":"Done","commit_id":"5f034efa20cd5efbd049a72e128d312c68b6ea76"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"d882a11ec62bf0d94461934009c9facfb659cc46","unresolved":true,"context_lines":[{"line_number":71,"context_line":"        self.servicegroup_api \u003d servicegroup.API()"},{"line_number":72,"context_line":"        self.notifier \u003d rpc.get_notifier(\u0027scheduler\u0027)"},{"line_number":73,"context_line":"        self._placement_client \u003d None"},{"line_number":74,"context_line":"        self.service_down_time \u003d CONF.service_down_time"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"        try:"},{"line_number":77,"context_line":"            # Test our placement client during initialization"}],"source_content_type":"text/x-python","patch_set":2,"id":"956d8a24_730ebf1f","line":74,"updated":"2025-01-07 18:37:41.000000000","message":"oh i dont need this anymore i shoudl drop this","commit_id":"5f034efa20cd5efbd049a72e128d312c68b6ea76"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"fe45d0172eaa4b0bc37b9d9539a22ecfd709adb2","unresolved":false,"context_lines":[{"line_number":71,"context_line":"        self.servicegroup_api \u003d servicegroup.API()"},{"line_number":72,"context_line":"        self.notifier \u003d rpc.get_notifier(\u0027scheduler\u0027)"},{"line_number":73,"context_line":"        self._placement_client \u003d None"},{"line_number":74,"context_line":"        self.service_down_time \u003d CONF.service_down_time"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"        try:"},{"line_number":77,"context_line":"            # Test our placement client during initialization"}],"source_content_type":"text/x-python","patch_set":2,"id":"0e162e7e_a43e52fb","line":74,"in_reply_to":"956d8a24_730ebf1f","updated":"2025-01-10 13:59:06.000000000","message":"Done","commit_id":"5f034efa20cd5efbd049a72e128d312c68b6ea76"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"0a15ef2e10ed5cc33dd13d681a29ace390399374","unresolved":false,"context_lines":[{"line_number":111,"context_line":"    def _discover_hosts_in_cells(self, context):"},{"line_number":112,"context_line":"        services \u003d obj_service.ServiceList.get_by_binary("},{"line_number":113,"context_line":"            context, \u0027nova-scheduler\u0027)"},{"line_number":114,"context_line":"        leader \u003d sorted("},{"line_number":115,"context_line":"            [service.host for service in services"},{"line_number":116,"context_line":"             if self.servicegroup_api.service_is_up(service)])[0]"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"        if CONF.host !\u003d leader:"}],"source_content_type":"text/x-python","patch_set":4,"id":"6b97143e_3c8dcd32","line":115,"range":{"start_line":114,"start_character":0,"end_line":115,"end_character":49},"updated":"2025-01-14 16:04:59.000000000","message":"yeah the host name of the scheduler service is expected to be stable, so this is good as a sorting key, oldest scheduler would be equally good too. (in k8s if the scheduler runs in a statefulset with multiple replicas then by default the hostname is the \u003cstatefulsetname\u003e-\u003creplica index\u003e so e.g. nova-scheduler-0 will run the periodic, and even during scaling to more replicas this remains true as nova-scheduler-1 will sorted after nova-scheduler-0.","commit_id":"b227783cda682b2f56a953570182c4d93180e2c9"}],"releasenotes/notes/distributed-discover-hosts-perodic-b983f528516dec14.yaml":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"15220aacf983bfd67420eed798e2b6ec5d204043","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The nova scheduler now supports enabling the nova cell discover hosts"},{"line_number":5,"context_line":"    perodic task on multiple schedulers. In prior release enabling this"},{"line_number":6,"context_line":"    feature required setting the discover_hosts_in_cells_interval option"},{"line_number":7,"context_line":"    to a value greater than 0 in at most one scheduler, with the 2025.1"},{"line_number":8,"context_line":"    release it was possible to enable the feature on multiple schedulers"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"7507460d_b74b4e61","line":5,"range":{"start_line":4,"start_character":48,"end_line":5,"end_character":16},"updated":"2025-02-17 13:20:56.000000000","message":"femtonit : the nova cellsv2 discover_hosts periodic task, but meeeh.","commit_id":"e98393c5c26743ec4c862af3e1a4beaa7f2d174b"}]}
