)]}'
{"/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":"ceb826ad3a905ca4c6a2a4a047b3766cc9fbcf8d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"9d3ec0b3_3db00a9c","updated":"2021-11-29 14:32:53.000000000","message":"Looks pretty sharp to me. Mainly I\u0027d like to see some inline comments, just so other maintainers know what is going on and can grok the reasoning why.","commit_id":"f32b092547b63ea71070c15c56db02c20f5afc3e"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"12512c048cca2b5931dc1188286434d1d6934b7c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"6e042643_3f6d4712","updated":"2021-12-06 17:03:39.000000000","message":"-1 only regarding the exception handling/logging.\n\nI guess I have concern about the name, being ``ironic`` when we had a cli ages ago named ``ironic``... but I *guess* this is for the best... maybe?!","commit_id":"1d9d085ba3d3597be11fc8001a6a3b24895514e2"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a67157facc01487c0b978ace4d05ef3d4e2f0044","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"7f6c0520_019a09da","updated":"2021-12-06 15:34:53.000000000","message":"recheck","commit_id":"1d9d085ba3d3597be11fc8001a6a3b24895514e2"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"b05eb5065fb66b509fd1516fea1964b7cb9a8e93","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"3d6d5a22_7640e2f6","updated":"2021-12-08 07:52:35.000000000","message":"recheck","commit_id":"9a6f2d101ba734126b3e7f0d475b747ebcb84b62"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"09cb76226715f6b8f687d70bd9a106edf8e79333","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"8611f0c5_a5ecf20b","updated":"2021-12-08 13:10:21.000000000","message":"recheck","commit_id":"9a6f2d101ba734126b3e7f0d475b747ebcb84b62"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"a6582be1d2893d9f0c38bdc0aeab89c4e195a3ba","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"4753247d_4db8f68f","updated":"2021-12-08 09:27:40.000000000","message":"recheck greenlet issue","commit_id":"9a6f2d101ba734126b3e7f0d475b747ebcb84b62"}],"ironic/api/wsgi.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":"ceb826ad3a905ca4c6a2a4a047b3766cc9fbcf8d","unresolved":true,"context_lines":[{"line_number":29,"context_line":"def initialize_wsgi_app(argv\u003dsys.argv):"},{"line_number":30,"context_line":"    i18n.install(\u0027ironic\u0027)"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    service.prepare_command(argv)"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    LOG.debug(\"Configuration:\")"},{"line_number":35,"context_line":"    CONF.log_opt_values(LOG, log.DEBUG)"}],"source_content_type":"text/x-python","patch_set":1,"id":"90a4ea65_6450305e","line":32,"updated":"2021-11-29 14:32:53.000000000","message":"umm... okay. Wouldn\u0027t preparing a command return something of use?\n\nI guess maybe the name could be slightly more verbose, but I\u0027ve not looked at the code behind it yet.","commit_id":"fd4dab5e415f718d79c41ded7ad6f3a54ae78b6a"}],"ironic/common/rpc_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":"ceb826ad3a905ca4c6a2a4a047b3766cc9fbcf8d","unresolved":true,"context_lines":[{"line_number":57,"context_line":"            target \u003d messaging.Target(topic\u003dself.topic, server\u003dself.host)"},{"line_number":58,"context_line":"            endpoints \u003d [self.manager]"},{"line_number":59,"context_line":"            self.rpcserver \u003d rpc.get_server(target, endpoints, serializer)"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"        if self.rpcserver is not None:"},{"line_number":62,"context_line":"            self.rpcserver.start()"},{"line_number":63,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"ca5223b8_49e2bcf0","line":60,"updated":"2021-11-29 14:32:53.000000000","message":"Inline comments/notes please! :)","commit_id":"f32b092547b63ea71070c15c56db02c20f5afc3e"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"fc0e062a13ba3a60c97965d3b40646641fb10933","unresolved":true,"context_lines":[{"line_number":57,"context_line":"            target \u003d messaging.Target(topic\u003dself.topic, server\u003dself.host)"},{"line_number":58,"context_line":"            endpoints \u003d [self.manager]"},{"line_number":59,"context_line":"            self.rpcserver \u003d rpc.get_server(target, endpoints, serializer)"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"        if self.rpcserver is not None:"},{"line_number":62,"context_line":"            self.rpcserver.start()"},{"line_number":63,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"2628aca1_6112d284","line":60,"in_reply_to":"ca5223b8_49e2bcf0","updated":"2021-11-30 13:29:23.000000000","message":"On which topic? The flow here seems more or less straightforward to me.","commit_id":"f32b092547b63ea71070c15c56db02c20f5afc3e"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"bc70ffcc5cbe93ca7e9eb55adf456e80a987140f","unresolved":true,"context_lines":[{"line_number":58,"context_line":"            endpoints \u003d [self.manager]"},{"line_number":59,"context_line":"            self.rpcserver \u003d rpc.get_server(target, endpoints, serializer)"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"        if self.rpcserver is not None:"},{"line_number":62,"context_line":"            self.rpcserver.start()"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"        self.handle_signal()"}],"source_content_type":"text/x-python","patch_set":5,"id":"2c917e1f_79109423","line":61,"updated":"2021-12-01 14:20:45.000000000","message":"So by default, it is none, which means it never starts?\n\nIt needs to explicitly start AIUI    Could it have been CONF.rpc_transport that you were thinking of?","commit_id":"e117f0868e55385d22a81e657b44e9f3e558bec1"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"af6def7251c5f0de446f06885eff2e662b019d8b","unresolved":false,"context_lines":[{"line_number":58,"context_line":"            endpoints \u003d [self.manager]"},{"line_number":59,"context_line":"            self.rpcserver \u003d rpc.get_server(target, endpoints, serializer)"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"        if self.rpcserver is not None:"},{"line_number":62,"context_line":"            self.rpcserver.start()"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"        self.handle_signal()"}],"source_content_type":"text/x-python","patch_set":5,"id":"be06679a_86e15bbf","line":61,"in_reply_to":"2c917e1f_79109423","updated":"2021-12-01 14:22:29.000000000","message":"It\u0027s set on line 54 (JSON RPC) or 59 (oslo). The None case if only for rpc_transport \u003d\u003d none which is not used in the CI.","commit_id":"e117f0868e55385d22a81e657b44e9f3e558bec1"}],"ironic/conductor/rpcapi.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":"ceb826ad3a905ca4c6a2a4a047b3766cc9fbcf8d","unresolved":true,"context_lines":[{"line_number":46,"context_line":"        return getattr(rpc.GLOBAL_MANAGER, rpc_call_name)(context, **kwargs)"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    def can_send_version(self, version):"},{"line_number":49,"context_line":"        return True"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"_LOCAL_CONTEXT \u003d LocalContext()"}],"source_content_type":"text/x-python","patch_set":1,"id":"e69a7c33_77ad19cc","line":49,"updated":"2021-11-29 14:32:53.000000000","message":"nit: I\u0027d put a doc string or a note basically saying this is only valid on a local interaction since the belief is in the same process.","commit_id":"fd4dab5e415f718d79c41ded7ad6f3a54ae78b6a"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"fc0e062a13ba3a60c97965d3b40646641fb10933","unresolved":false,"context_lines":[{"line_number":46,"context_line":"        return getattr(rpc.GLOBAL_MANAGER, rpc_call_name)(context, **kwargs)"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    def can_send_version(self, version):"},{"line_number":49,"context_line":"        return True"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"_LOCAL_CONTEXT \u003d LocalContext()"}],"source_content_type":"text/x-python","patch_set":1,"id":"f49e98b6_3a81b04d","line":49,"in_reply_to":"e69a7c33_77ad19cc","updated":"2021-11-30 13:29:23.000000000","message":"Done","commit_id":"fd4dab5e415f718d79c41ded7ad6f3a54ae78b6a"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ceb826ad3a905ca4c6a2a4a047b3766cc9fbcf8d","unresolved":true,"context_lines":[{"line_number":159,"context_line":""},{"line_number":160,"context_line":"    def _prepare_call(self, topic, version\u003dNone):"},{"line_number":161,"context_line":"        # FIXME(dtantsur): this doesn\u0027t work with either JSON RPC or local"},{"line_number":162,"context_line":"        # conductor. Do we even need this fallback?"},{"line_number":163,"context_line":"        topic \u003d topic or self.topic"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"        if rpc.GLOBAL_MANAGER is not None:"}],"source_content_type":"text/x-python","patch_set":1,"id":"ebf6579f_8c8dc353","line":162,"updated":"2021-11-29 14:32:53.000000000","message":"If I\u0027m groking this correctly, the fallback is in case \"not configured, we just magically do it locally\". I think it is valid, the things about this that largely worry me is bit below and somehow invoking that, when i would think it should never quite get invoked.","commit_id":"fd4dab5e415f718d79c41ded7ad6f3a54ae78b6a"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"fc0e062a13ba3a60c97965d3b40646641fb10933","unresolved":true,"context_lines":[{"line_number":159,"context_line":""},{"line_number":160,"context_line":"    def _prepare_call(self, topic, version\u003dNone):"},{"line_number":161,"context_line":"        # FIXME(dtantsur): this doesn\u0027t work with either JSON RPC or local"},{"line_number":162,"context_line":"        # conductor. Do we even need this fallback?"},{"line_number":163,"context_line":"        topic \u003d topic or self.topic"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"        if rpc.GLOBAL_MANAGER is not None:"}],"source_content_type":"text/x-python","patch_set":1,"id":"60ed8f1f_8a2ff892","line":162,"in_reply_to":"ebf6579f_8c8dc353","updated":"2021-11-30 13:29:23.000000000","message":"The thing is, not providing a topic does not work with JSON RPC (and may not even work correctly with oslo.messaging).","commit_id":"fd4dab5e415f718d79c41ded7ad6f3a54ae78b6a"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ceb826ad3a905ca4c6a2a4a047b3766cc9fbcf8d","unresolved":true,"context_lines":[{"line_number":163,"context_line":"        topic \u003d topic or self.topic"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"        if rpc.GLOBAL_MANAGER is not None:"},{"line_number":166,"context_line":"            host \u003d topic[len(self.topic) + 1:]"},{"line_number":167,"context_line":"            if host \u003d\u003d CONF.host:"},{"line_number":168,"context_line":"                return _LOCAL_CONTEXT"},{"line_number":169,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"4eb611b4_15809492","line":166,"range":{"start_line":166,"start_character":3,"end_line":166,"end_character":46},"updated":"2021-11-29 14:32:53.000000000","message":"I\u0027m a little confused what is going on here. More so in the why, but but also +1... It just seems super weird, and I think even if it is right, an inline note or three is going to be needed to help prevent people from \"fixing\" it because it does, unfortunately, look weird.","commit_id":"fd4dab5e415f718d79c41ded7ad6f3a54ae78b6a"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"fc0e062a13ba3a60c97965d3b40646641fb10933","unresolved":false,"context_lines":[{"line_number":163,"context_line":"        topic \u003d topic or self.topic"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"        if rpc.GLOBAL_MANAGER is not None:"},{"line_number":166,"context_line":"            host \u003d topic[len(self.topic) + 1:]"},{"line_number":167,"context_line":"            if host \u003d\u003d CONF.host:"},{"line_number":168,"context_line":"                return _LOCAL_CONTEXT"},{"line_number":169,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"2ed44570_fd99e02a","line":166,"range":{"start_line":166,"start_character":3,"end_line":166,"end_character":46},"in_reply_to":"4eb611b4_15809492","updated":"2021-11-30 13:29:23.000000000","message":"Done","commit_id":"fd4dab5e415f718d79c41ded7ad6f3a54ae78b6a"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"12512c048cca2b5931dc1188286434d1d6934b7c","unresolved":true,"context_lines":[{"line_number":47,"context_line":"        if rpc.GLOBAL_MANAGER is None:"},{"line_number":48,"context_line":"            raise exception.ServiceUnavailable("},{"line_number":49,"context_line":"                _(\"The built-in conductor is not available, it might have \""},{"line_number":50,"context_line":"                  \"crashed\"))"},{"line_number":51,"context_line":"        try:"},{"line_number":52,"context_line":"            return getattr(rpc.GLOBAL_MANAGER, rpc_call_name)(context,"},{"line_number":53,"context_line":"                                                              **kwargs)"}],"source_content_type":"text/x-python","patch_set":10,"id":"9e50ce30_df855708","line":50,"updated":"2021-12-06 17:03:39.000000000","message":"nit: crashed. ;)\n\nMaybe suggest a corrective course of action?","commit_id":"1d9d085ba3d3597be11fc8001a6a3b24895514e2"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"8920eab79684794a547b61fc72aa63f58d89aaa0","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        if rpc.GLOBAL_MANAGER is None:"},{"line_number":48,"context_line":"            raise exception.ServiceUnavailable("},{"line_number":49,"context_line":"                _(\"The built-in conductor is not available, it might have \""},{"line_number":50,"context_line":"                  \"crashed\"))"},{"line_number":51,"context_line":"        try:"},{"line_number":52,"context_line":"            return getattr(rpc.GLOBAL_MANAGER, rpc_call_name)(context,"},{"line_number":53,"context_line":"                                                              **kwargs)"}],"source_content_type":"text/x-python","patch_set":10,"id":"12990202_06441dbd","line":50,"in_reply_to":"9e50ce30_df855708","updated":"2021-12-07 08:30:57.000000000","message":"\u003e nit: crashed. ;)\n\nThis is the same word, no? If you mean a dot in the end, often times we should not do it. Exception messages are often concatenated, even when logging them through oslo.log.\n\nAck re corrective action.","commit_id":"1d9d085ba3d3597be11fc8001a6a3b24895514e2"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"12512c048cca2b5931dc1188286434d1d6934b7c","unresolved":true,"context_lines":[{"line_number":66,"context_line":"        \"\"\""},{"line_number":67,"context_line":"        try:"},{"line_number":68,"context_line":"            return self.call(context, rpc_call_name, **kwargs)"},{"line_number":69,"context_line":"        except Exception:"},{"line_number":70,"context_line":"            LOG.exception(\u0027Ignoring unhandled exception from RPC cast %s\u0027,"},{"line_number":71,"context_line":"                          rpc_call_name)"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"_LOCAL_CONTEXT \u003d LocalContext()"}],"source_content_type":"text/x-python","patch_set":10,"id":"05dfd70a_aa9d0df2","line":71,"range":{"start_line":69,"start_character":0,"end_line":71,"end_character":40},"updated":"2021-12-06 17:03:39.000000000","message":"So, basically we raise an exception on 48, and then promptly squash it here?\n\nI\u0027d at least log the exception, since so many things can happen in here.","commit_id":"1d9d085ba3d3597be11fc8001a6a3b24895514e2"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"8920eab79684794a547b61fc72aa63f58d89aaa0","unresolved":true,"context_lines":[{"line_number":66,"context_line":"        \"\"\""},{"line_number":67,"context_line":"        try:"},{"line_number":68,"context_line":"            return self.call(context, rpc_call_name, **kwargs)"},{"line_number":69,"context_line":"        except Exception:"},{"line_number":70,"context_line":"            LOG.exception(\u0027Ignoring unhandled exception from RPC cast %s\u0027,"},{"line_number":71,"context_line":"                          rpc_call_name)"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"_LOCAL_CONTEXT \u003d LocalContext()"}],"source_content_type":"text/x-python","patch_set":10,"id":"81eb31b8_45e4b023","line":71,"range":{"start_line":69,"start_character":0,"end_line":71,"end_character":40},"in_reply_to":"05dfd70a_aa9d0df2","updated":"2021-12-07 08:30:57.000000000","message":"\u003e So, basically we raise an exception on 48, and then promptly squash it here?\n\nYes. This is how the normal RPC behaves as well. Keep in mind that cast() is only used for continue_node_clean and continue_node_deploy.\n\n\u003e I\u0027d at least log the exception\n\nMmm, you\u0027re literally commenting on the line starting with LOG.exception :) Am I missing something?","commit_id":"1d9d085ba3d3597be11fc8001a6a3b24895514e2"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"e219f77cd311a88cfa2216e1cb0443eb0a2029d2","unresolved":true,"context_lines":[{"line_number":66,"context_line":"        \"\"\""},{"line_number":67,"context_line":"        try:"},{"line_number":68,"context_line":"            return self.call(context, rpc_call_name, **kwargs)"},{"line_number":69,"context_line":"        except Exception:"},{"line_number":70,"context_line":"            LOG.exception(\u0027Ignoring unhandled exception from RPC cast %s\u0027,"},{"line_number":71,"context_line":"                          rpc_call_name)"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"_LOCAL_CONTEXT \u003d LocalContext()"}],"source_content_type":"text/x-python","patch_set":10,"id":"cb118c7e_fad13cc7","line":71,"range":{"start_line":69,"start_character":0,"end_line":71,"end_character":40},"in_reply_to":"81eb31b8_45e4b023","updated":"2021-12-07 19:26:07.000000000","message":"DOH!","commit_id":"1d9d085ba3d3597be11fc8001a6a3b24895514e2"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"12512c048cca2b5931dc1188286434d1d6934b7c","unresolved":true,"context_lines":[{"line_number":189,"context_line":"        :param version: RPC API version to require."},{"line_number":190,"context_line":"        \"\"\""},{"line_number":191,"context_line":"        # FIXME(dtantsur): this doesn\u0027t work with either JSON RPC or local"},{"line_number":192,"context_line":"        # conductor. Do we even need this fallback?"},{"line_number":193,"context_line":"        topic \u003d topic or self.topic"},{"line_number":194,"context_line":"        # Normally a topic is a \u003ctopic prefix\u003e.\u003chostname\u003e, we need to extract"},{"line_number":195,"context_line":"        # the hostname to match it against the current host."}],"source_content_type":"text/x-python","patch_set":10,"id":"f3c11e8a_ab2edb58","line":192,"updated":"2021-12-06 17:03:39.000000000","message":"Good question... and AIUI, basically everything already knows the topic except the \"find any\" calls.","commit_id":"1d9d085ba3d3597be11fc8001a6a3b24895514e2"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"8920eab79684794a547b61fc72aa63f58d89aaa0","unresolved":false,"context_lines":[{"line_number":189,"context_line":"        :param version: RPC API version to require."},{"line_number":190,"context_line":"        \"\"\""},{"line_number":191,"context_line":"        # FIXME(dtantsur): this doesn\u0027t work with either JSON RPC or local"},{"line_number":192,"context_line":"        # conductor. Do we even need this fallback?"},{"line_number":193,"context_line":"        topic \u003d topic or self.topic"},{"line_number":194,"context_line":"        # Normally a topic is a \u003ctopic prefix\u003e.\u003chostname\u003e, we need to extract"},{"line_number":195,"context_line":"        # the hostname to match it against the current host."}],"source_content_type":"text/x-python","patch_set":10,"id":"962f8874_41c1f7a1","line":192,"in_reply_to":"f3c11e8a_ab2edb58","updated":"2021-12-07 08:30:57.000000000","message":"Yeah, and I don\u0027t think we have \"find any\" calls. A good follow-up topic.","commit_id":"1d9d085ba3d3597be11fc8001a6a3b24895514e2"}],"ironic/conf/default.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":"ceb826ad3a905ca4c6a2a4a047b3766cc9fbcf8d","unresolved":true,"context_lines":[{"line_number":363,"context_line":"               default\u003d\u0027oslo\u0027,"},{"line_number":364,"context_line":"               choices\u003d[(\u0027oslo\u0027, _(\u0027use oslo.messaging transport\u0027)),"},{"line_number":365,"context_line":"                        (\u0027json-rpc\u0027, _(\u0027use JSON RPC transport\u0027)),"},{"line_number":366,"context_line":"                        (\u0027none\u0027, _(\u0027No RPC, only use local conductor\u0027))],"},{"line_number":367,"context_line":"               help\u003d_(\u0027Which RPC transport implementation to use between \u0027"},{"line_number":368,"context_line":"                      \u0027conductor and API services\u0027)),"},{"line_number":369,"context_line":"    cfg.BoolOpt(\u0027minimum_memory_warning_only\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"96de275b_ec354941","line":366,"updated":"2021-11-29 14:32:53.000000000","message":"Thinking outloud, could we also handle \u0027\u0027 or the literal None? Just thinking from naming standpoint, lower case None quickly might translate to None or \u0027\u0027","commit_id":"f32b092547b63ea71070c15c56db02c20f5afc3e"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"fc0e062a13ba3a60c97965d3b40646641fb10933","unresolved":true,"context_lines":[{"line_number":363,"context_line":"               default\u003d\u0027oslo\u0027,"},{"line_number":364,"context_line":"               choices\u003d[(\u0027oslo\u0027, _(\u0027use oslo.messaging transport\u0027)),"},{"line_number":365,"context_line":"                        (\u0027json-rpc\u0027, _(\u0027use JSON RPC transport\u0027)),"},{"line_number":366,"context_line":"                        (\u0027none\u0027, _(\u0027No RPC, only use local conductor\u0027))],"},{"line_number":367,"context_line":"               help\u003d_(\u0027Which RPC transport implementation to use between \u0027"},{"line_number":368,"context_line":"                      \u0027conductor and API services\u0027)),"},{"line_number":369,"context_line":"    cfg.BoolOpt(\u0027minimum_memory_warning_only\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"25d9ace0_92ced7e9","line":366,"in_reply_to":"96de275b_ec354941","updated":"2021-11-30 13:29:23.000000000","message":"There is no way to use Python\u0027s None in configuration files. We could use an empty string, but it may be confused with \"use the default\", so I\u0027d rather not.","commit_id":"f32b092547b63ea71070c15c56db02c20f5afc3e"}],"releasenotes/notes/allinone-190ae91884d81154.yaml":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"12512c048cca2b5931dc1188286434d1d6934b7c","unresolved":true,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds a new executable ``ironic`` that starts both API and conductor in the"},{"line_number":5,"context_line":"    same process. Calls between the API and conductor instances in the same"},{"line_number":6,"context_line":"    process are not routed through the RPC."}],"source_content_type":"text/x-yaml","patch_set":10,"id":"3ca240d7_f5dc4b34","line":6,"updated":"2021-12-06 17:03:39.000000000","message":"I can\u0027t help but wonder, how many people are going to do something like \"ironic node-show\".... and launch an ironic!","commit_id":"1d9d085ba3d3597be11fc8001a6a3b24895514e2"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"8920eab79684794a547b61fc72aa63f58d89aaa0","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Adds a new executable ``ironic`` that starts both API and conductor in the"},{"line_number":5,"context_line":"    same process. Calls between the API and conductor instances in the same"},{"line_number":6,"context_line":"    process are not routed through the RPC."}],"source_content_type":"text/x-yaml","patch_set":10,"id":"63d0c891_8f077f49","line":6,"in_reply_to":"3ca240d7_f5dc4b34","updated":"2021-12-07 08:30:57.000000000","message":"Yep, but it hasn\u0027t worked for many releases already :)","commit_id":"1d9d085ba3d3597be11fc8001a6a3b24895514e2"}],"setup.cfg":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ceb826ad3a905ca4c6a2a4a047b3766cc9fbcf8d","unresolved":true,"context_lines":[{"line_number":41,"context_line":"    ironic.api \u003d ironic.common.policy:list_policies"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"console_scripts \u003d"},{"line_number":44,"context_line":"    ironic \u003d ironic.cmd.allinone:main"},{"line_number":45,"context_line":"    ironic-api \u003d ironic.cmd.api:main"},{"line_number":46,"context_line":"    ironic-dbsync \u003d ironic.cmd.dbsync:main"},{"line_number":47,"context_line":"    ironic-conductor \u003d ironic.cmd.conductor:main"}],"source_content_type":"text/x-ttcn-cfg","patch_set":2,"id":"bd8fd726_360ab6c9","line":44,"range":{"start_line":44,"start_character":24,"end_line":44,"end_character":37},"updated":"2021-11-29 14:32:53.000000000","message":"Naming, the hardest thing. \"single-process\" ? maybe?  I guess I\u0027m only commenting because allinone bleeds together visually. Silly eyes. 😭","commit_id":"f32b092547b63ea71070c15c56db02c20f5afc3e"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"fc0e062a13ba3a60c97965d3b40646641fb10933","unresolved":false,"context_lines":[{"line_number":41,"context_line":"    ironic.api \u003d ironic.common.policy:list_policies"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"console_scripts \u003d"},{"line_number":44,"context_line":"    ironic \u003d ironic.cmd.allinone:main"},{"line_number":45,"context_line":"    ironic-api \u003d ironic.cmd.api:main"},{"line_number":46,"context_line":"    ironic-dbsync \u003d ironic.cmd.dbsync:main"},{"line_number":47,"context_line":"    ironic-conductor \u003d ironic.cmd.conductor:main"}],"source_content_type":"text/x-ttcn-cfg","patch_set":2,"id":"aea26408_8848ab3a","line":44,"range":{"start_line":44,"start_character":24,"end_line":44,"end_character":37},"in_reply_to":"bd8fd726_360ab6c9","updated":"2021-11-30 13:29:23.000000000","message":"Ack","commit_id":"f32b092547b63ea71070c15c56db02c20f5afc3e"}],"tools/benchmark/generate-statistics.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":"ceb826ad3a905ca4c6a2a4a047b3766cc9fbcf8d","unresolved":true,"context_lines":[{"line_number":183,"context_line":""},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"def main():"},{"line_number":186,"context_line":"    service.prepare_command()"},{"line_number":187,"context_line":"    CONF.set_override(\u0027debug\u0027, False)"},{"line_number":188,"context_line":"    _assess_db_performance()"},{"line_number":189,"context_line":"    _assess_db_and_object_performance()"}],"source_content_type":"text/x-python","patch_set":2,"id":"8d67f320_0928cfcb","line":186,"updated":"2021-11-29 14:32:53.000000000","message":"I still feel like I have no idea what prepare_command is doing. *shrug* :)","commit_id":"f32b092547b63ea71070c15c56db02c20f5afc3e"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"fc0e062a13ba3a60c97965d3b40646641fb10933","unresolved":true,"context_lines":[{"line_number":183,"context_line":""},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"def main():"},{"line_number":186,"context_line":"    service.prepare_command()"},{"line_number":187,"context_line":"    CONF.set_override(\u0027debug\u0027, False)"},{"line_number":188,"context_line":"    _assess_db_performance()"},{"line_number":189,"context_line":"    _assess_db_and_object_performance()"}],"source_content_type":"text/x-python","patch_set":2,"id":"4dcdf7c4_bcd43ccf","line":186,"in_reply_to":"8d67f320_0928cfcb","updated":"2021-11-30 13:29:23.000000000","message":"Well, this file is definitely not a service :)","commit_id":"f32b092547b63ea71070c15c56db02c20f5afc3e"}]}
