)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"9ed8ca10f3f989fd37d21e18c565e0b6e80b82db","unresolved":true,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"https://review.opendev.org/#/c/773575"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Run any command with --profile SECRET_KEY"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"  $ openstack zone create --email \u003cemail_id\u003e \u003czone_name\u003e \\"},{"line_number":25,"context_line":"    --os-profile SECRET_KEY"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"fa9d3e06_6a4dd879","line":22,"range":{"start_line":22,"start_character":21,"end_line":22,"end_character":30},"updated":"2021-11-22 23:25:49.000000000","message":"nit: --os-profile","commit_id":"e13798b314504d23c00c79c5e6e0a09bb703ffe3"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"28fc40e49cf1b26ad4c5f8433a0972665872a13f","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"https://review.opendev.org/#/c/773575"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Run any command with --profile SECRET_KEY"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"  $ openstack zone create --email \u003cemail_id\u003e \u003czone_name\u003e \\"},{"line_number":25,"context_line":"    --os-profile SECRET_KEY"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"194fc760_afbcba71","line":22,"range":{"start_line":22,"start_character":21,"end_line":22,"end_character":30},"in_reply_to":"fa9d3e06_6a4dd879","updated":"2021-11-23 06:32:07.000000000","message":"Done","commit_id":"e13798b314504d23c00c79c5e6e0a09bb703ffe3"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":34181,"name":"Manish Honap","email":"mmhonap@gmail.com","username":"mhonap"},"change_message_id":"057fa33c900bdb4744568d41dd8cf9115bbea65e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"b9739620_7a3a8e24","updated":"2021-11-23 14:02:09.000000000","message":"Tested in my environment and the patch seems to be working as expected.","commit_id":"045983f026f18664e75dfe0dd408a3cf6643ba2d"},{"author":{"_account_id":22623,"name":"Erik Olof Gunnar Andersson","email":"eandersson@blizzard.com","username":"eoandersson"},"change_message_id":"7defa304d67fd53213cf7a59353eadcb63dc28cf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"bcdb76ef_0a5f1408","updated":"2021-12-18 23:05:09.000000000","message":"LGTM","commit_id":"af8f1b9e30e5cfdc27ed767604b6baa22f675800"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"7c3a8ce00e4ba7e58021ce1cb0086a5d073e935e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"d511a870_7f2094e9","updated":"2021-12-24 17:52:12.000000000","message":"Eric,\nCan you merge the change ?","commit_id":"e3d90eefe1d8be3bb94e9998cf5af77ce8f4a74b"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"c60363013084a85a83179fbad5a34da2723da232","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"8d4cd979_64f349d4","updated":"2021-12-28 07:03:30.000000000","message":"Sorry for coming in late with a couple of questions and comments.\n\nI also think that this at least needs a release note describing the change and possibly an addition to the docs with the content from the commit message, though the latter might be fine in a followup.","commit_id":"e3d90eefe1d8be3bb94e9998cf5af77ce8f4a74b"},{"author":{"_account_id":22623,"name":"Erik Olof Gunnar Andersson","email":"eandersson@blizzard.com","username":"eoandersson"},"change_message_id":"97ae5c47ce9586314f7ece64a5449de6e3b3cec7","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":13,"id":"681c5d07_973deccb","in_reply_to":"d511a870_7f2094e9","updated":"2021-12-24 18:15:52.000000000","message":"Hey Kiran! I\u0027ll let frickler or johnsom review it and workflow it first. I added then as reviewers.","commit_id":"e3d90eefe1d8be3bb94e9998cf5af77ce8f4a74b"},{"author":{"_account_id":34181,"name":"Manish Honap","email":"mmhonap@gmail.com","username":"mhonap"},"change_message_id":"98ab3ed2b94ece5ad607e1126ff9403c3fab0e3e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"0abd99f8_bd12526e","updated":"2021-12-28 12:12:13.000000000","message":"Hello frickler\nI have resolved the comments mentioned on patch 13. I will look into performance impact you have mentioned on patch 13.","commit_id":"255910d69bfde88634ffeb8b3b6b8065f2629478"},{"author":{"_account_id":34181,"name":"Manish Honap","email":"mmhonap@gmail.com","username":"mhonap"},"change_message_id":"eb77d2579667aa68311e799c5dd7824af220c663","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"6d8d30d2_1bbbf129","updated":"2021-12-28 16:40:58.000000000","message":"Please have a look at patch set #15.","commit_id":"255910d69bfde88634ffeb8b3b6b8065f2629478"},{"author":{"_account_id":34181,"name":"Manish Honap","email":"mmhonap@gmail.com","username":"mhonap"},"change_message_id":"2b1119715f55b54833d7c887a6391345916d2995","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"ea820e78_f59b7607","updated":"2021-12-29 17:12:52.000000000","message":"Updated as per comment.","commit_id":"85bfb0927bf0347d5664dd506b526287e0980071"},{"author":{"_account_id":22623,"name":"Erik Olof Gunnar Andersson","email":"eandersson@blizzard.com","username":"eoandersson"},"change_message_id":"f6fc206bbb62a8ebf607a8ff689c6e227b8f7d2e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"bd5c2978_c919713b","updated":"2021-12-29 23:53:34.000000000","message":"ovnnb_db.sock not found","commit_id":"85bfb0927bf0347d5664dd506b526287e0980071"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"cd8e4e22a9e535a6bad88fc6d61906374dd876c4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"4763ff0a_724bab41","updated":"2021-12-29 18:16:27.000000000","message":"recheck","commit_id":"85bfb0927bf0347d5664dd506b526287e0980071"},{"author":{"_account_id":22623,"name":"Erik Olof Gunnar Andersson","email":"eandersson@blizzard.com","username":"eoandersson"},"change_message_id":"f471f2ad5da0693d9b7538953b85e4aa4ea9a46a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"afd712f1_a035935b","updated":"2021-12-29 21:00:33.000000000","message":"recheck","commit_id":"85bfb0927bf0347d5664dd506b526287e0980071"},{"author":{"_account_id":22623,"name":"Erik Olof Gunnar Andersson","email":"eandersson@blizzard.com","username":"eoandersson"},"change_message_id":"5878e9edab1ca3ffeae560bf358c903714c703fc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":16,"id":"5450d918_3262aa2a","updated":"2021-12-29 23:53:40.000000000","message":"recheck ovnnb_db.sock not found","commit_id":"85bfb0927bf0347d5664dd506b526287e0980071"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"42eb8fc98fea7c7c8d577f2ce3f5c0823a020a74","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":17,"id":"9d66ee47_063b8c6a","updated":"2022-01-03 14:44:40.000000000","message":"Thanks Eric for review. Jens, if you ok with reviewed PR, please merge","commit_id":"8fe37207b30b04ece082f67c4de2ed47c1647484"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"511fec1544e2ed149ca1d28095459075863f13c1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":18,"id":"e6974bfc_23a21aa5","updated":"2022-02-07 07:05:41.000000000","message":"I don\u0027t have time to properly review and test this currently, will leave for other reviewers.","commit_id":"640cf9fe89b7134f8bdd2c15422942bc3a8815d7"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"e58aaef94fc805ba515e41f688af9a472cb4cfc0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":19,"id":"412cd766_9b0bbfe8","updated":"2022-02-12 04:55:41.000000000","message":"Erik,\nCan you please merge the change ?","commit_id":"9541a29761db75c4b7b24c216a311214696a0582"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"a2bafb86b519d679bd30959937e48e4945784643","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":19,"id":"2aebe6ee_6387b1ef","updated":"2022-02-14 19:34:03.000000000","message":"LGTM","commit_id":"9541a29761db75c4b7b24c216a311214696a0582"},{"author":{"_account_id":22623,"name":"Erik Olof Gunnar Andersson","email":"eandersson@blizzard.com","username":"eoandersson"},"change_message_id":"ed06fd23815909f5a90f9080e9349b0a387b73f6","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":19,"id":"edc596c3_e9cf6bb3","in_reply_to":"412cd766_9b0bbfe8","updated":"2022-02-12 05:51:24.000000000","message":"I was hoping that one of the other core reviewers would have a chance to review it. If Michael does not review it by Friday next week. I can probably merge it as its a relatively low risk change.","commit_id":"9541a29761db75c4b7b24c216a311214696a0582"}],"designate/common/profiler.py":[{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"c60363013084a85a83179fbad5a34da2723da232","unresolved":true,"context_lines":[{"line_number":11,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":12,"context_line":"#    under the License."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"from designate.context import DesignateContext"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"from oslo_log import log as logging"},{"line_number":17,"context_line":"from oslo_utils import importutils"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"import designate.conf"},{"line_number":20,"context_line":"import webob.dec"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"profiler \u003d importutils.try_import(\"osprofiler.profiler\")"},{"line_number":23,"context_line":"profiler_initializer \u003d importutils.try_import(\"osprofiler.initializer\")"}],"source_content_type":"text/x-python","patch_set":13,"id":"806dbf32_9619cb63","line":20,"range":{"start_line":14,"start_character":0,"end_line":20,"end_character":16},"updated":"2021-12-28 07:03:30.000000000","message":"Shouldn\u0027t the designate.* imports be grouped together in their own block after the external imports?","commit_id":"e3d90eefe1d8be3bb94e9998cf5af77ce8f4a74b"},{"author":{"_account_id":34181,"name":"Manish Honap","email":"mmhonap@gmail.com","username":"mhonap"},"change_message_id":"98ab3ed2b94ece5ad607e1126ff9403c3fab0e3e","unresolved":false,"context_lines":[{"line_number":11,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":12,"context_line":"#    under the License."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"from designate.context import DesignateContext"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"from oslo_log import log as logging"},{"line_number":17,"context_line":"from oslo_utils import importutils"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"import designate.conf"},{"line_number":20,"context_line":"import webob.dec"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"profiler \u003d importutils.try_import(\"osprofiler.profiler\")"},{"line_number":23,"context_line":"profiler_initializer \u003d importutils.try_import(\"osprofiler.initializer\")"}],"source_content_type":"text/x-python","patch_set":13,"id":"2583ee48_5bba1704","line":20,"range":{"start_line":14,"start_character":0,"end_line":20,"end_character":16},"in_reply_to":"806dbf32_9619cb63","updated":"2021-12-28 12:12:13.000000000","message":"Ack","commit_id":"e3d90eefe1d8be3bb94e9998cf5af77ce8f4a74b"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"c60363013084a85a83179fbad5a34da2723da232","unresolved":true,"context_lines":[{"line_number":53,"context_line":""},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"def setup_profiler(binary, host):"},{"line_number":56,"context_line":"    if (profiler_initializer is None or profiler is None or"},{"line_number":57,"context_line":"            profiler_opts is None):"},{"line_number":58,"context_line":"        LOG.debug(\u0027osprofiler is not present\u0027)"},{"line_number":59,"context_line":"        return"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    if CONF.profiler.enabled:"},{"line_number":62,"context_line":"        profiler_initializer.init_from_conf("}],"source_content_type":"text/x-python","patch_set":13,"id":"d9b38fe5_5663b70a","line":59,"range":{"start_line":56,"start_character":4,"end_line":59,"end_character":14},"updated":"2021-12-28 07:03:30.000000000","message":"If config doesn\u0027t enable it, we don\u0027t need to create a log message.\n\nMaybe revert the flow completely, start with:\n\nif not CONF.profiler.enabled:\n    return\n\nand then this and then the block below can be unconditional.","commit_id":"e3d90eefe1d8be3bb94e9998cf5af77ce8f4a74b"},{"author":{"_account_id":34181,"name":"Manish Honap","email":"mmhonap@gmail.com","username":"mhonap"},"change_message_id":"98ab3ed2b94ece5ad607e1126ff9403c3fab0e3e","unresolved":false,"context_lines":[{"line_number":53,"context_line":""},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"def setup_profiler(binary, host):"},{"line_number":56,"context_line":"    if (profiler_initializer is None or profiler is None or"},{"line_number":57,"context_line":"            profiler_opts is None):"},{"line_number":58,"context_line":"        LOG.debug(\u0027osprofiler is not present\u0027)"},{"line_number":59,"context_line":"        return"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    if CONF.profiler.enabled:"},{"line_number":62,"context_line":"        profiler_initializer.init_from_conf("}],"source_content_type":"text/x-python","patch_set":13,"id":"3a1b00fe_e6c298cb","line":59,"range":{"start_line":56,"start_character":4,"end_line":59,"end_character":14},"in_reply_to":"d9b38fe5_5663b70a","updated":"2021-12-28 12:12:13.000000000","message":"Ack","commit_id":"e3d90eefe1d8be3bb94e9998cf5af77ce8f4a74b"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"c60363013084a85a83179fbad5a34da2723da232","unresolved":true,"context_lines":[{"line_number":65,"context_line":"            project\u003d\"designate\","},{"line_number":66,"context_line":"            service\u003dbinary,"},{"line_number":67,"context_line":"            host\u003dhost)"},{"line_number":68,"context_line":"        LOG.warning(\"osprofiler is enabled\")"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"def trace_cls(name, **kwargs):"}],"source_content_type":"text/x-python","patch_set":13,"id":"1fe61a71_a7c12699","line":68,"updated":"2021-12-28 07:03:30.000000000","message":"I don\u0027t think this should be a warning, info would be better.","commit_id":"e3d90eefe1d8be3bb94e9998cf5af77ce8f4a74b"},{"author":{"_account_id":34181,"name":"Manish Honap","email":"mmhonap@gmail.com","username":"mhonap"},"change_message_id":"98ab3ed2b94ece5ad607e1126ff9403c3fab0e3e","unresolved":false,"context_lines":[{"line_number":65,"context_line":"            project\u003d\"designate\","},{"line_number":66,"context_line":"            service\u003dbinary,"},{"line_number":67,"context_line":"            host\u003dhost)"},{"line_number":68,"context_line":"        LOG.warning(\"osprofiler is enabled\")"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"def trace_cls(name, **kwargs):"}],"source_content_type":"text/x-python","patch_set":13,"id":"5b090a7e_1771f7c9","line":68,"in_reply_to":"1fe61a71_a7c12699","updated":"2021-12-28 12:12:13.000000000","message":"Ack","commit_id":"e3d90eefe1d8be3bb94e9998cf5af77ce8f4a74b"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"c60363013084a85a83179fbad5a34da2723da232","unresolved":true,"context_lines":[{"line_number":79,"context_line":"    \"\"\""},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"    def decorator(cls):"},{"line_number":82,"context_line":"        if profiler and \u0027profiler\u0027 in CONF:"},{"line_number":83,"context_line":"            trace_decorator \u003d profiler.trace_cls(name, kwargs)"},{"line_number":84,"context_line":"            return trace_decorator(cls)"},{"line_number":85,"context_line":"        return cls"}],"source_content_type":"text/x-python","patch_set":13,"id":"260fe224_7b454c6f","line":82,"updated":"2021-12-28 07:03:30.000000000","message":"Shouldn\u0027t this also check CONF.profiler.enabled?","commit_id":"e3d90eefe1d8be3bb94e9998cf5af77ce8f4a74b"},{"author":{"_account_id":34181,"name":"Manish Honap","email":"mmhonap@gmail.com","username":"mhonap"},"change_message_id":"98ab3ed2b94ece5ad607e1126ff9403c3fab0e3e","unresolved":false,"context_lines":[{"line_number":79,"context_line":"    \"\"\""},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"    def decorator(cls):"},{"line_number":82,"context_line":"        if profiler and \u0027profiler\u0027 in CONF:"},{"line_number":83,"context_line":"            trace_decorator \u003d profiler.trace_cls(name, kwargs)"},{"line_number":84,"context_line":"            return trace_decorator(cls)"},{"line_number":85,"context_line":"        return cls"}],"source_content_type":"text/x-python","patch_set":13,"id":"d91974a3_1618e4eb","line":82,"in_reply_to":"260fe224_7b454c6f","updated":"2021-12-28 12:12:13.000000000","message":"Ack","commit_id":"e3d90eefe1d8be3bb94e9998cf5af77ce8f4a74b"}],"designate/mdns/rpcapi.py":[{"author":{"_account_id":22623,"name":"Erik Olof Gunnar Andersson","email":"eandersson@blizzard.com","username":"eoandersson"},"change_message_id":"58e552bb1c289b24bf2307268f5a19de397f999b","unresolved":true,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"CONF \u003d cfg.CONF"},{"line_number":24,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":25,"context_line":"profiler \u003d importutils.try_import(\u0027osprofiler.profiler\u0027)"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"MDNS_API \u003d None"},{"line_number":28,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"0aedcfb7_774efd0a","line":25,"updated":"2021-11-22 22:41:01.000000000","message":"Is there a reason why we are doing try_import here when it would fail anyway at line 35 (since we aren\u0027t checking for a None value there)?","commit_id":"e13798b314504d23c00c79c5e6e0a09bb703ffe3"},{"author":{"_account_id":22623,"name":"Erik Olof Gunnar Andersson","email":"eandersson@blizzard.com","username":"eoandersson"},"change_message_id":"a0c0cb0324ca4af927551768af4088f136425662","unresolved":true,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"CONF \u003d cfg.CONF"},{"line_number":24,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":25,"context_line":"profiler \u003d importutils.try_import(\u0027osprofiler.profiler\u0027)"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"MDNS_API \u003d None"},{"line_number":28,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"cf31dc3d_72eb60f7","line":25,"in_reply_to":"0aedcfb7_774efd0a","updated":"2021-11-22 22:43:27.000000000","message":"We probably want / need to do something like this\nhttps://opendev.org/openstack/magnum/src/branch/master/magnum/common/profiler.py#L69","commit_id":"e13798b314504d23c00c79c5e6e0a09bb703ffe3"},{"author":{"_account_id":22623,"name":"Erik Olof Gunnar Andersson","email":"eandersson@blizzard.com","username":"eoandersson"},"change_message_id":"7defa304d67fd53213cf7a59353eadcb63dc28cf","unresolved":false,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"CONF \u003d cfg.CONF"},{"line_number":24,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":25,"context_line":"profiler \u003d importutils.try_import(\u0027osprofiler.profiler\u0027)"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"MDNS_API \u003d None"},{"line_number":28,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"8d8a9f14_a5f303e4","line":25,"in_reply_to":"3e1b341d_b4da7e04","updated":"2021-12-18 23:05:09.000000000","message":"Thanks!","commit_id":"e13798b314504d23c00c79c5e6e0a09bb703ffe3"},{"author":{"_account_id":34181,"name":"Manish Honap","email":"mmhonap@gmail.com","username":"mhonap"},"change_message_id":"006f907412eab0ef0aa5ded2d5aff3f10352f373","unresolved":false,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"CONF \u003d cfg.CONF"},{"line_number":24,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":25,"context_line":"profiler \u003d importutils.try_import(\u0027osprofiler.profiler\u0027)"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"MDNS_API \u003d None"},{"line_number":28,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"3e1b341d_b4da7e04","line":25,"in_reply_to":"8c93656c_f0ceb67b","updated":"2021-12-18 16:52:23.000000000","message":"Erik, can you please check the new patchset? The suggestion you made earlier has been incorporated in new patchset.","commit_id":"e13798b314504d23c00c79c5e6e0a09bb703ffe3"},{"author":{"_account_id":22623,"name":"Erik Olof Gunnar Andersson","email":"eandersson@blizzard.com","username":"eoandersson"},"change_message_id":"5bfcdd15383ef8bf74c0b3c20bd0c5d2a84a7d59","unresolved":true,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"CONF \u003d cfg.CONF"},{"line_number":24,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":25,"context_line":"profiler \u003d importutils.try_import(\u0027osprofiler.profiler\u0027)"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"MDNS_API \u003d None"},{"line_number":28,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"8c93656c_f0ceb67b","line":25,"in_reply_to":"b5fbeb42_bc10740d","updated":"2021-12-13 06:02:54.000000000","message":"This isn\u0027t true. This is what we get with your patch if osprofiler isn\u0027t installed. This is fine since osprofiler is in requirements, but makes no sense to use importutils here if we can\u0027t handle osprofiler not being installed.\n\u003e AttributeError: \u0027NoneType\u0027 object has no attribute \u0027trace_cls\u0027","commit_id":"e13798b314504d23c00c79c5e6e0a09bb703ffe3"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"28fc40e49cf1b26ad4c5f8433a0972665872a13f","unresolved":true,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"CONF \u003d cfg.CONF"},{"line_number":24,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":25,"context_line":"profiler \u003d importutils.try_import(\u0027osprofiler.profiler\u0027)"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"MDNS_API \u003d None"},{"line_number":28,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"b5fbeb42_bc10740d","line":25,"in_reply_to":"cf31dc3d_72eb60f7","updated":"2021-11-23 06:32:07.000000000","message":"Its already implemented in profiler https://opendev.org/openstack/osprofiler/src/branch/master/osprofiler/profiler.py#L181\n\nThe code you referred also using profiler the same way. The profiler can not be None, it can be disabled in conf file though.","commit_id":"e13798b314504d23c00c79c5e6e0a09bb703ffe3"}],"designate/rpc.py":[{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"c60363013084a85a83179fbad5a34da2723da232","unresolved":true,"context_lines":[{"line_number":155,"context_line":""},{"line_number":156,"context_line":"    def serialize_context(self, context):"},{"line_number":157,"context_line":"        _context \u003d context.to_dict()"},{"line_number":158,"context_line":"        if profiler is not None:"},{"line_number":159,"context_line":"            prof \u003d profiler.get()"},{"line_number":160,"context_line":"            if prof:"},{"line_number":161,"context_line":"                trace_info \u003d {"}],"source_content_type":"text/x-python","patch_set":13,"id":"c1f208c6_47ebd89a","line":158,"updated":"2021-12-28 07:03:30.000000000","message":"In other locations, you just check \"if profiler:\", I\u0027m not sure which variant is more pythonically correct, but it should be consistent.","commit_id":"e3d90eefe1d8be3bb94e9998cf5af77ce8f4a74b"},{"author":{"_account_id":34181,"name":"Manish Honap","email":"mmhonap@gmail.com","username":"mhonap"},"change_message_id":"98ab3ed2b94ece5ad607e1126ff9403c3fab0e3e","unresolved":false,"context_lines":[{"line_number":155,"context_line":""},{"line_number":156,"context_line":"    def serialize_context(self, context):"},{"line_number":157,"context_line":"        _context \u003d context.to_dict()"},{"line_number":158,"context_line":"        if profiler is not None:"},{"line_number":159,"context_line":"            prof \u003d profiler.get()"},{"line_number":160,"context_line":"            if prof:"},{"line_number":161,"context_line":"                trace_info \u003d {"}],"source_content_type":"text/x-python","patch_set":13,"id":"872b5a25_c1ff9b15","line":158,"in_reply_to":"c1f208c6_47ebd89a","updated":"2021-12-28 12:12:13.000000000","message":"Ack","commit_id":"e3d90eefe1d8be3bb94e9998cf5af77ce8f4a74b"}],"designate/service.py":[{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"c60363013084a85a83179fbad5a34da2723da232","unresolved":true,"context_lines":[{"line_number":55,"context_line":"        if not rpc.initialized():"},{"line_number":56,"context_line":"            rpc.init(CONF)"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"        profiler.setup_profiler((\"\".join((\"designate-\", self.name))),"},{"line_number":59,"context_line":"                                self.host)"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    def start(self):"}],"source_content_type":"text/x-python","patch_set":13,"id":"4ffd2c2c_90c276fd","line":58,"updated":"2021-12-28 07:03:30.000000000","message":"Use single quotes for strings?","commit_id":"e3d90eefe1d8be3bb94e9998cf5af77ce8f4a74b"},{"author":{"_account_id":34181,"name":"Manish Honap","email":"mmhonap@gmail.com","username":"mhonap"},"change_message_id":"98ab3ed2b94ece5ad607e1126ff9403c3fab0e3e","unresolved":false,"context_lines":[{"line_number":55,"context_line":"        if not rpc.initialized():"},{"line_number":56,"context_line":"            rpc.init(CONF)"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"        profiler.setup_profiler((\"\".join((\"designate-\", self.name))),"},{"line_number":59,"context_line":"                                self.host)"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    def start(self):"}],"source_content_type":"text/x-python","patch_set":13,"id":"cebe6750_8f1e4540","line":58,"in_reply_to":"4ffd2c2c_90c276fd","updated":"2021-12-28 12:12:13.000000000","message":"Ack","commit_id":"e3d90eefe1d8be3bb94e9998cf5af77ce8f4a74b"}],"designate/sqlalchemy/session.py":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"9ed8ca10f3f989fd37d21e18c565e0b6e80b82db","unresolved":true,"context_lines":[{"line_number":21,"context_line":"from oslo_log import log as logging"},{"line_number":22,"context_line":"from oslo_utils import importutils"},{"line_number":23,"context_line":"import sqlalchemy"},{"line_number":24,"context_line":"import threading"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"osprofiler_sqlalchemy \u003d importutils.try_import(\u0027osprofiler.sqlalchemy\u0027)"},{"line_number":27,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"3320d2a6_21b63743","line":24,"updated":"2021-11-22 23:25:49.000000000","message":"nit: this is a core python module, it should go in a section above this one.","commit_id":"e13798b314504d23c00c79c5e6e0a09bb703ffe3"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"28fc40e49cf1b26ad4c5f8433a0972665872a13f","unresolved":false,"context_lines":[{"line_number":21,"context_line":"from oslo_log import log as logging"},{"line_number":22,"context_line":"from oslo_utils import importutils"},{"line_number":23,"context_line":"import sqlalchemy"},{"line_number":24,"context_line":"import threading"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"osprofiler_sqlalchemy \u003d importutils.try_import(\u0027osprofiler.sqlalchemy\u0027)"},{"line_number":27,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"0529488c_7efd0bf6","line":24,"in_reply_to":"3320d2a6_21b63743","updated":"2021-11-23 06:32:07.000000000","message":"Done","commit_id":"e13798b314504d23c00c79c5e6e0a09bb703ffe3"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"c60363013084a85a83179fbad5a34da2723da232","unresolved":true,"context_lines":[{"line_number":44,"context_line":"    connection \u003d connection or cfg.CONF[cfg_group].connection"},{"line_number":45,"context_line":"    cache_name \u003d \"%s:%s\" % (cfg_group, discriminator)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    with _LOCK:"},{"line_number":48,"context_line":"        if cache_name not in _FACADES:"},{"line_number":49,"context_line":"            conf \u003d dict(cfg.CONF[cfg_group].items())"},{"line_number":50,"context_line":"            _FACADES[cache_name] \u003d session.EngineFacade("}],"source_content_type":"text/x-python","patch_set":13,"id":"5510000b_0e28d47a","line":47,"updated":"2021-12-28 07:03:30.000000000","message":"I\u0027m a bit worried about the performance impact that this may have in case we are not using profiling, would it make sense to do the locking only when tracing is enabled?\n\nAlso, is it really enough to do local locking or would some coordinated locking between multiple hosts be needed?","commit_id":"e3d90eefe1d8be3bb94e9998cf5af77ce8f4a74b"},{"author":{"_account_id":34181,"name":"Manish Honap","email":"mmhonap@gmail.com","username":"mhonap"},"change_message_id":"eb77d2579667aa68311e799c5dd7824af220c663","unresolved":false,"context_lines":[{"line_number":44,"context_line":"    connection \u003d connection or cfg.CONF[cfg_group].connection"},{"line_number":45,"context_line":"    cache_name \u003d \"%s:%s\" % (cfg_group, discriminator)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    with _LOCK:"},{"line_number":48,"context_line":"        if cache_name not in _FACADES:"},{"line_number":49,"context_line":"            conf \u003d dict(cfg.CONF[cfg_group].items())"},{"line_number":50,"context_line":"            _FACADES[cache_name] \u003d session.EngineFacade("}],"source_content_type":"text/x-python","patch_set":13,"id":"0538d37e_54e16f12","line":47,"in_reply_to":"5510000b_0e28d47a","updated":"2021-12-28 16:40:58.000000000","message":"I have moved the LOCK to just around profiling code part in patch set #15.","commit_id":"e3d90eefe1d8be3bb94e9998cf5af77ce8f4a74b"},{"author":{"_account_id":22623,"name":"Erik Olof Gunnar Andersson","email":"eandersson@blizzard.com","username":"eoandersson"},"change_message_id":"197c2d5b4ff952cb819f4d6267786edaae53c418","unresolved":true,"context_lines":[{"line_number":50,"context_line":"            connection,"},{"line_number":51,"context_line":"            **conf"},{"line_number":52,"context_line":"        )"},{"line_number":53,"context_line":"        with _LOCK:"},{"line_number":54,"context_line":"            if osprofiler_sqlalchemy:"},{"line_number":55,"context_line":"                if CONF.profiler.enabled and CONF.profiler.trace_sqlalchemy:"},{"line_number":56,"context_line":"                    osprofiler_sqlalchemy.add_tracing("}],"source_content_type":"text/x-python","patch_set":15,"id":"087fa1cb_0bf5ec66","line":53,"updated":"2021-12-29 03:04:35.000000000","message":"Nit: Probably worth flipping this so that we never hit the lock unless we enable profiling.\n\u003e if osprofiler_sqlalchemy:\n\u003e     if CONF.profiler.enabled and CONF.profiler.trace_sqlalchemy:\n\u003e         with _LOCK:\n\u003e             osprofiler_sqlalchemy.add_tracing(","commit_id":"39a17e0a46f278edd4986e7c1569e212aa9aca31"},{"author":{"_account_id":34181,"name":"Manish Honap","email":"mmhonap@gmail.com","username":"mhonap"},"change_message_id":"2b1119715f55b54833d7c887a6391345916d2995","unresolved":false,"context_lines":[{"line_number":50,"context_line":"            connection,"},{"line_number":51,"context_line":"            **conf"},{"line_number":52,"context_line":"        )"},{"line_number":53,"context_line":"        with _LOCK:"},{"line_number":54,"context_line":"            if osprofiler_sqlalchemy:"},{"line_number":55,"context_line":"                if CONF.profiler.enabled and CONF.profiler.trace_sqlalchemy:"},{"line_number":56,"context_line":"                    osprofiler_sqlalchemy.add_tracing("}],"source_content_type":"text/x-python","patch_set":15,"id":"be8cf4ef_3dde54c2","line":53,"in_reply_to":"087fa1cb_0bf5ec66","updated":"2021-12-29 17:12:52.000000000","message":"Done","commit_id":"39a17e0a46f278edd4986e7c1569e212aa9aca31"},{"author":{"_account_id":22623,"name":"Erik Olof Gunnar Andersson","email":"eandersson@blizzard.com","username":"eoandersson"},"change_message_id":"26e8674f98ba593e01cbe2445be09a5793ec9ac2","unresolved":true,"context_lines":[{"line_number":50,"context_line":"            connection,"},{"line_number":51,"context_line":"            **conf"},{"line_number":52,"context_line":"        )"},{"line_number":53,"context_line":"        if (hasattr(CONF, \u0027profiler\u0027) and CONF.profiler.enabled and"},{"line_number":54,"context_line":"                CONF.profiler.trace_sqlalchemy):"},{"line_number":55,"context_line":"            if osprofiler_sqlalchemy:"},{"line_number":56,"context_line":"                with _LOCK:"}],"source_content_type":"text/x-python","patch_set":16,"id":"15ad0d41_dbeb8a5b","line":53,"updated":"2021-12-29 19:13:03.000000000","message":"This looks good to me, but personally I would probably move this into its own function to make it easier to read.\n\ndef add_db_tracing(cache_name):\n    global _LOCK\n    \n    if not osprofiler_sqlalchemy:\n        return\n    if not hasattr(CONF, \u0027profiler\u0027):\n        return\n    if not CONF.profiler.enabled or not CONF.profiler.trace_sqlalchemy:\n        return\n\n    with _LOCK:\n        osprofiler_sqlalchemy.add_tracing(\n            sqlalchemy,\n            _FACADES[cache_name].get_engine(),\n            \"db\"\n        )","commit_id":"85bfb0927bf0347d5664dd506b526287e0980071"},{"author":{"_account_id":34181,"name":"Manish Honap","email":"mmhonap@gmail.com","username":"mhonap"},"change_message_id":"5ab933b85788c9407c5aef375868865fb0632cd9","unresolved":false,"context_lines":[{"line_number":50,"context_line":"            connection,"},{"line_number":51,"context_line":"            **conf"},{"line_number":52,"context_line":"        )"},{"line_number":53,"context_line":"        if (hasattr(CONF, \u0027profiler\u0027) and CONF.profiler.enabled and"},{"line_number":54,"context_line":"                CONF.profiler.trace_sqlalchemy):"},{"line_number":55,"context_line":"            if osprofiler_sqlalchemy:"},{"line_number":56,"context_line":"                with _LOCK:"}],"source_content_type":"text/x-python","patch_set":16,"id":"81436f5b_3de07020","line":53,"in_reply_to":"15ad0d41_dbeb8a5b","updated":"2021-12-30 12:10:57.000000000","message":"Ack","commit_id":"85bfb0927bf0347d5664dd506b526287e0980071"}]}
