)]}'
{"/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":"97c8634e6ad94d366b5d7084fe8302da3daeee5b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"d0bc3edf_7fdf700f","updated":"2022-07-13 13:12:31.000000000","message":"recheck metalsmith gate fixed","commit_id":"55796324b48a5e2dad3691e9c7e1531c66252d0a"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"650114295c4ad320c3da15dd1dd4c6438d479bd3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"0c4eca2d_ddc0e826","updated":"2022-07-13 20:33:40.000000000","message":"recheck tarballs.o.o outage","commit_id":"55796324b48a5e2dad3691e9c7e1531c66252d0a"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"afa8c11aa91819a1069244476a77c3abc3cb262d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"ccf83702_5e3bec88","updated":"2022-08-03 21:19:45.000000000","message":"I kinda think the defaults render this of minimal usefulness to small scale deployers... but I also think small scale deployers likely don\u0027t need/want this so... meh? \n\nI\u0027d suggest considering setting this to a disabled-by-default value or a lower value entirely.\n\n+2 because I don\u0027t feel strongly about this, and I think you have a better idea what deployers of Ironic do than I do in most cases","commit_id":"ca2a420cbcfc2f64130f48bf537542c51834f88e"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"b8a540775762543ece6747ec11158462bbd09d04","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"c2515adf_80e89047","updated":"2022-08-03 16:17:09.000000000","message":"recheck mirror failure","commit_id":"ca2a420cbcfc2f64130f48bf537542c51834f88e"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cbc0408d191d26fe087c035807659dc7a6722da1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"98033117_14dd9331","updated":"2022-08-29 16:12:02.000000000","message":"Thanks Julia! This looks good. I\u0027ve got a bunch of minor comments; I think some (release notes and possibly adding exceptions to those lists) ought to be addressed.","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"4dd9c2005575a789e4b24838b8b820ff41f769bb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"540233c5_ae1dfd34","updated":"2022-09-19 22:37:24.000000000","message":"-1 for the accidentally committed unrelated comment in api.py","commit_id":"b0233c57b97dc9a731939555243378b46654ebf7"}],"doc/source/admin/troubleshooting.rst":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cbc0408d191d26fe087c035807659dc7a6722da1","unresolved":true,"context_lines":[{"line_number":1000,"context_line":"for cleaning operations is *50* and should be suitable for the majority of"},{"line_number":1001,"context_line":"baremetal operators."},{"line_number":1002,"context_line":""},{"line_number":1003,"context_line":"These settins can be modified by using the"},{"line_number":1004,"context_line":"``[conductor]max_concurrent_deploy`` and ``[conductor]max_concurrent_clean``"},{"line_number":1005,"context_line":"settings from the ironic.conf file supporting the ``ironic-conductor``"},{"line_number":1006,"context_line":"service."}],"source_content_type":"text/x-rst","patch_set":5,"id":"6a1a0af7_f0dbcb71","line":1003,"updated":"2022-08-29 16:12:02.000000000","message":"nit s/settins/settings/","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"2ca8dd6cca56db11e02281aa0270a3572e7f3930","unresolved":false,"context_lines":[{"line_number":1000,"context_line":"for cleaning operations is *50* and should be suitable for the majority of"},{"line_number":1001,"context_line":"baremetal operators."},{"line_number":1002,"context_line":""},{"line_number":1003,"context_line":"These settins can be modified by using the"},{"line_number":1004,"context_line":"``[conductor]max_concurrent_deploy`` and ``[conductor]max_concurrent_clean``"},{"line_number":1005,"context_line":"settings from the ironic.conf file supporting the ``ironic-conductor``"},{"line_number":1006,"context_line":"service."}],"source_content_type":"text/x-rst","patch_set":5,"id":"0b2c6147_6aebbfc3","line":1003,"in_reply_to":"6a1a0af7_f0dbcb71","updated":"2022-09-19 23:27:51.000000000","message":"Done","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"4dd9c2005575a789e4b24838b8b820ff41f769bb","unresolved":true,"context_lines":[{"line_number":1003,"context_line":"These settings can be modified by using the"},{"line_number":1004,"context_line":"``[conductor]max_concurrent_deploy`` and ``[conductor]max_concurrent_clean``"},{"line_number":1005,"context_line":"settings from the ironic.conf file supporting the ``ironic-conductor``"},{"line_number":1006,"context_line":"service. Neither setting can be explicity disabled, however there is also not upper limit to the setting."},{"line_number":1007,"context_line":""},{"line_number":1008,"context_line":".. note::"},{"line_number":1009,"context_line":"   This was an infrastructure operator requested feature from actual lessons"}],"source_content_type":"text/x-rst","patch_set":6,"id":"ef978e02_867813db","line":1006,"updated":"2022-09-19 22:37:24.000000000","message":"s/not/no/ and the wrapping is weird","commit_id":"b0233c57b97dc9a731939555243378b46654ebf7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"6243fecfa02739455d1ab972ef5f5b2e69edb896","unresolved":false,"context_lines":[{"line_number":1003,"context_line":"These settings can be modified by using the"},{"line_number":1004,"context_line":"``[conductor]max_concurrent_deploy`` and ``[conductor]max_concurrent_clean``"},{"line_number":1005,"context_line":"settings from the ironic.conf file supporting the ``ironic-conductor``"},{"line_number":1006,"context_line":"service. Neither setting can be explicity disabled, however there is also not upper limit to the setting."},{"line_number":1007,"context_line":""},{"line_number":1008,"context_line":".. note::"},{"line_number":1009,"context_line":"   This was an infrastructure operator requested feature from actual lessons"}],"source_content_type":"text/x-rst","patch_set":6,"id":"0a7c9e9b_ad130db7","line":1006,"in_reply_to":"ef978e02_867813db","updated":"2022-09-20 13:46:20.000000000","message":"Done","commit_id":"b0233c57b97dc9a731939555243378b46654ebf7"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"a0753e8120a6f79945a2e2e1b5f2307845b3be59","unresolved":true,"context_lines":[{"line_number":1003,"context_line":"These settings can be modified by using the"},{"line_number":1004,"context_line":"``[conductor]max_concurrent_deploy`` and ``[conductor]max_concurrent_clean``"},{"line_number":1005,"context_line":"settings from the ironic.conf file supporting the ``ironic-conductor``"},{"line_number":1006,"context_line":"service. Neither setting can be explicity disabled, however there is also no"},{"line_number":1007,"context_line":"upper limit to the setting."},{"line_number":1008,"context_line":""},{"line_number":1009,"context_line":".. note::"}],"source_content_type":"text/x-rst","patch_set":8,"id":"6b2291e8_f6c3f067","line":1006,"range":{"start_line":1006,"start_character":32,"end_line":1006,"end_character":41},"updated":"2022-09-21 14:38:17.000000000","message":"nit: explicitly","commit_id":"9a8b1d149c738b7d06a93c39a29f43afeed7cc8a"}],"ironic/common/exception.py":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cbc0408d191d26fe087c035807659dc7a6722da1","unresolved":true,"context_lines":[{"line_number":856,"context_line":"class ConcurrentActionLimit(IronicException):"},{"line_number":857,"context_line":"    _msg_fmt \u003d _(\"Unable to process request at this time. \""},{"line_number":858,"context_line":"                 \"The concurrent action limit for %(task_type)s \""},{"line_number":859,"context_line":"                 \"has been reached. Please contact your administrator \""},{"line_number":860,"context_line":"                 \"and try again later.\")"}],"source_content_type":"text/x-python","patch_set":5,"id":"e8b64218_8cdc13f1","line":859,"updated":"2022-08-29 16:12:02.000000000","message":"wondering if it might be useful to spit out the limit value.","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"2ca8dd6cca56db11e02281aa0270a3572e7f3930","unresolved":true,"context_lines":[{"line_number":856,"context_line":"class ConcurrentActionLimit(IronicException):"},{"line_number":857,"context_line":"    _msg_fmt \u003d _(\"Unable to process request at this time. \""},{"line_number":858,"context_line":"                 \"The concurrent action limit for %(task_type)s \""},{"line_number":859,"context_line":"                 \"has been reached. Please contact your administrator \""},{"line_number":860,"context_line":"                 \"and try again later.\")"}],"source_content_type":"text/x-python","patch_set":5,"id":"3fd4481a_f8b1736a","line":859,"in_reply_to":"2abd0351_dd921f09","updated":"2022-09-19 23:27:51.000000000","message":"Ack, adding clarifying comment into the code anyway.","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"36bd3424c70d77ac4800ba5eb7e7b838c01cec63","unresolved":true,"context_lines":[{"line_number":856,"context_line":"class ConcurrentActionLimit(IronicException):"},{"line_number":857,"context_line":"    _msg_fmt \u003d _(\"Unable to process request at this time. \""},{"line_number":858,"context_line":"                 \"The concurrent action limit for %(task_type)s \""},{"line_number":859,"context_line":"                 \"has been reached. Please contact your administrator \""},{"line_number":860,"context_line":"                 \"and try again later.\")"}],"source_content_type":"text/x-python","patch_set":5,"id":"ad3415a5_7e5b123a","line":859,"in_reply_to":"2abd0351_dd921f09","updated":"2022-09-16 19:19:33.000000000","message":"We discussed this in IRC today; \n\n\u003e rloo | oh. i was just wondering. you have a good reason not to. so we shouldn\u0027t :)\n\nSo it seems like we can forgo adding this information to the exception message.","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"6243fecfa02739455d1ab972ef5f5b2e69edb896","unresolved":false,"context_lines":[{"line_number":856,"context_line":"class ConcurrentActionLimit(IronicException):"},{"line_number":857,"context_line":"    _msg_fmt \u003d _(\"Unable to process request at this time. \""},{"line_number":858,"context_line":"                 \"The concurrent action limit for %(task_type)s \""},{"line_number":859,"context_line":"                 \"has been reached. Please contact your administrator \""},{"line_number":860,"context_line":"                 \"and try again later.\")"}],"source_content_type":"text/x-python","patch_set":5,"id":"4223feda_10bef340","line":859,"in_reply_to":"3fd4481a_f8b1736a","updated":"2022-09-20 13:46:20.000000000","message":"Done","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"fd2c1bad7efaa4af4cded8352e9a8e45177a038f","unresolved":true,"context_lines":[{"line_number":856,"context_line":"class ConcurrentActionLimit(IronicException):"},{"line_number":857,"context_line":"    _msg_fmt \u003d _(\"Unable to process request at this time. \""},{"line_number":858,"context_line":"                 \"The concurrent action limit for %(task_type)s \""},{"line_number":859,"context_line":"                 \"has been reached. Please contact your administrator \""},{"line_number":860,"context_line":"                 \"and try again later.\")"}],"source_content_type":"text/x-python","patch_set":5,"id":"2abd0351_dd921f09","line":859,"in_reply_to":"e8b64218_8cdc13f1","updated":"2022-09-01 16:39:11.000000000","message":"IMO, given what this feature is intended to guard against, we should intentionally withhold that information from the caller. I don\u0027t believe this is intended to be like a quota; more like a guard against malicious (or accidental) cleaning of a large amount of hardware. We shouldn\u0027t giving a potential attacker the information they need to improve their attack.","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"}],"ironic/conductor/manager.py":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cbc0408d191d26fe087c035807659dc7a6722da1","unresolved":true,"context_lines":[{"line_number":886,"context_line":"                                   exception.NodeInMaintenance,"},{"line_number":887,"context_line":"                                   exception.InstanceDeployFailure,"},{"line_number":888,"context_line":"                                   exception.InvalidStateRequested,"},{"line_number":889,"context_line":"                                   exception.NodeProtected)"},{"line_number":890,"context_line":"    def do_node_deploy(self, context, node_id, rebuild\u003dFalse,"},{"line_number":891,"context_line":"                       configdrive\u003dNone, deploy_steps\u003dNone):"},{"line_number":892,"context_line":"        \"\"\"RPC method to initiate deployment to a node."}],"source_content_type":"text/x-python","patch_set":5,"id":"fb93a158_388af85f","line":889,"updated":"2022-08-29 16:12:02.000000000","message":"do we want to add exception.ConcurrentActionLimit here?","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"3ddad635790bf88b647aee09ac8bb62d11e5b0c3","unresolved":false,"context_lines":[{"line_number":886,"context_line":"                                   exception.NodeInMaintenance,"},{"line_number":887,"context_line":"                                   exception.InstanceDeployFailure,"},{"line_number":888,"context_line":"                                   exception.InvalidStateRequested,"},{"line_number":889,"context_line":"                                   exception.NodeProtected)"},{"line_number":890,"context_line":"    def do_node_deploy(self, context, node_id, rebuild\u003dFalse,"},{"line_number":891,"context_line":"                       configdrive\u003dNone, deploy_steps\u003dNone):"},{"line_number":892,"context_line":"        \"\"\"RPC method to initiate deployment to a node."}],"source_content_type":"text/x-python","patch_set":5,"id":"5e6aa72a_055e5c01","line":889,"in_reply_to":"fb93a158_388af85f","updated":"2022-09-20 13:47:54.000000000","message":"Doh, forgot, fixing.","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cbc0408d191d26fe087c035807659dc7a6722da1","unresolved":true,"context_lines":[{"line_number":910,"context_line":"        :raises: InvalidStateRequested when the requested state is not a valid"},{"line_number":911,"context_line":"                 target from the current state."},{"line_number":912,"context_line":"        :raises: NodeProtected if the node is protected."},{"line_number":913,"context_line":"        :rasies: ConcurrentActionLimit if this action would exceed the maximum"},{"line_number":914,"context_line":"                 number of configured concurrent actions of this type."},{"line_number":915,"context_line":"        \"\"\""},{"line_number":916,"context_line":"        LOG.debug(\"RPC do_node_deploy called for node %s.\", node_id)"}],"source_content_type":"text/x-python","patch_set":5,"id":"8f67a541_c0110917","line":913,"updated":"2022-08-29 16:12:02.000000000","message":"nit s/rasies/raises/","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"2ca8dd6cca56db11e02281aa0270a3572e7f3930","unresolved":false,"context_lines":[{"line_number":910,"context_line":"        :raises: InvalidStateRequested when the requested state is not a valid"},{"line_number":911,"context_line":"                 target from the current state."},{"line_number":912,"context_line":"        :raises: NodeProtected if the node is protected."},{"line_number":913,"context_line":"        :rasies: ConcurrentActionLimit if this action would exceed the maximum"},{"line_number":914,"context_line":"                 number of configured concurrent actions of this type."},{"line_number":915,"context_line":"        \"\"\""},{"line_number":916,"context_line":"        LOG.debug(\"RPC do_node_deploy called for node %s.\", node_id)"}],"source_content_type":"text/x-python","patch_set":5,"id":"2e11acb5_313c42e4","line":913,"in_reply_to":"8f67a541_c0110917","updated":"2022-09-19 23:27:51.000000000","message":"Done","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cbc0408d191d26fe087c035807659dc7a6722da1","unresolved":true,"context_lines":[{"line_number":986,"context_line":"                                   exception.NodeLocked,"},{"line_number":987,"context_line":"                                   exception.InstanceDeployFailure,"},{"line_number":988,"context_line":"                                   exception.InvalidStateRequested,"},{"line_number":989,"context_line":"                                   exception.NodeProtected)"},{"line_number":990,"context_line":"    def do_node_tear_down(self, context, node_id):"},{"line_number":991,"context_line":"        \"\"\"RPC method to tear down an existing node deployment."},{"line_number":992,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"8f61de30_ff5e52d8","line":989,"updated":"2022-08-29 16:12:02.000000000","message":"do we want to add exception.ConcurrentActionLimit here?","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"2ca8dd6cca56db11e02281aa0270a3572e7f3930","unresolved":false,"context_lines":[{"line_number":986,"context_line":"                                   exception.NodeLocked,"},{"line_number":987,"context_line":"                                   exception.InstanceDeployFailure,"},{"line_number":988,"context_line":"                                   exception.InvalidStateRequested,"},{"line_number":989,"context_line":"                                   exception.NodeProtected)"},{"line_number":990,"context_line":"    def do_node_tear_down(self, context, node_id):"},{"line_number":991,"context_line":"        \"\"\"RPC method to tear down an existing node deployment."},{"line_number":992,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"e2269133_bd9e1506","line":989,"in_reply_to":"8f61de30_ff5e52d8","updated":"2022-09-19 23:27:51.000000000","message":"Done","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cbc0408d191d26fe087c035807659dc7a6722da1","unresolved":true,"context_lines":[{"line_number":1002,"context_line":"                 target from the current state."},{"line_number":1003,"context_line":"        :raises: NodeProtected if the node is protected."},{"line_number":1004,"context_line":""},{"line_number":1005,"context_line":"        :rasies: ConcurrentActionLimit if this action would exceed the maximum"},{"line_number":1006,"context_line":"                 number of configured concurrent actions of this type."},{"line_number":1007,"context_line":"        \"\"\""},{"line_number":1008,"context_line":"        LOG.debug(\"RPC do_node_tear_down called for node %s.\", node_id)"}],"source_content_type":"text/x-python","patch_set":5,"id":"473a5b2c_b175662e","line":1005,"updated":"2022-08-29 16:12:02.000000000","message":"nit s/rasies/raises/","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"2ca8dd6cca56db11e02281aa0270a3572e7f3930","unresolved":false,"context_lines":[{"line_number":1002,"context_line":"                 target from the current state."},{"line_number":1003,"context_line":"        :raises: NodeProtected if the node is protected."},{"line_number":1004,"context_line":""},{"line_number":1005,"context_line":"        :rasies: ConcurrentActionLimit if this action would exceed the maximum"},{"line_number":1006,"context_line":"                 number of configured concurrent actions of this type."},{"line_number":1007,"context_line":"        \"\"\""},{"line_number":1008,"context_line":"        LOG.debug(\"RPC do_node_tear_down called for node %s.\", node_id)"}],"source_content_type":"text/x-python","patch_set":5,"id":"92fef2f4_84568aba","line":1005,"in_reply_to":"473a5b2c_b175662e","updated":"2022-09-19 23:27:51.000000000","message":"Done","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cbc0408d191d26fe087c035807659dc7a6722da1","unresolved":true,"context_lines":[{"line_number":1128,"context_line":"                                   exception.InvalidStateRequested,"},{"line_number":1129,"context_line":"                                   exception.NodeInMaintenance,"},{"line_number":1130,"context_line":"                                   exception.NodeLocked,"},{"line_number":1131,"context_line":"                                   exception.NoFreeConductorWorker)"},{"line_number":1132,"context_line":"    def do_node_clean(self, context, node_id, clean_steps,"},{"line_number":1133,"context_line":"                      disable_ramdisk\u003dFalse):"},{"line_number":1134,"context_line":"        \"\"\"RPC method to initiate manual cleaning."}],"source_content_type":"text/x-python","patch_set":5,"id":"648f06b2_07af73f8","line":1131,"updated":"2022-08-29 16:12:02.000000000","message":"do we want to add exception.ConcurrentActionLimit here?","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"2ca8dd6cca56db11e02281aa0270a3572e7f3930","unresolved":false,"context_lines":[{"line_number":1128,"context_line":"                                   exception.InvalidStateRequested,"},{"line_number":1129,"context_line":"                                   exception.NodeInMaintenance,"},{"line_number":1130,"context_line":"                                   exception.NodeLocked,"},{"line_number":1131,"context_line":"                                   exception.NoFreeConductorWorker)"},{"line_number":1132,"context_line":"    def do_node_clean(self, context, node_id, clean_steps,"},{"line_number":1133,"context_line":"                      disable_ramdisk\u003dFalse):"},{"line_number":1134,"context_line":"        \"\"\"RPC method to initiate manual cleaning."}],"source_content_type":"text/x-python","patch_set":5,"id":"8a99a389_b03f218e","line":1131,"in_reply_to":"648f06b2_07af73f8","updated":"2022-09-19 23:27:51.000000000","message":"Done","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"}],"ironic/conf/conductor.py":[{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"afa8c11aa91819a1069244476a77c3abc3cb262d","unresolved":true,"context_lines":[{"line_number":371,"context_line":"                      \u0027is a global setting applying to all requests this \u0027"},{"line_number":372,"context_line":"                      \u0027conductor receieves, regardless of access rights.\u0027)),"},{"line_number":373,"context_line":"    cfg.IntOpt(\u0027max_concurrent_clean\u0027,"},{"line_number":374,"context_line":"               default\u003d50,"},{"line_number":375,"context_line":"               min\u003d1,"},{"line_number":376,"context_line":"               mutable\u003dTrue,"},{"line_number":377,"context_line":"               help\u003d_(\u0027The maximum number of concurrent nodes in cleaning \u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"9396feec_0c2af0b0","line":374,"updated":"2022-08-03 21:19:45.000000000","message":"These defaults are humorously large; I don\u0027t think they\u0027ll have much impact for the majority of deployers. Maybe that is intended?","commit_id":"ca2a420cbcfc2f64130f48bf537542c51834f88e"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"53902217cda978041a58824cf013841f52ded062","unresolved":false,"context_lines":[{"line_number":371,"context_line":"                      \u0027is a global setting applying to all requests this \u0027"},{"line_number":372,"context_line":"                      \u0027conductor receieves, regardless of access rights.\u0027)),"},{"line_number":373,"context_line":"    cfg.IntOpt(\u0027max_concurrent_clean\u0027,"},{"line_number":374,"context_line":"               default\u003d50,"},{"line_number":375,"context_line":"               min\u003d1,"},{"line_number":376,"context_line":"               mutable\u003dTrue,"},{"line_number":377,"context_line":"               help\u003d_(\u0027The maximum number of concurrent nodes in cleaning \u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"0dbac080_950f1567","line":374,"in_reply_to":"67de5e3a_a65756e1","updated":"2022-08-16 15:49:10.000000000","message":"Done","commit_id":"ca2a420cbcfc2f64130f48bf537542c51834f88e"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"c7e1e151fcd162c228f406aa8f6f962db0fa705f","unresolved":true,"context_lines":[{"line_number":371,"context_line":"                      \u0027is a global setting applying to all requests this \u0027"},{"line_number":372,"context_line":"                      \u0027conductor receieves, regardless of access rights.\u0027)),"},{"line_number":373,"context_line":"    cfg.IntOpt(\u0027max_concurrent_clean\u0027,"},{"line_number":374,"context_line":"               default\u003d50,"},{"line_number":375,"context_line":"               min\u003d1,"},{"line_number":376,"context_line":"               mutable\u003dTrue,"},{"line_number":377,"context_line":"               help\u003d_(\u0027The maximum number of concurrent nodes in cleaning \u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"67de5e3a_a65756e1","line":374,"in_reply_to":"9396feec_0c2af0b0","updated":"2022-08-08 13:44:21.000000000","message":"Definitely intended that way.","commit_id":"ca2a420cbcfc2f64130f48bf537542c51834f88e"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cbc0408d191d26fe087c035807659dc7a6722da1","unresolved":true,"context_lines":[{"line_number":360,"context_line":"                       \u0027for prior instances which have been deployed.\u0027)),"},{"line_number":361,"context_line":"    cfg.IntOpt(\u0027max_concurrent_deploy\u0027,"},{"line_number":362,"context_line":"               default\u003d250,"},{"line_number":363,"context_line":"               min\u003d1,"},{"line_number":364,"context_line":"               mutable\u003dTrue,"},{"line_number":365,"context_line":"               help\u003d_(\u0027The maximum number of concurrent nodes in deployment \u0027"},{"line_number":366,"context_line":"                      \u0027which are permitted in this ironic deployment. \u0027"}],"source_content_type":"text/x-python","patch_set":5,"id":"daee1d8e_22bcefb5","line":363,"updated":"2022-08-29 16:12:02.000000000","message":"Sorry for asking since it may have been decided. Is there any way for an operator to turn this off? (We might want to document it.)","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"6243fecfa02739455d1ab972ef5f5b2e69edb896","unresolved":false,"context_lines":[{"line_number":360,"context_line":"                       \u0027for prior instances which have been deployed.\u0027)),"},{"line_number":361,"context_line":"    cfg.IntOpt(\u0027max_concurrent_deploy\u0027,"},{"line_number":362,"context_line":"               default\u003d250,"},{"line_number":363,"context_line":"               min\u003d1,"},{"line_number":364,"context_line":"               mutable\u003dTrue,"},{"line_number":365,"context_line":"               help\u003d_(\u0027The maximum number of concurrent nodes in deployment \u0027"},{"line_number":366,"context_line":"                      \u0027which are permitted in this ironic deployment. \u0027"}],"source_content_type":"text/x-python","patch_set":5,"id":"bccac8eb_5b368661","line":363,"in_reply_to":"ca70cd8d_10be7f7d","updated":"2022-09-20 13:46:20.000000000","message":"Done","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"2ca8dd6cca56db11e02281aa0270a3572e7f3930","unresolved":true,"context_lines":[{"line_number":360,"context_line":"                       \u0027for prior instances which have been deployed.\u0027)),"},{"line_number":361,"context_line":"    cfg.IntOpt(\u0027max_concurrent_deploy\u0027,"},{"line_number":362,"context_line":"               default\u003d250,"},{"line_number":363,"context_line":"               min\u003d1,"},{"line_number":364,"context_line":"               mutable\u003dTrue,"},{"line_number":365,"context_line":"               help\u003d_(\u0027The maximum number of concurrent nodes in deployment \u0027"},{"line_number":366,"context_line":"                      \u0027which are permitted in this ironic deployment. \u0027"}],"source_content_type":"text/x-python","patch_set":5,"id":"ca70cd8d_10be7f7d","line":363,"in_reply_to":"daee1d8e_22bcefb5","updated":"2022-09-19 23:27:51.000000000","message":"Augmenting the doc string since I don\u0027t think this is a thing we really want to allow be disabled via config.","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cbc0408d191d26fe087c035807659dc7a6722da1","unresolved":true,"context_lines":[{"line_number":363,"context_line":"               min\u003d1,"},{"line_number":364,"context_line":"               mutable\u003dTrue,"},{"line_number":365,"context_line":"               help\u003d_(\u0027The maximum number of concurrent nodes in deployment \u0027"},{"line_number":366,"context_line":"                      \u0027which are permitted in this ironic deployment. \u0027"},{"line_number":367,"context_line":"                      \u0027If this limit is reached, new requests will be \u0027"},{"line_number":368,"context_line":"                      \u0027rejected until the number of deployments in progress \u0027"},{"line_number":369,"context_line":"                      \u0027is lower than this maximum. As this is a security \u0027"}],"source_content_type":"text/x-python","patch_set":5,"id":"e0f852a4_ebc76561","line":366,"updated":"2022-08-29 16:12:02.000000000","message":"nit, \u0027deployment\u0027 is overloaded. \u0027system\u0027, \u0027set up\u0027 ?","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"dcfb46ec6c4d0bc268a0e890f8e156f0d2b513a9","unresolved":false,"context_lines":[{"line_number":363,"context_line":"               min\u003d1,"},{"line_number":364,"context_line":"               mutable\u003dTrue,"},{"line_number":365,"context_line":"               help\u003d_(\u0027The maximum number of concurrent nodes in deployment \u0027"},{"line_number":366,"context_line":"                      \u0027which are permitted in this ironic deployment. \u0027"},{"line_number":367,"context_line":"                      \u0027If this limit is reached, new requests will be \u0027"},{"line_number":368,"context_line":"                      \u0027rejected until the number of deployments in progress \u0027"},{"line_number":369,"context_line":"                      \u0027is lower than this maximum. As this is a security \u0027"}],"source_content_type":"text/x-python","patch_set":5,"id":"ec5b6ea3_ac78ee04","line":366,"in_reply_to":"55b70940_ddc82a4b","updated":"2022-09-20 15:57:09.000000000","message":"Fixed","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"2ca8dd6cca56db11e02281aa0270a3572e7f3930","unresolved":true,"context_lines":[{"line_number":363,"context_line":"               min\u003d1,"},{"line_number":364,"context_line":"               mutable\u003dTrue,"},{"line_number":365,"context_line":"               help\u003d_(\u0027The maximum number of concurrent nodes in deployment \u0027"},{"line_number":366,"context_line":"                      \u0027which are permitted in this ironic deployment. \u0027"},{"line_number":367,"context_line":"                      \u0027If this limit is reached, new requests will be \u0027"},{"line_number":368,"context_line":"                      \u0027rejected until the number of deployments in progress \u0027"},{"line_number":369,"context_line":"                      \u0027is lower than this maximum. As this is a security \u0027"}],"source_content_type":"text/x-python","patch_set":5,"id":"55b70940_ddc82a4b","line":366,"in_reply_to":"e0f852a4_ebc76561","updated":"2022-09-19 23:27:51.000000000","message":"hmm, true. Chose system.","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cbc0408d191d26fe087c035807659dc7a6722da1","unresolved":true,"context_lines":[{"line_number":369,"context_line":"                      \u0027is lower than this maximum. As this is a security \u0027"},{"line_number":370,"context_line":"                      \u0027mechanism requests are not queued, and this setting \u0027"},{"line_number":371,"context_line":"                      \u0027is a global setting applying to all requests this \u0027"},{"line_number":372,"context_line":"                      \u0027conductor receieves, regardless of access rights.\u0027)),"},{"line_number":373,"context_line":"    cfg.IntOpt(\u0027max_concurrent_clean\u0027,"},{"line_number":374,"context_line":"               default\u003d50,"},{"line_number":375,"context_line":"               min\u003d1,"}],"source_content_type":"text/x-python","patch_set":5,"id":"775cf58a_009c591d","line":372,"updated":"2022-08-29 16:12:02.000000000","message":"nit s/receieves/receives/","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"2ca8dd6cca56db11e02281aa0270a3572e7f3930","unresolved":false,"context_lines":[{"line_number":369,"context_line":"                      \u0027is lower than this maximum. As this is a security \u0027"},{"line_number":370,"context_line":"                      \u0027mechanism requests are not queued, and this setting \u0027"},{"line_number":371,"context_line":"                      \u0027is a global setting applying to all requests this \u0027"},{"line_number":372,"context_line":"                      \u0027conductor receieves, regardless of access rights.\u0027)),"},{"line_number":373,"context_line":"    cfg.IntOpt(\u0027max_concurrent_clean\u0027,"},{"line_number":374,"context_line":"               default\u003d50,"},{"line_number":375,"context_line":"               min\u003d1,"}],"source_content_type":"text/x-python","patch_set":5,"id":"9d0717af_50ae24bf","line":372,"in_reply_to":"775cf58a_009c591d","updated":"2022-09-19 23:27:51.000000000","message":"Done","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cbc0408d191d26fe087c035807659dc7a6722da1","unresolved":true,"context_lines":[{"line_number":372,"context_line":"                      \u0027conductor receieves, regardless of access rights.\u0027)),"},{"line_number":373,"context_line":"    cfg.IntOpt(\u0027max_concurrent_clean\u0027,"},{"line_number":374,"context_line":"               default\u003d50,"},{"line_number":375,"context_line":"               min\u003d1,"},{"line_number":376,"context_line":"               mutable\u003dTrue,"},{"line_number":377,"context_line":"               help\u003d_(\u0027The maximum number of concurrent nodes in cleaning \u0027"},{"line_number":378,"context_line":"                      \u0027which are permitted in this ironic deployment. \u0027"}],"source_content_type":"text/x-python","patch_set":5,"id":"c6c71c5c_bea1977f","line":375,"updated":"2022-08-29 16:12:02.000000000","message":"Sorry for asking since it may have been decided. Is there any way for an operator to turn this off? (We might want to document it.)","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"2ca8dd6cca56db11e02281aa0270a3572e7f3930","unresolved":false,"context_lines":[{"line_number":372,"context_line":"                      \u0027conductor receieves, regardless of access rights.\u0027)),"},{"line_number":373,"context_line":"    cfg.IntOpt(\u0027max_concurrent_clean\u0027,"},{"line_number":374,"context_line":"               default\u003d50,"},{"line_number":375,"context_line":"               min\u003d1,"},{"line_number":376,"context_line":"               mutable\u003dTrue,"},{"line_number":377,"context_line":"               help\u003d_(\u0027The maximum number of concurrent nodes in cleaning \u0027"},{"line_number":378,"context_line":"                      \u0027which are permitted in this ironic deployment. \u0027"}],"source_content_type":"text/x-python","patch_set":5,"id":"add411d6_98ce42fd","line":375,"in_reply_to":"c6c71c5c_bea1977f","updated":"2022-09-19 23:27:51.000000000","message":"Done","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cbc0408d191d26fe087c035807659dc7a6722da1","unresolved":true,"context_lines":[{"line_number":381,"context_line":"                      \u0027is lower than this maximum. As this is a security \u0027"},{"line_number":382,"context_line":"                      \u0027mechanism requests are not queued, and this setting \u0027"},{"line_number":383,"context_line":"                      \u0027is a global setting applying to all requests this \u0027"},{"line_number":384,"context_line":"                      \u0027conductor receieves, regardless of access rights.\u0027)),"},{"line_number":385,"context_line":"]"},{"line_number":386,"context_line":""},{"line_number":387,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"22a36d38_c10b7477","line":384,"updated":"2022-08-29 16:12:02.000000000","message":"nit s/receieves/receives/","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"2ca8dd6cca56db11e02281aa0270a3572e7f3930","unresolved":false,"context_lines":[{"line_number":381,"context_line":"                      \u0027is lower than this maximum. As this is a security \u0027"},{"line_number":382,"context_line":"                      \u0027mechanism requests are not queued, and this setting \u0027"},{"line_number":383,"context_line":"                      \u0027is a global setting applying to all requests this \u0027"},{"line_number":384,"context_line":"                      \u0027conductor receieves, regardless of access rights.\u0027)),"},{"line_number":385,"context_line":"]"},{"line_number":386,"context_line":""},{"line_number":387,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"96d051db_e103e101","line":384,"in_reply_to":"22a36d38_c10b7477","updated":"2022-09-19 23:27:51.000000000","message":"Done","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"4dd9c2005575a789e4b24838b8b820ff41f769bb","unresolved":true,"context_lines":[{"line_number":363,"context_line":"               min\u003d1,"},{"line_number":364,"context_line":"               mutable\u003dTrue,"},{"line_number":365,"context_line":"               help\u003d_(\u0027The maximum number of concurrent nodes in deployment \u0027"},{"line_number":366,"context_line":"                      \u0027which are permitted in this ironic system. \u0027"},{"line_number":367,"context_line":"                      \u0027If this limit is reached, new requests will be \u0027"},{"line_number":368,"context_line":"                      \u0027rejected until the number of deployments in progress \u0027"},{"line_number":369,"context_line":"                      \u0027is lower than this maximum. As this is a security \u0027"}],"source_content_type":"text/x-python","patch_set":6,"id":"1bd014be_6c6d2203","line":366,"updated":"2022-09-19 22:37:24.000000000","message":"nit: Ironic (capitalization)","commit_id":"b0233c57b97dc9a731939555243378b46654ebf7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"6243fecfa02739455d1ab972ef5f5b2e69edb896","unresolved":false,"context_lines":[{"line_number":363,"context_line":"               min\u003d1,"},{"line_number":364,"context_line":"               mutable\u003dTrue,"},{"line_number":365,"context_line":"               help\u003d_(\u0027The maximum number of concurrent nodes in deployment \u0027"},{"line_number":366,"context_line":"                      \u0027which are permitted in this ironic system. \u0027"},{"line_number":367,"context_line":"                      \u0027If this limit is reached, new requests will be \u0027"},{"line_number":368,"context_line":"                      \u0027rejected until the number of deployments in progress \u0027"},{"line_number":369,"context_line":"                      \u0027is lower than this maximum. As this is a security \u0027"}],"source_content_type":"text/x-python","patch_set":6,"id":"466501b8_0e2a66a0","line":366,"in_reply_to":"1bd014be_6c6d2203","updated":"2022-09-20 13:46:20.000000000","message":"Done","commit_id":"b0233c57b97dc9a731939555243378b46654ebf7"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"4dd9c2005575a789e4b24838b8b820ff41f769bb","unresolved":true,"context_lines":[{"line_number":376,"context_line":"               min\u003d1,"},{"line_number":377,"context_line":"               mutable\u003dTrue,"},{"line_number":378,"context_line":"               help\u003d_(\u0027The maximum number of concurrent nodes in cleaning \u0027"},{"line_number":379,"context_line":"                      \u0027which are permitted in this ironic system. \u0027"},{"line_number":380,"context_line":"                      \u0027If this limit is reached, new requests will be \u0027"},{"line_number":381,"context_line":"                      \u0027rejected until the number of nodes in cleaning \u0027"},{"line_number":382,"context_line":"                      \u0027is lower than this maximum. As this is a security \u0027"}],"source_content_type":"text/x-python","patch_set":6,"id":"2cc7dcba_ba1405ad","line":379,"updated":"2022-09-19 22:37:24.000000000","message":"nit: Ironic (capitalization)","commit_id":"b0233c57b97dc9a731939555243378b46654ebf7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"6243fecfa02739455d1ab972ef5f5b2e69edb896","unresolved":false,"context_lines":[{"line_number":376,"context_line":"               min\u003d1,"},{"line_number":377,"context_line":"               mutable\u003dTrue,"},{"line_number":378,"context_line":"               help\u003d_(\u0027The maximum number of concurrent nodes in cleaning \u0027"},{"line_number":379,"context_line":"                      \u0027which are permitted in this ironic system. \u0027"},{"line_number":380,"context_line":"                      \u0027If this limit is reached, new requests will be \u0027"},{"line_number":381,"context_line":"                      \u0027rejected until the number of nodes in cleaning \u0027"},{"line_number":382,"context_line":"                      \u0027is lower than this maximum. As this is a security \u0027"}],"source_content_type":"text/x-python","patch_set":6,"id":"47609fdc_8b2317de","line":379,"in_reply_to":"2cc7dcba_ba1405ad","updated":"2022-09-20 13:46:20.000000000","message":"Done","commit_id":"b0233c57b97dc9a731939555243378b46654ebf7"}],"ironic/db/api.py":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cbc0408d191d26fe087c035807659dc7a6722da1","unresolved":true,"context_lines":[{"line_number":1421,"context_line":"    def count_nodes_in_provision_state(self, state):"},{"line_number":1422,"context_line":"        \"\"\"Count the number of nodes in given provision state."},{"line_number":1423,"context_line":""},{"line_number":1424,"context_line":"        :param state: A provision_state value to match for the"},{"line_number":1425,"context_line":"                      count operation."},{"line_number":1426,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":5,"id":"404f081e_2abc841f","line":1424,"updated":"2022-08-29 16:12:02.000000000","message":"looks like this could also be a list of states.","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"2ca8dd6cca56db11e02281aa0270a3572e7f3930","unresolved":false,"context_lines":[{"line_number":1421,"context_line":"    def count_nodes_in_provision_state(self, state):"},{"line_number":1422,"context_line":"        \"\"\"Count the number of nodes in given provision state."},{"line_number":1423,"context_line":""},{"line_number":1424,"context_line":"        :param state: A provision_state value to match for the"},{"line_number":1425,"context_line":"                      count operation."},{"line_number":1426,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":5,"id":"c779bf0c_d9e808c2","line":1424,"in_reply_to":"404f081e_2abc841f","updated":"2022-09-19 23:27:51.000000000","message":"Done","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"}],"ironic/db/sqlalchemy/api.py":[{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"4dd9c2005575a789e4b24838b8b820ff41f769bb","unresolved":true,"context_lines":[{"line_number":2414,"context_line":"            # literally have the DB do *all* of the world, so no"},{"line_number":2415,"context_line":"            # client side ops occur. The column is also indexed,"},{"line_number":2416,"context_line":"            # which means this will be an index based response."},{"line_number":2417,"context_line":"            # TODO(TheJulia): This might need to be revised for"},{"line_number":2418,"context_line":"            # SQLAlchemy 2.0 as it should be a scaler select and count"},{"line_number":2419,"context_line":"            # instead."},{"line_number":2420,"context_line":"            return session.query("}],"source_content_type":"text/x-python","patch_set":6,"id":"3a6d07d1_7b2fb478","line":2417,"updated":"2022-09-19 22:37:24.000000000","message":"does this belong here? seems accidental...","commit_id":"b0233c57b97dc9a731939555243378b46654ebf7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"6243fecfa02739455d1ab972ef5f5b2e69edb896","unresolved":false,"context_lines":[{"line_number":2414,"context_line":"            # literally have the DB do *all* of the world, so no"},{"line_number":2415,"context_line":"            # client side ops occur. The column is also indexed,"},{"line_number":2416,"context_line":"            # which means this will be an index based response."},{"line_number":2417,"context_line":"            # TODO(TheJulia): This might need to be revised for"},{"line_number":2418,"context_line":"            # SQLAlchemy 2.0 as it should be a scaler select and count"},{"line_number":2419,"context_line":"            # instead."},{"line_number":2420,"context_line":"            return session.query("}],"source_content_type":"text/x-python","patch_set":6,"id":"e0127644_b0a08fcf","line":2417,"in_reply_to":"3a6d07d1_7b2fb478","updated":"2022-09-20 13:46:20.000000000","message":"Forward looking comment since I will need to revise the section below later on.","commit_id":"b0233c57b97dc9a731939555243378b46654ebf7"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"0e4ab49c7e46032d283643ace79aca94ce5bb9ae","unresolved":true,"context_lines":[{"line_number":2414,"context_line":"            # literally have the DB do *all* of the world, so no"},{"line_number":2415,"context_line":"            # client side ops occur. The column is also indexed,"},{"line_number":2416,"context_line":"            # which means this will be an index based response."},{"line_number":2417,"context_line":"            # TODO(TheJulia): This might need to be revised for"},{"line_number":2418,"context_line":"            # SQLAlchemy 2.0 as it should be a scaler select and count"},{"line_number":2419,"context_line":"            # instead."},{"line_number":2420,"context_line":"            return session.query("}],"source_content_type":"text/x-python","patch_set":6,"id":"5f9dc01e_2456129d","line":2417,"in_reply_to":"3a6d07d1_7b2fb478","updated":"2022-09-19 23:46:06.000000000","message":"Julia confirmed in IRC it was intentional","commit_id":"b0233c57b97dc9a731939555243378b46654ebf7"}],"ironic/tests/unit/conductor/test_manager.py":[{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cbc0408d191d26fe087c035807659dc7a6722da1","unresolved":true,"context_lines":[{"line_number":8434,"context_line":"            driver\u003d\u0027fake-hardware\u0027,"},{"line_number":8435,"context_line":"            id\u003d113,"},{"line_number":8436,"context_line":"            uuid\u003duuidutils.generate_uuid())"},{"line_number":8437,"context_line":"        self.nodes \u003d [self.node1, self.node2, self.node3]"},{"line_number":8438,"context_line":"        # Create the nodes, as the tasks need to operate across tables."},{"line_number":8439,"context_line":"        self.node1.create()"},{"line_number":8440,"context_line":"        self.node2.create()"}],"source_content_type":"text/x-python","patch_set":5,"id":"b800bf2f_22588227","line":8437,"updated":"2022-08-29 16:12:02.000000000","message":"not sure what this is used for, but did we want self.node4 in the list?","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"2ca8dd6cca56db11e02281aa0270a3572e7f3930","unresolved":false,"context_lines":[{"line_number":8434,"context_line":"            driver\u003d\u0027fake-hardware\u0027,"},{"line_number":8435,"context_line":"            id\u003d113,"},{"line_number":8436,"context_line":"            uuid\u003duuidutils.generate_uuid())"},{"line_number":8437,"context_line":"        self.nodes \u003d [self.node1, self.node2, self.node3]"},{"line_number":8438,"context_line":"        # Create the nodes, as the tasks need to operate across tables."},{"line_number":8439,"context_line":"        self.node1.create()"},{"line_number":8440,"context_line":"        self.node2.create()"}],"source_content_type":"text/x-python","patch_set":5,"id":"6989f785_edccd902","line":8437,"in_reply_to":"b800bf2f_22588227","updated":"2022-09-19 23:27:51.000000000","message":"looks like self.nodes was redundant from the first one. Node4 mainly being for the latter test.","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"}],"releasenotes/notes/concurrency-limit-control-4b101bca7136e08d.yaml":[{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"afa8c11aa91819a1069244476a77c3abc3cb262d","unresolved":true,"context_lines":[{"line_number":7,"context_line":"    ``250`` and a maximum number of concurrent deletes to ``50``."},{"line_number":8,"context_line":"    These settings can be tuned using ``[conductor]max_concurrent_deploy``"},{"line_number":9,"context_line":"    and ``[conductor]max_concurrent_clean``, respectively."},{"line_number":10,"context_line":"    The defaults should generallly be good for most operators in most cases."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"f8666a9d_7434b53e","line":10,"updated":"2022-08-03 21:19:45.000000000","message":"s/generallly/generally/","commit_id":"ca2a420cbcfc2f64130f48bf537542c51834f88e"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ef730aa9c916e9efe7f35ce434da4a2a3b18aaaa","unresolved":false,"context_lines":[{"line_number":7,"context_line":"    ``250`` and a maximum number of concurrent deletes to ``50``."},{"line_number":8,"context_line":"    These settings can be tuned using ``[conductor]max_concurrent_deploy``"},{"line_number":9,"context_line":"    and ``[conductor]max_concurrent_clean``, respectively."},{"line_number":10,"context_line":"    The defaults should generallly be good for most operators in most cases."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"42cff187_80cf5236","line":10,"in_reply_to":"f8666a9d_7434b53e","updated":"2022-08-15 14:00:47.000000000","message":"Done","commit_id":"ca2a420cbcfc2f64130f48bf537542c51834f88e"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cbc0408d191d26fe087c035807659dc7a6722da1","unresolved":true,"context_lines":[{"line_number":4,"context_line":"    Adds a concurrency limiter for number of nodes in states related to"},{"line_number":5,"context_line":"    *Cleaning* and *Provisioning* operations across the ironic deployment."},{"line_number":6,"context_line":"    These settings default to a maximum number of concurrent deployments to"},{"line_number":7,"context_line":"    ``250`` and a maximum number of concurrent deletes to ``50``."},{"line_number":8,"context_line":"    These settings can be tuned using ``[conductor]max_concurrent_deploy``"},{"line_number":9,"context_line":"    and ``[conductor]max_concurrent_clean``, respectively."},{"line_number":10,"context_line":"    The defaults should generally be good for most operators in most cases."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"189cbe05_cc38991a","line":7,"updated":"2022-08-29 16:12:02.000000000","message":"nit maybe s/deletes/cleans/ or s/deletes/deletes and cleans/ ?","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"2ca8dd6cca56db11e02281aa0270a3572e7f3930","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    Adds a concurrency limiter for number of nodes in states related to"},{"line_number":5,"context_line":"    *Cleaning* and *Provisioning* operations across the ironic deployment."},{"line_number":6,"context_line":"    These settings default to a maximum number of concurrent deployments to"},{"line_number":7,"context_line":"    ``250`` and a maximum number of concurrent deletes to ``50``."},{"line_number":8,"context_line":"    These settings can be tuned using ``[conductor]max_concurrent_deploy``"},{"line_number":9,"context_line":"    and ``[conductor]max_concurrent_clean``, respectively."},{"line_number":10,"context_line":"    The defaults should generally be good for most operators in most cases."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"ef28f0c4_abdaa19b","line":7,"in_reply_to":"189cbe05_cc38991a","updated":"2022-09-19 23:27:51.000000000","message":"Done","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cbc0408d191d26fe087c035807659dc7a6722da1","unresolved":true,"context_lines":[{"line_number":7,"context_line":"    ``250`` and a maximum number of concurrent deletes to ``50``."},{"line_number":8,"context_line":"    These settings can be tuned using ``[conductor]max_concurrent_deploy``"},{"line_number":9,"context_line":"    and ``[conductor]max_concurrent_clean``, respectively."},{"line_number":10,"context_line":"    The defaults should generally be good for most operators in most cases."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"5a01a735_df42c722","line":10,"updated":"2022-08-29 16:12:02.000000000","message":"we might want to mention that there is no way to turn this off?","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"2ca8dd6cca56db11e02281aa0270a3572e7f3930","unresolved":false,"context_lines":[{"line_number":7,"context_line":"    ``250`` and a maximum number of concurrent deletes to ``50``."},{"line_number":8,"context_line":"    These settings can be tuned using ``[conductor]max_concurrent_deploy``"},{"line_number":9,"context_line":"    and ``[conductor]max_concurrent_clean``, respectively."},{"line_number":10,"context_line":"    The defaults should generally be good for most operators in most cases."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"9de1af3c_60801cf8","line":10,"in_reply_to":"5a01a735_df42c722","updated":"2022-09-19 23:27:51.000000000","message":"Done","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"cbc0408d191d26fe087c035807659dc7a6722da1","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":5,"id":"ac3a3637_b932f1e6","line":11,"updated":"2022-08-29 16:12:02.000000000","message":"I looked at the story. I don\u0027t see any mention of being able to turn this off. If there was a way to turn it off, I\u0027d want the default to reflect that, so it doesn\u0027t break existing ironic uses. Since there isn\u0027t any way to turn off and this changes the behaviour, we ought to add one of those upgrades entries (I forgot what they are called) to highlight this when people upgrade to a new ironic release.","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"2ca8dd6cca56db11e02281aa0270a3572e7f3930","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"63a9e67a_d5e694b7","line":11,"in_reply_to":"ac3a3637_b932f1e6","updated":"2022-09-19 23:27:51.000000000","message":"Done","commit_id":"63efa0b9447a403d8692c5ebd5b231cfa65d86e7"}]}
