)]}'
{"/PATCHSET_LEVEL":[{"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":"85111ed940047d5b3826dea24cb54e537281edc1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"9e88b58b_65bc8286","updated":"2025-06-04 18:11:06.000000000","message":"All failing jobs are json-rpc; seemingly (I didn\u0027t check 100% of them) all passing jobs are rabbit. We should dig into the json-rpc service.","commit_id":"2e582105c08ea155daa5c652077e997dc244fb4d"},{"author":{"_account_id":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."},"change_message_id":"acf21386a6d4f5134fb400bef3cc95b6acb8fb10","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"724664c2_10db9058","updated":"2025-06-03 14:30:25.000000000","message":"First issue to chase down, conductor is not starting up.","commit_id":"2e582105c08ea155daa5c652077e997dc244fb4d"},{"author":{"_account_id":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."},"change_message_id":"2cb15dd69d48d268b69437d87e67136127a70053","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"0e3c57d5_3a1100c7","updated":"2025-06-03 10:30:58.000000000","message":"recheck - fresh (updated) logs","commit_id":"2e582105c08ea155daa5c652077e997dc244fb4d"},{"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":"25f5e7fc8da2469547cb8b4729b63ac5f1ea029d","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":4,"id":"3aee9427_d48a07ad","updated":"2025-06-04 18:34:23.000000000","message":"both json_rpc.server.[whateverthatclasswas] and BaseWSGIService are both subclassed from service.Service and I suspect the lockup on startup when using json_rpc is oslo.service trying to init the same class twice?","commit_id":"144ae16e9dd2f85d9614366fe92dc193bbb9818d"},{"author":{"_account_id":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."},"change_message_id":"26b2d9aea7294c4c08feaf3603b3cbe37afc8105","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"7badb882_71b43aee","updated":"2025-06-05 20:49:52.000000000","message":"recheck - Fresh logs, unrelated failure (keystone.exception.Conflict: Conflict occurred attempting to store project -)\n\nJun 05 16:53:30.620961 np0041034601 devstack@keystone.service[42765]: [SQL: INSERT INTO project (id, name, domain_id, description, enabled, extra, parent_id, is_domain) VALUES (%(id)s, %(name)s, %(domain_id)s, %(description)s, %(enabled)s, %(extra)s, %(parent_id)s, %(is_domain)s)]\nJun 05 16:53:30.620961 np0041034601 devstack@keystone.service[42765]: [parameters: {\u0027id\u0027: \u0027f050a0faf1ba49fd85eee8c782d66b06\u0027, \u0027name\u0027: \u0027Default\u0027, \u0027domain_id\u0027: \u0027\u003c\u003ckeystone.domain.root\u003e\u003e\u0027, \u0027description\u0027: \u0027\u0027, \u0027enabled\u0027: 1, \u0027extra\u0027: \u0027{}\u0027, \u0027parent_id\u0027: None, \u0027is_domain\u0027: 1}]\nJun 05 16:53:30.620961 np0041034601 devstack@keystone.service[42765]: (Background on this error at: https://sqlalche.me/e/20/gkpj) {{(pid\u003d42765) wrapper /opt/stack/keystone/keystone/common/sql/core.py:580}}\nJun 05 16:53:30.649458 np0041034601 devstack@keystone.service[42765]: ERROR keystone.server.flask.application [None req-dc9523e0-8cf7-41fa-9106-d1e56481bc09 None admin] Conflict occurred attempting to store project - it is not permitted to have two projects acting as domains with the same name: Default.: keystone.exception.Conflict: Conflict occurred attempting to store project - it is not permitted to have two projects acting as domains with the same name: Default.\nJun 05 16:53:30.649458 np0041034601 devstack@keystone.service[42765]: ERROR keystone.server.flask.application Traceback (most recent call last):\nJun 05 16:53:30.649458 np0041034601 devstack@keystone.service[42765]: ERROR keystone.server.flask.application   File \"/opt/stack/data/venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py\", line 1963, in _exec_single_context\nJun 05 16:53:30.649458 np0041034601 devstack@keystone.service[42765]: ERROR keystone.server.flask.application     self.dialect.do_execute(\nJun 05 16:53:30.649458 np0041034601 devstack@keystone.service[42765]: ERROR keystone.server.flask.application   File \"/opt/stack/data/venv/lib/python3.12/site-packages/\n...","commit_id":"014f0f0a918e09ae56dabe427e458c0cb31008ca"},{"author":{"_account_id":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."},"change_message_id":"218e2212e048dc68249b92779f5bb5ec35d4ef63","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"13ea8d1d_de9616e8","updated":"2025-06-11 18:58:02.000000000","message":"1) We created 10,000 nodes using the benchmark creation script, with 1 port each.\n2) We queried them with various limits against both types of code:\n\nLIMIT 10000:\ncheroot: ~1.8\neventlet: ~1.9\n\nLIMIT 1000:\ncheroot - ~1.7s\neventlet: ~1.8s\n\nThis was checked on physical hardware well outsized for this amount of data","commit_id":"a83a5adc38b55b8439fd3e64ad484afec3c31b55"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"b75536adf21a98a4c4fe3d653c0256131f020620","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"34363485_b9354df8","updated":"2025-06-09 15:16:52.000000000","message":"I think it would also be super powerful to see if we can get the benchmark script to produce some before and the after this patch so we can highlight/identify if there is a major performance change, in part because this entire refactor will change the performance profile and even if it is just *known* and documented somewhere along the way, then that is the data points operators will need to know or be able to discover to quantify any changes they see/understand. Then again, we may observe a huge regression, and at which point we may need to look at things again.","commit_id":"a83a5adc38b55b8439fd3e64ad484afec3c31b55"},{"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":"8c7add739e765befceb3dfdbd95e10087bb85ae2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"d1b7b041_f19647f8","updated":"2025-06-09 14:37:19.000000000","message":"Minor concerns. This is great!","commit_id":"a83a5adc38b55b8439fd3e64ad484afec3c31b55"},{"author":{"_account_id":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."},"change_message_id":"5b4fab0d5ed8fa6b19d5cb48e5f3013d7432e9fb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"8e713884_05bf9b04","updated":"2025-06-08 20:33:21.000000000","message":"This should now be ready for reviews and more testing.","commit_id":"a83a5adc38b55b8439fd3e64ad484afec3c31b55"},{"author":{"_account_id":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."},"change_message_id":"43c1901ea87e9b4dbf0baeb2f72a86c324919a66","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"6a74063b_0e4bf21d","updated":"2025-06-09 07:41:26.000000000","message":"recheck - one more pass","commit_id":"a83a5adc38b55b8439fd3e64ad484afec3c31b55"},{"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":"d19c96d054a05ecf3386896bd6206ed81c4a2e33","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":8,"id":"6e79065b_0bb66019","updated":"2025-06-09 04:00:52.000000000","message":"recheck looking for multiple CI passes with no suspicious failures in order to ensure it\u0027s reproducable\n\n\\o/","commit_id":"a83a5adc38b55b8439fd3e64ad484afec3c31b55"},{"author":{"_account_id":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."},"change_message_id":"e75424dbb1f082c65acb6a940f0c6d9bb8ed4065","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"15972eb2_017de1aa","updated":"2025-06-16 15:38:54.000000000","message":"recheck - Looking for consistent passes and comparable logs","commit_id":"02ccbb704e44f34ea12a5c2520e4a9d73899f55d"},{"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":"5e6930330b55a38fcd44be7e7041a92050e21256","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":10,"id":"3ca35f2a_9f7abf7f","updated":"2025-06-12 21:21:36.000000000","message":"I\u0027m unsure if Julia\u0027s comment about documented defaults still applies, but otherwise LGTM.","commit_id":"d4725c90a1ac7fe82d11531ab87c5a7dca9291dc"},{"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":"348b2079c3b747f51ee8f141e581f71c23f87a4c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"8fe10cf2_0858d7aa","updated":"2025-06-17 19:40:10.000000000","message":"ironic-standalone-redfish has passed:\n\n2025-06-17 19:38:23.508016 | controller | Ran: 60 tests in 1694.7377 sec.\n2025-06-17 19:38:23.508028 | controller |  - Passed: 9\n2025-06-17 19:38:23.508039 | controller |  - Skipped: 51\n2025-06-17 19:38:23.508066 | controller |  - Expected Fail: 0\n2025-06-17 19:38:23.508077 | controller |  - Unexpected Success: 0\n2025-06-17 19:38:23.508089 | controller |  - Failed: 0","commit_id":"d4725c90a1ac7fe82d11531ab87c5a7dca9291dc"},{"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":"3f0d79261faaf0a4f9dfeab33cbd761edcb7e12b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"4738a4f3_261c1c4e","updated":"2025-06-17 21:09:11.000000000","message":"recheck failures pulling etcd tarball from github","commit_id":"d4725c90a1ac7fe82d11531ab87c5a7dca9291dc"},{"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":"345302b5807cc37f316f51ac54936ce17de3bca5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"b70c6cf1_c88cf243","updated":"2025-06-17 18:45:28.000000000","message":"recheck fix has landed for standalone-redfish job","commit_id":"d4725c90a1ac7fe82d11531ab87c5a7dca9291dc"},{"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":"1a9dcecb160aff919a2d033d40412420944a451e","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":10,"id":"996d8bd7_e8041039","updated":"2025-06-16 15:39:34.000000000","message":"recheck we\u0027d like to see a pass of ironic-standalone-redfish if possible, or at least confirmation it\u0027s breakage is not caused by this patch","commit_id":"d4725c90a1ac7fe82d11531ab87c5a7dca9291dc"}],"ironic/common/wsgi_service.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":"db760788f177403e48d8140a666b337ff70b35a2","unresolved":true,"context_lines":[{"line_number":70,"context_line":"            # serving in SSL mode."},{"line_number":71,"context_line":"            sslutils.is_enabled(CONF)"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"            self.server.ssl_adapter \u003d cheroot_ssl.BuiltinSSLAdapter("},{"line_number":74,"context_line":"                certificate\u003dCONF.ssl.cert_file,"},{"line_number":75,"context_line":"                private_key\u003dCONF.ssl.key_file,"},{"line_number":76,"context_line":"            )"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        self._unix_socket \u003d conf.unix_socket"},{"line_number":79,"context_line":"        self._socket_mode \u003d socket_mode"},{"line_number":80,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"d504dac6_c7b2b6c1","line":77,"range":{"start_line":73,"start_character":10,"end_line":77,"end_character":0},"updated":"2025-06-03 12:23:11.000000000","message":"We\u0027ll want to build this config as a distinct configuration option we pass in. I recommend adding new options, perhaps under the json_rpc section to represent the ssl options, referring to the old options as the deprecated predecessor option.","commit_id":"2e582105c08ea155daa5c652077e997dc244fb4d"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"14e7e8de2e88c52931bf20512dcffbe3ed00d729","unresolved":true,"context_lines":[{"line_number":70,"context_line":"            # serving in SSL mode."},{"line_number":71,"context_line":"            sslutils.is_enabled(CONF)"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"            self.server.ssl_adapter \u003d cheroot_ssl.BuiltinSSLAdapter("},{"line_number":74,"context_line":"                certificate\u003dCONF.ssl.cert_file,"},{"line_number":75,"context_line":"                private_key\u003dCONF.ssl.key_file,"},{"line_number":76,"context_line":"            )"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        self._unix_socket \u003d conf.unix_socket"},{"line_number":79,"context_line":"        self._socket_mode \u003d socket_mode"},{"line_number":80,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"f466e0cd_43dab5ff","line":77,"range":{"start_line":73,"start_character":10,"end_line":77,"end_character":0},"in_reply_to":"d504dac6_c7b2b6c1","updated":"2025-06-03 12:24:04.000000000","message":"err, this covers both. The caller will likley need to pass in the values then.","commit_id":"2e582105c08ea155daa5c652077e997dc244fb4d"},{"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":"8c7add739e765befceb3dfdbd95e10087bb85ae2","unresolved":true,"context_lines":[{"line_number":70,"context_line":"            # serving in SSL mode."},{"line_number":71,"context_line":"            sslutils.is_enabled(CONF)"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"            self.server.ssl_adapter \u003d cheroot_ssl.BuiltinSSLAdapter("},{"line_number":74,"context_line":"                certificate\u003dCONF.ssl.cert_file,"},{"line_number":75,"context_line":"                private_key\u003dCONF.ssl.key_file,"},{"line_number":76,"context_line":"            )"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        self._unix_socket \u003d conf.unix_socket"},{"line_number":79,"context_line":"        self._socket_mode \u003d socket_mode"},{"line_number":80,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"068e37fe_549703f9","line":77,"range":{"start_line":73,"start_character":10,"end_line":77,"end_character":0},"in_reply_to":"f466e0cd_43dab5ff","updated":"2025-06-09 14:37:19.000000000","message":"++ please ensure these values are configurable per-service (e.g. API and RPC can use different cert/key pairs)","commit_id":"2e582105c08ea155daa5c652077e997dc244fb4d"},{"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":"8c7add739e765befceb3dfdbd95e10087bb85ae2","unresolved":true,"context_lines":[{"line_number":28,"context_line":""},{"line_number":29,"context_line":"_MAX_DEFAULT_WORKERS \u003d 4"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"# hardcoding for science (to be loaded froom config)"},{"line_number":32,"context_line":"_POOL_MIN \u003d 10"},{"line_number":33,"context_line":"_POOL_MAX \u003d 100"},{"line_number":34,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"4d25e781_a204a433","line":31,"updated":"2025-06-09 14:37:19.000000000","message":"complete this TODO?","commit_id":"a83a5adc38b55b8439fd3e64ad484afec3c31b55"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"7491884bc0c9979eddbfa955a6d0b8ca25780931","unresolved":true,"context_lines":[{"line_number":60,"context_line":"            bind_addr\u003dbind_addr,"},{"line_number":61,"context_line":"            wsgi_app\u003dapp,"},{"line_number":62,"context_line":"            server_name\u003dname)"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"        self.server.requests.min \u003d _POOL_MIN"},{"line_number":65,"context_line":"        self.server.requests.max \u003d _POOL_MAX"},{"line_number":66,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"9c36adc7_526e0b6c","line":63,"updated":"2025-06-09 16:04:06.000000000","message":"nit: It might be good to denote the defaults we\u0027re overwriting pool/thread wise, or at least what and where we can find it.","commit_id":"a83a5adc38b55b8439fd3e64ad484afec3c31b55"},{"author":{"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"},"change_message_id":"bb35e979d2559c5b71dc2296f80389933bf4da66","unresolved":true,"context_lines":[{"line_number":154,"context_line":"        :returns: None"},{"line_number":155,"context_line":"        \"\"\""},{"line_number":156,"context_line":"        self.app \u003d app.VersionSelectorApplication()"},{"line_number":157,"context_line":"        self.workers \u003d ("},{"line_number":158,"context_line":"            CONF.api.api_workers"},{"line_number":159,"context_line":"            # NOTE(dtantsur): each worker takes a substantial amount of memory,"},{"line_number":160,"context_line":"            # so we don\u0027t want to end up with dozens of them."}],"source_content_type":"text/x-python","patch_set":10,"id":"6ea954f6_31976c2b","line":157,"updated":"2025-08-27 21:21:10.000000000","message":"Just for the record, I did try to re-use the same sort of code for mistral-api.\nWhile this works, it\u0027s also failing starting all workers.\nOnly one worker is actually started, other workers are not able to start because of:\nOSError: No socket could be created -- ((\u00270.0.0.0\u0027, 6385): [Errno 98] Address already in use)\n\nCotyledon then try to restart them in a loop","commit_id":"d4725c90a1ac7fe82d11531ab87c5a7dca9291dc"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"d8ce611a320ab4e1a361c355c5884b5b497e5590","unresolved":true,"context_lines":[{"line_number":154,"context_line":"        :returns: None"},{"line_number":155,"context_line":"        \"\"\""},{"line_number":156,"context_line":"        self.app \u003d app.VersionSelectorApplication()"},{"line_number":157,"context_line":"        self.workers \u003d ("},{"line_number":158,"context_line":"            CONF.api.api_workers"},{"line_number":159,"context_line":"            # NOTE(dtantsur): each worker takes a substantial amount of memory,"},{"line_number":160,"context_line":"            # so we don\u0027t want to end up with dozens of them."}],"source_content_type":"text/x-python","patch_set":10,"id":"d793b9b0_25242e91","line":157,"in_reply_to":"6ea954f6_31976c2b","updated":"2025-08-28 16:51:23.000000000","message":"Curious, could it be the launch model overall?","commit_id":"d4725c90a1ac7fe82d11531ab87c5a7dca9291dc"},{"author":{"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"},"change_message_id":"0832227eafc6ad9b5f375ff1d0d2270f317266f0","unresolved":true,"context_lines":[{"line_number":154,"context_line":"        :returns: None"},{"line_number":155,"context_line":"        \"\"\""},{"line_number":156,"context_line":"        self.app \u003d app.VersionSelectorApplication()"},{"line_number":157,"context_line":"        self.workers \u003d ("},{"line_number":158,"context_line":"            CONF.api.api_workers"},{"line_number":159,"context_line":"            # NOTE(dtantsur): each worker takes a substantial amount of memory,"},{"line_number":160,"context_line":"            # so we don\u0027t want to end up with dozens of them."}],"source_content_type":"text/x-python","patch_set":10,"id":"2da24989_49f17a67","line":157,"in_reply_to":"d793b9b0_25242e91","updated":"2025-08-29 07:10:21.000000000","message":"I am not sure to understand your words 😊\nWhat I did so far in mistral is that I reduce the workers to 1 in that use case.","commit_id":"d4725c90a1ac7fe82d11531ab87c5a7dca9291dc"}]}
