)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"db2e89b4f78826960eda34e1a39420e4ba2a501e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"f3f1554b_ccef8bb0","updated":"2026-08-07 20:18:51.000000000","message":"Just the tests need to be updated, realistically.","commit_id":"bccbce700ba667fae555d9640ffb1af8c32be250"}],"ironic/conf/redfish.py":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"c44405579c3f580fab5cd89a666e6b8ee9579fda","unresolved":true,"context_lines":[{"line_number":264,"context_line":"                      \u00276x this value.\u0027)),"},{"line_number":265,"context_line":"    cfg.IntOpt(\u0027power_on_conflict_retry_attempts\u0027,"},{"line_number":266,"context_line":"               min\u003d0,"},{"line_number":267,"context_line":"               default\u003d12,"},{"line_number":268,"context_line":"               help\u003d_(\u0027Maximum number of times to retry a power-on when the \u0027"},{"line_number":269,"context_line":"                      \u0027BMC rejects it with an HTTP 409 \u0027"},{"line_number":270,"context_line":"                      \u0027\"ActionParameterValueConflict\". Some BMCs (e.g. Dell \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"1e699774_03d27989","line":267,"updated":"2026-08-07 01:10:01.000000000","message":"12 retries at 5 seconds, that is a LONG time. Is this just perception that the BMC is basically on vacation for 60 seconds while waiting for the internal signaling of a reboot? I guess my concern is the sleep in general, which I\u0027m just not a fan of.\n\nOr is it more on vacation for 20 seconds and we\u0027re just trying to account for the signaling switch to be ready to assert a new state?","commit_id":"bccbce700ba667fae555d9640ffb1af8c32be250"},{"author":{"_account_id":36670,"name":"Jay Jahns","email":"jayjahns@gmail.com","username":"jayjahns"},"change_message_id":"cef836666a5c6b2900a07e5b4ac2c97a86252a7e","unresolved":true,"context_lines":[{"line_number":264,"context_line":"                      \u00276x this value.\u0027)),"},{"line_number":265,"context_line":"    cfg.IntOpt(\u0027power_on_conflict_retry_attempts\u0027,"},{"line_number":266,"context_line":"               min\u003d0,"},{"line_number":267,"context_line":"               default\u003d12,"},{"line_number":268,"context_line":"               help\u003d_(\u0027Maximum number of times to retry a power-on when the \u0027"},{"line_number":269,"context_line":"                      \u0027BMC rejects it with an HTTP 409 \u0027"},{"line_number":270,"context_line":"                      \u0027\"ActionParameterValueConflict\". Some BMCs (e.g. Dell \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"2330d4a7_5c2c2888","line":267,"in_reply_to":"1e699774_03d27989","updated":"2026-08-07 14:20:42.000000000","message":"I think we just put these in as defaults that can be changed. Feedback for a better option is welcomed. But if there is no timeout, we have been able to reproduce the condition 100% of the time.","commit_id":"bccbce700ba667fae555d9640ffb1af8c32be250"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"993aab903f53e4984daaf6515243d486d5a3fc80","unresolved":true,"context_lines":[{"line_number":264,"context_line":"                      \u00276x this value.\u0027)),"},{"line_number":265,"context_line":"    cfg.IntOpt(\u0027power_on_conflict_retry_attempts\u0027,"},{"line_number":266,"context_line":"               min\u003d0,"},{"line_number":267,"context_line":"               default\u003d12,"},{"line_number":268,"context_line":"               help\u003d_(\u0027Maximum number of times to retry a power-on when the \u0027"},{"line_number":269,"context_line":"                      \u0027BMC rejects it with an HTTP 409 \u0027"},{"line_number":270,"context_line":"                      \u0027\"ActionParameterValueConflict\". Some BMCs (e.g. Dell \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"dd0180b9_f20f05d8","line":267,"in_reply_to":"2330d4a7_5c2c2888","updated":"2026-08-07 20:15:30.000000000","message":"How long does it tend to last? Truthfully, we have a future looking mechanism, but wiring it into power transactions would be super weird as well and that future looking mechanism hasn\u0027t merged yet, so its kind of silly. More so raising the question because it is functionally blocking on a thread, but that is the task under the hood so that is likely \"okay\"","commit_id":"bccbce700ba667fae555d9640ffb1af8c32be250"},{"author":{"_account_id":36670,"name":"Jay Jahns","email":"jayjahns@gmail.com","username":"jayjahns"},"change_message_id":"eaad1ff55ea8fc0584ad92e25418f8942682d071","unresolved":false,"context_lines":[{"line_number":264,"context_line":"                      \u00276x this value.\u0027)),"},{"line_number":265,"context_line":"    cfg.IntOpt(\u0027power_on_conflict_retry_attempts\u0027,"},{"line_number":266,"context_line":"               min\u003d0,"},{"line_number":267,"context_line":"               default\u003d12,"},{"line_number":268,"context_line":"               help\u003d_(\u0027Maximum number of times to retry a power-on when the \u0027"},{"line_number":269,"context_line":"                      \u0027BMC rejects it with an HTTP 409 \u0027"},{"line_number":270,"context_line":"                      \u0027\"ActionParameterValueConflict\". Some BMCs (e.g. Dell \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"24e2f193_9803168d","line":267,"in_reply_to":"dd0180b9_f20f05d8","updated":"2026-08-10 14:43:11.000000000","message":"On the iDRAC10 (17G, firmware 1.30.30.52) the window lasts up to 60s worst-case after we force the node off; in practice it clears within the first couple of retries.\n\nIt\u0027s a ceiling, not a fixed wait. The loop breaks the instant the BMC accepts the reset, so a node that settles in 20s returns in 20s. The default only bounds the pathological \"never settles\" case so it fails cleanly instead of blocking indefinitely. and attempts\u003d0 disables it completely.","commit_id":"bccbce700ba667fae555d9640ffb1af8c32be250"}],"ironic/tests/unit/drivers/modules/redfish/test_power.py":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"db2e89b4f78826960eda34e1a39420e4ba2a501e","unresolved":true,"context_lines":[{"line_number":400,"context_line":""},{"line_number":401,"context_line":"        self.assertEqual(3, fake_system.reset_system.call_count)"},{"line_number":402,"context_line":"        fake_system.reset_system.assert_called_with(sushy.RESET_ON)"},{"line_number":403,"context_line":"        self.assertEqual(2, mock_sleep.call_count)"},{"line_number":404,"context_line":""},{"line_number":405,"context_line":"    @mock.patch.object(redfish_power.time, \u0027sleep\u0027, autospec\u003dTrue)"},{"line_number":406,"context_line":"    @mock.patch.object(redfish_mgmt.RedfishManagement, \u0027restore_boot_device\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"cab4e55c_96fb2f21","line":403,"updated":"2026-08-07 20:18:51.000000000","message":"hint: don\u0027t try to count calls to time.sleep. It never goes well. Best thing to do is have a test which assets it has been called.","commit_id":"bccbce700ba667fae555d9640ffb1af8c32be250"},{"author":{"_account_id":36670,"name":"Jay Jahns","email":"jayjahns@gmail.com","username":"jayjahns"},"change_message_id":"eaad1ff55ea8fc0584ad92e25418f8942682d071","unresolved":false,"context_lines":[{"line_number":400,"context_line":""},{"line_number":401,"context_line":"        self.assertEqual(3, fake_system.reset_system.call_count)"},{"line_number":402,"context_line":"        fake_system.reset_system.assert_called_with(sushy.RESET_ON)"},{"line_number":403,"context_line":"        self.assertEqual(2, mock_sleep.call_count)"},{"line_number":404,"context_line":""},{"line_number":405,"context_line":"    @mock.patch.object(redfish_power.time, \u0027sleep\u0027, autospec\u003dTrue)"},{"line_number":406,"context_line":"    @mock.patch.object(redfish_mgmt.RedfishManagement, \u0027restore_boot_device\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"08791865_f0e3d50d","line":403,"in_reply_to":"cab4e55c_96fb2f21","updated":"2026-08-10 14:43:11.000000000","message":"Adjusted.","commit_id":"bccbce700ba667fae555d9640ffb1af8c32be250"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"db2e89b4f78826960eda34e1a39420e4ba2a501e","unresolved":true,"context_lines":[{"line_number":431,"context_line":""},{"line_number":432,"context_line":"        # 1 initial attempt + 2 retries."},{"line_number":433,"context_line":"        self.assertEqual(3, fake_system.reset_system.call_count)"},{"line_number":434,"context_line":"        self.assertEqual(2, mock_sleep.call_count)"},{"line_number":435,"context_line":""},{"line_number":436,"context_line":"    @mock.patch.object(lc.BackOffLoopingCall, \u0027_sleep\u0027, autospec\u003dTrue)"},{"line_number":437,"context_line":"    @mock.patch.object(redfish_mgmt.RedfishManagement, \u0027restore_boot_device\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"a2a99d63_c155e599","line":434,"updated":"2026-08-07 20:18:51.000000000","message":"same feedback as the other test regarding mocking and then asserting a call count on sleep. if you look a the test results, its counting ~8 invocations.","commit_id":"bccbce700ba667fae555d9640ffb1af8c32be250"},{"author":{"_account_id":36670,"name":"Jay Jahns","email":"jayjahns@gmail.com","username":"jayjahns"},"change_message_id":"eaad1ff55ea8fc0584ad92e25418f8942682d071","unresolved":false,"context_lines":[{"line_number":431,"context_line":""},{"line_number":432,"context_line":"        # 1 initial attempt + 2 retries."},{"line_number":433,"context_line":"        self.assertEqual(3, fake_system.reset_system.call_count)"},{"line_number":434,"context_line":"        self.assertEqual(2, mock_sleep.call_count)"},{"line_number":435,"context_line":""},{"line_number":436,"context_line":"    @mock.patch.object(lc.BackOffLoopingCall, \u0027_sleep\u0027, autospec\u003dTrue)"},{"line_number":437,"context_line":"    @mock.patch.object(redfish_mgmt.RedfishManagement, \u0027restore_boot_device\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"ea00bad0_ec59b4e6","line":434,"in_reply_to":"a2a99d63_c155e599","updated":"2026-08-10 14:43:11.000000000","message":"Adjusted.","commit_id":"bccbce700ba667fae555d9640ffb1af8c32be250"}]}
