)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":13425,"name":"Simon Dodsley","email":"simon@everpuredata.com","username":"sdodsley"},"change_message_id":"186f624656d3a10dc8fd559873e986ada0a89b5b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"2f1596a0_be2261da","updated":"2026-09-17 22:03:35.000000000","message":"If there is no response by 24 September I will upload a new patchset addressing these comments","commit_id":"16a5e0aa013815c1638587313d03ba57558dcbd1"},{"author":{"_account_id":13425,"name":"Simon Dodsley","email":"simon@everpuredata.com","username":"sdodsley"},"change_message_id":"7a122acd9c9df7bee2d10f32f5ecb7ddbb4c12b6","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"34712be2_c0146803","updated":"2026-09-17 21:59:45.000000000","message":"The core change is right: ``FixedIntervalLoopingCall.start()`` only spawns the\nloop, and ``LoopingCallDone`` is caught inside ``_run_loop`` and delivered through\nthe done event, so both except branches in the current code are dead and\n``init_host`` has never waited for the driver. ``wait()`` is the correct call.\n\nPlease expand the commit message, because this fixes two bugs and changes\nstartup behaviour:\n\n1. Besides the missing wait, the loop currently runs with the default\n   ``stop_on_exception\u003dTrue``, so a failing ``check_for_setup_error`` kills it after\n   one attempt and the service sits degraded forever (single traceback, no\n   retry). ``stop_on_exception\u003dFalse`` is what makes\n   ``backup_driver_init_check_interval`` actually mean something. Say so.\n\n2. ``init_host`` now blocks until the backend is up. The RPC server, heartbeat\n   and periodic tasks are not started until then. With a permanently broken\n   backend (bad credentials, missing boto3, unreachable ceph mon) the service\n   never serves; today it starts and rejects create/delete with a 503 and a\n   clear \"backup service is down\". Under this patch requests queue in the\n   broker, cinder service-list shows the service down, and the only log line\n   is the generic oslo \"Fixed interval looping call ... failed\" traceback,\n   since the \"Failed to initialize driver.\" message is removed. Please keep\n   an explicit ``LOG.error(\"Backup driver failed to initialize, retrying in\n   %ds\")`` so operators have something to alert on, and either bound the retry\n   (cinder-volume uses ``reinit_driver_count``) or state in the commit message\n   and release note that the wait is unbounded by design.\n\nThe user-visible effect worth naming in the release note: backups created\nin the first ~60-120 s after cinder-backup starts no longer fail with\n\"Service not found for creating backup\", because the first capability\nreport to the scheduler now carries backend_state\u003dTrue instead of False.\nWe hit exactly this in cinder-tempest-plugin-cbak-s3 (first report False at\nservice start, True 116 s later, every backup in between errored).\n\nTest: the updated ``test_setup_backup_backend_uses_new_config`` only asserts\nthat a ``MagicMock`` saw ``start(stop_on_exception\u003dFalse)`` and ``wait()``; it would\nstill pass if ``wait()`` came before ``start()``. Please add a test that runs\n``init_host`` with a driver whose ``check_for_setup_error`` raises once and then\nsucceeds (patch the loop\u0027s sleep), and asserts that ``setup_backup_backend``\nreturns with ``is_initialized True`` and that ``last_capabilities[\u0027backend_state\u0027]\nis True`` when ``init_host`` returns. That is the behaviour the bug is about.\n\nAlso needs a rebase and recheck; the Verified vote is from 2024.","commit_id":"16a5e0aa013815c1638587313d03ba57558dcbd1"},{"author":{"_account_id":28722,"name":"Anton Kurbatov","email":"anton.kurbatov@acronis.com","username":"akurbatov"},"change_message_id":"32d485164ef4d7e5239e9e829f6f6a9d704d4d41","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"c6e6603f_ea4a1491","updated":"2024-03-28 14:55:50.000000000","message":"recheck tempest-slow-py3","commit_id":"16a5e0aa013815c1638587313d03ba57558dcbd1"}]}
