)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"7da2e53d6d5847f37747969c37495d15237d7bec","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Choi-Sung-Hoon \u003ctjdgns9246@naver.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2019-12-31 02:09:37 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Modify exception string to have more information"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The original exception string was \"Didn\u0027t spawn expected number"},{"line_number":10,"context_line":"of processes\" and it\u0027s not enough to understand why the test"},{"line_number":11,"context_line":"failed."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"For better description of the exception string this commit creates"},{"line_number":14,"context_line":"a nested function and make a exception string in a tricky way."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: Ie0c27316f0e26b3770724a8bc97e46adf7e32d4c"},{"line_number":17,"context_line":"Closes-Bug: #1857035"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"3fa7e38b_9794d942","line":14,"range":{"start_line":7,"start_character":0,"end_line":14,"end_character":62},"updated":"2020-01-03 09:26:07.000000000","message":"General comment: the commit msg will be the first thing that designers see when they are looking for the history of the codebase, so describe here where the problem is that you try to solve, and why that is a problem at all.\ni.e.:\nImprove functional net_mtu testcases error messages....\n\nor similar","commit_id":"a82316c3aede7053e868f5f7bd0841c73365e31f"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"50ce25f13d1751664bffa094b021da92b6c49855","unresolved":false,"context_lines":[{"line_number":11,"context_line":"failed."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"For better description of the exception string this commit creates"},{"line_number":14,"context_line":"a nested function and make a exception string in a tricky way."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: Ie0c27316f0e26b3770724a8bc97e46adf7e32d4c"},{"line_number":17,"context_line":"Closes-Bug: #1857035"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"3fa7e38b_00940540","line":14,"range":{"start_line":14,"start_character":10,"end_line":14,"end_character":61},"updated":"2020-01-07 11:30:57.000000000","message":"Same comment as Lajos.\n\nI don\u0027t want to be pedantic here but we are SW developers, not magicians. Please, we don\u0027t do tricks, we code, and the code should be self-explanatory.","commit_id":"a82316c3aede7053e868f5f7bd0841c73365e31f"},{"author":{"_account_id":28988,"name":"Choi-Sung-Hoon","email":"tjdgns9246@naver.com","username":"tjdgns9246"},"change_message_id":"c622c8f74c11c8ea140f83fadf6d1fdb5fa422f9","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Choi-Sung-Hoon \u003ctjdgns9246@naver.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2019-12-31 02:09:37 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Modify exception string to have more information"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The original exception string was \"Didn\u0027t spawn expected number"},{"line_number":10,"context_line":"of processes\" and it\u0027s not enough to understand why the test"},{"line_number":11,"context_line":"failed."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"For better description of the exception string this commit creates"},{"line_number":14,"context_line":"a nested function and make a exception string in a tricky way."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: Ie0c27316f0e26b3770724a8bc97e46adf7e32d4c"},{"line_number":17,"context_line":"Closes-Bug: #1857035"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"3fa7e38b_e16c686c","line":14,"range":{"start_line":7,"start_character":0,"end_line":14,"end_character":62},"in_reply_to":"3fa7e38b_9794d942","updated":"2020-01-04 06:39:51.000000000","message":"Thank you for your comment.\n\nI wrote this commit message after reading https://wiki.openstack.org/wiki/GitCommitMessages.\n\nI\u0027ll put what function and exception string was modified.","commit_id":"a82316c3aede7053e868f5f7bd0841c73365e31f"}],"neutron/tests/functional/cmd/test_netns_cleanup.py":[{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"5e355d70b5bb795ebca944cb6af471baa0fc2cf2","unresolved":false,"context_lines":[{"line_number":79,"context_line":"            err_str_list.append(str(procs_launched))"},{"line_number":80,"context_line":"            err_str_list.append(\")\\nProcess information:\\n\")"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"            cmd \u003d [\u0027ps\u0027, \u0027-f\u0027, \u0027-u\u0027, \u0027root\u0027]"},{"line_number":83,"context_line":"            out \u003d utils.execute(cmd, run_as_root\u003dTrue)"},{"line_number":84,"context_line":"            err_str_list.extend(out)"},{"line_number":85,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3fa7e38b_5b59ab8a","line":82,"updated":"2020-01-03 15:11:00.000000000","message":"Instead of doing it every time, can You put common_utils.wait_until_true() from L92 in try...except... block, catch TimeoutException and only than log this additional informations?","commit_id":"a82316c3aede7053e868f5f7bd0841c73365e31f"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"50ce25f13d1751664bffa094b021da92b6c49855","unresolved":false,"context_lines":[{"line_number":79,"context_line":"            err_str_list.append(str(procs_launched))"},{"line_number":80,"context_line":"            err_str_list.append(\")\\nProcess information:\\n\")"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"            cmd \u003d [\u0027ps\u0027, \u0027-f\u0027, \u0027-u\u0027, \u0027root\u0027]"},{"line_number":83,"context_line":"            out \u003d utils.execute(cmd, run_as_root\u003dTrue)"},{"line_number":84,"context_line":"            err_str_list.extend(out)"},{"line_number":85,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3fa7e38b_80af957a","line":82,"in_reply_to":"3fa7e38b_21ca8045","updated":"2020-01-07 11:30:57.000000000","message":"What Slawek is saying is doing something like this:\n\ntry:\n  common_utils.wait_until_true(\n    lambda: self._get_num_spawned_procs() \u003d\u003d procs_launched,\n    timeout\u003d15)\ncatch Timeout:\n  num_spawned_procs \u003d self._get_num_spawned_procs()\n  err_str \u003d (\"Expected number/spawned number: %s/%s\\nProcess \n              information:\\n\" % (num_spawned_procs, procs_launched))\n  cmd \u003d [\u0027ps\u0027, \u0027-f\u0027, \u0027-u\u0027, \u0027root\u0027]\n  err_str +\u003d utils.execute(cmd, run_as_root\u003dTrue)\n  raise Exception(err_str)","commit_id":"a82316c3aede7053e868f5f7bd0841c73365e31f"},{"author":{"_account_id":28988,"name":"Choi-Sung-Hoon","email":"tjdgns9246@naver.com","username":"tjdgns9246"},"change_message_id":"c622c8f74c11c8ea140f83fadf6d1fdb5fa422f9","unresolved":false,"context_lines":[{"line_number":79,"context_line":"            err_str_list.append(str(procs_launched))"},{"line_number":80,"context_line":"            err_str_list.append(\")\\nProcess information:\\n\")"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"            cmd \u003d [\u0027ps\u0027, \u0027-f\u0027, \u0027-u\u0027, \u0027root\u0027]"},{"line_number":83,"context_line":"            out \u003d utils.execute(cmd, run_as_root\u003dTrue)"},{"line_number":84,"context_line":"            err_str_list.extend(out)"},{"line_number":85,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3fa7e38b_21ca8045","line":82,"in_reply_to":"3fa7e38b_5b59ab8a","updated":"2020-01-04 06:39:51.000000000","message":"But how can we handle this like you said when the current running processes are different?\n\ncommon_utils.wait_until_true() runs the given function at every second so I thought that I needed to run the command every time to reflect current state.\n\nWhat do you think about this?","commit_id":"a82316c3aede7053e868f5f7bd0841c73365e31f"},{"author":{"_account_id":28988,"name":"Choi-Sung-Hoon","email":"tjdgns9246@naver.com","username":"tjdgns9246"},"change_message_id":"108f34371037d7c52fe3dc9a8abef3a91611e218","unresolved":false,"context_lines":[{"line_number":79,"context_line":"            err_str_list.append(str(procs_launched))"},{"line_number":80,"context_line":"            err_str_list.append(\")\\nProcess information:\\n\")"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"            cmd \u003d [\u0027ps\u0027, \u0027-f\u0027, \u0027-u\u0027, \u0027root\u0027]"},{"line_number":83,"context_line":"            out \u003d utils.execute(cmd, run_as_root\u003dTrue)"},{"line_number":84,"context_line":"            err_str_list.extend(out)"},{"line_number":85,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3fa7e38b_60903697","line":82,"in_reply_to":"3fa7e38b_5b59ab8a","updated":"2020-01-09 13:56:52.000000000","message":"Done","commit_id":"a82316c3aede7053e868f5f7bd0841c73365e31f"},{"author":{"_account_id":28988,"name":"Choi-Sung-Hoon","email":"tjdgns9246@naver.com","username":"tjdgns9246"},"change_message_id":"108f34371037d7c52fe3dc9a8abef3a91611e218","unresolved":false,"context_lines":[{"line_number":79,"context_line":"            err_str_list.append(str(procs_launched))"},{"line_number":80,"context_line":"            err_str_list.append(\")\\nProcess information:\\n\")"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"            cmd \u003d [\u0027ps\u0027, \u0027-f\u0027, \u0027-u\u0027, \u0027root\u0027]"},{"line_number":83,"context_line":"            out \u003d utils.execute(cmd, run_as_root\u003dTrue)"},{"line_number":84,"context_line":"            err_str_list.extend(out)"},{"line_number":85,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3fa7e38b_008b8268","line":82,"in_reply_to":"3fa7e38b_80af957a","updated":"2020-01-09 13:56:52.000000000","message":"Done","commit_id":"a82316c3aede7053e868f5f7bd0841c73365e31f"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"29968744b8c0ccec1c21fd0c73487f2f3b08e435","unresolved":false,"context_lines":[{"line_number":79,"context_line":"            err_str_list.append(str(procs_launched))"},{"line_number":80,"context_line":"            err_str_list.append(\")\\nProcess information:\\n\")"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"            cmd \u003d [\u0027ps\u0027, \u0027-f\u0027, \u0027-u\u0027, \u0027root\u0027]"},{"line_number":83,"context_line":"            out \u003d utils.execute(cmd, run_as_root\u003dTrue)"},{"line_number":84,"context_line":"            err_str_list.extend(out)"},{"line_number":85,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3fa7e38b_f7fcff3f","line":82,"in_reply_to":"3fa7e38b_80af957a","updated":"2020-01-08 09:09:28.000000000","message":"Exactly. Thx Rodolfo :)","commit_id":"a82316c3aede7053e868f5f7bd0841c73365e31f"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"b4c85c8092c7cf911dc349f3518cc6c18ae55f88","unresolved":false,"context_lines":[{"line_number":30,"context_line":"from neutron.tests.functional import base"},{"line_number":31,"context_line":"from neutron.tests.functional.cmd import process_spawn"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"from eventlet import WaitTimeout"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"GET_NAMESPACES \u003d \u0027neutron.agent.linux.ip_lib.list_network_namespaces\u0027"},{"line_number":36,"context_line":"TEST_INTERFACE_DRIVER \u003d \u0027neutron.agent.linux.interface.OVSInterfaceDriver\u0027"}],"source_content_type":"text/x-python","patch_set":11,"id":"3fa7e38b_cf2b5530","line":33,"range":{"start_line":33,"start_character":0,"end_line":33,"end_character":32},"updated":"2020-01-09 13:51:01.000000000","message":"1) This should be in the external libraries import section. That means, this should be in L18\n\n2) We always import the whole module, not a class or method. Please use:\n  import eventlet\n\nand then:\n  except eventlet.Timeout","commit_id":"7a3c6ae9d0aba72b4f99678204bad6ca160583f1"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"b4c85c8092c7cf911dc349f3518cc6c18ae55f88","unresolved":false,"context_lines":[{"line_number":77,"context_line":"            common_utils.wait_until_true("},{"line_number":78,"context_line":"                lambda: self._get_num_spawned_procs() \u003d\u003d procs_launched,"},{"line_number":79,"context_line":"                timeout\u003d15)"},{"line_number":80,"context_line":"        # eventlet.Timeout is raised in common_utils.wait_until_true()"},{"line_number":81,"context_line":"        except Timeout:"},{"line_number":82,"context_line":"            num_spawned_procs \u003d self._get_num_spawned_procs()"},{"line_number":83,"context_line":"            err_str \u003d \"Expected numbr/spawned number: {0}/{1}\\nProcess\\"}],"source_content_type":"text/x-python","patch_set":11,"id":"3fa7e38b_4f1f6508","line":80,"range":{"start_line":80,"start_character":8,"end_line":80,"end_character":70},"updated":"2020-01-09 13:51:01.000000000","message":"This comment is not needed, it is understood in L81","commit_id":"7a3c6ae9d0aba72b4f99678204bad6ca160583f1"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"b4c85c8092c7cf911dc349f3518cc6c18ae55f88","unresolved":false,"context_lines":[{"line_number":80,"context_line":"        # eventlet.Timeout is raised in common_utils.wait_until_true()"},{"line_number":81,"context_line":"        except Timeout:"},{"line_number":82,"context_line":"            num_spawned_procs \u003d self._get_num_spawned_procs()"},{"line_number":83,"context_line":"            err_str \u003d \"Expected numbr/spawned number: {0}/{1}\\nProcess\\"},{"line_number":84,"context_line":"             information:\\n\".format(num_spawned_procs, procs_launched)"},{"line_number":85,"context_line":"            cmd \u003d [\u0027ps\u0027, \u0027-f\u0027, \u0027-u\u0027, \u0027root\u0027]"},{"line_number":86,"context_line":"            err_str +\u003d utils.execute(cmd, run_as_root\u003dTrue)"},{"line_number":87,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"3fa7e38b_efd3b135","line":84,"range":{"start_line":83,"start_character":11,"end_line":84,"end_character":70},"updated":"2020-01-09 13:51:01.000000000","message":"This is going to fail in pep8 because of the indentation.\n\nPlease, wrap lines using parenthesis:\nerr_str \u003d (\"Expected numbr/spawned number: {0}/{1}\\nProcess \"\n           \"information:\\n\".format(num_spawned_procs,\n                                   procs_launched))","commit_id":"7a3c6ae9d0aba72b4f99678204bad6ca160583f1"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"525f9c61251fc776773b1d9a3a2a8401e4fc5be5","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                timeout\u003d15)"},{"line_number":79,"context_line":"        except eventlet.Timeout:"},{"line_number":80,"context_line":"            num_spawned_procs \u003d self._get_num_spawned_procs()"},{"line_number":81,"context_line":"            err_str \u003d (\"Expected numbr/spawned number: {0}/{1}\\nProcess\""},{"line_number":82,"context_line":"                    \"information:\\n\".format(num_spawned_procs, procs_launched))"},{"line_number":83,"context_line":"            cmd \u003d [\u0027ps\u0027, \u0027-f\u0027, \u0027-u\u0027, \u0027root\u0027]"},{"line_number":84,"context_line":"            err_str +\u003d utils.execute(cmd, run_as_root\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":12,"id":"3fa7e38b_bcdde0de","line":81,"updated":"2020-01-10 16:34:00.000000000","message":"a space character is missing here","commit_id":"5e759fdcff163f6bcb8c9e2aeec684c1f5c37e27"},{"author":{"_account_id":28988,"name":"Choi-Sung-Hoon","email":"tjdgns9246@naver.com","username":"tjdgns9246"},"change_message_id":"5ec2d9151e049d9525ce9ca91393419f89b3b5b0","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                timeout\u003d15)"},{"line_number":79,"context_line":"        except eventlet.Timeout:"},{"line_number":80,"context_line":"            num_spawned_procs \u003d self._get_num_spawned_procs()"},{"line_number":81,"context_line":"            err_str \u003d (\"Expected numbr/spawned number: {0}/{1}\\nProcess\""},{"line_number":82,"context_line":"                    \"information:\\n\".format(num_spawned_procs, procs_launched))"},{"line_number":83,"context_line":"            cmd \u003d [\u0027ps\u0027, \u0027-f\u0027, \u0027-u\u0027, \u0027root\u0027]"},{"line_number":84,"context_line":"            err_str +\u003d utils.execute(cmd, run_as_root\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":12,"id":"3fa7e38b_9ef6d45d","line":81,"in_reply_to":"3fa7e38b_bcdde0de","updated":"2020-01-11 04:55:38.000000000","message":"Done","commit_id":"5e759fdcff163f6bcb8c9e2aeec684c1f5c37e27"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"525f9c61251fc776773b1d9a3a2a8401e4fc5be5","unresolved":false,"context_lines":[{"line_number":79,"context_line":"        except eventlet.Timeout:"},{"line_number":80,"context_line":"            num_spawned_procs \u003d self._get_num_spawned_procs()"},{"line_number":81,"context_line":"            err_str \u003d (\"Expected numbr/spawned number: {0}/{1}\\nProcess\""},{"line_number":82,"context_line":"                    \"information:\\n\".format(num_spawned_procs, procs_launched))"},{"line_number":83,"context_line":"            cmd \u003d [\u0027ps\u0027, \u0027-f\u0027, \u0027-u\u0027, \u0027root\u0027]"},{"line_number":84,"context_line":"            err_str +\u003d utils.execute(cmd, run_as_root\u003dTrue)"},{"line_number":85,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"3fa7e38b_3cca5018","line":82,"updated":"2020-01-10 16:34:00.000000000","message":"Hmmm this is passing pep8... curious","commit_id":"5e759fdcff163f6bcb8c9e2aeec684c1f5c37e27"},{"author":{"_account_id":28988,"name":"Choi-Sung-Hoon","email":"tjdgns9246@naver.com","username":"tjdgns9246"},"change_message_id":"5ec2d9151e049d9525ce9ca91393419f89b3b5b0","unresolved":false,"context_lines":[{"line_number":79,"context_line":"        except eventlet.Timeout:"},{"line_number":80,"context_line":"            num_spawned_procs \u003d self._get_num_spawned_procs()"},{"line_number":81,"context_line":"            err_str \u003d (\"Expected numbr/spawned number: {0}/{1}\\nProcess\""},{"line_number":82,"context_line":"                    \"information:\\n\".format(num_spawned_procs, procs_launched))"},{"line_number":83,"context_line":"            cmd \u003d [\u0027ps\u0027, \u0027-f\u0027, \u0027-u\u0027, \u0027root\u0027]"},{"line_number":84,"context_line":"            err_str +\u003d utils.execute(cmd, run_as_root\u003dTrue)"},{"line_number":85,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"3fa7e38b_5e929cfd","line":82,"in_reply_to":"3fa7e38b_3cca5018","updated":"2020-01-11 04:55:38.000000000","message":"Maybe it\u0027s inside of the parenthesis?","commit_id":"5e759fdcff163f6bcb8c9e2aeec684c1f5c37e27"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"a0a10b784423d81bcedc778e81fcefbd4de7f5de","unresolved":false,"context_lines":[{"line_number":79,"context_line":"        except eventlet.Timeout:"},{"line_number":80,"context_line":"            num_spawned_procs \u003d self._get_num_spawned_procs()"},{"line_number":81,"context_line":"            err_str \u003d (\"Expected numbr/spawned number: {0}/{1}\\nProcess\""},{"line_number":82,"context_line":"                    \"information:\\n\".format(num_spawned_procs, procs_launched))"},{"line_number":83,"context_line":"            cmd \u003d [\u0027ps\u0027, \u0027-f\u0027, \u0027-u\u0027, \u0027root\u0027]"},{"line_number":84,"context_line":"            err_str +\u003d utils.execute(cmd, run_as_root\u003dTrue)"},{"line_number":85,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"3fa7e38b_67602c36","line":82,"in_reply_to":"3fa7e38b_5e929cfd","updated":"2020-01-11 19:14:24.000000000","message":"No, because of the indentation. But if pep8 is passing, OK for me.","commit_id":"5e759fdcff163f6bcb8c9e2aeec684c1f5c37e27"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"1f12b2426d7d0028736753944bb9043706d242a2","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                timeout\u003d15)"},{"line_number":79,"context_line":"        except eventlet.Timeout:"},{"line_number":80,"context_line":"            num_spawned_procs \u003d self._get_num_spawned_procs()"},{"line_number":81,"context_line":"            err_str \u003d (\"Expected number/spawned number: {0}/{1}\\nProcess \""},{"line_number":82,"context_line":"                       \"information:\\n\".format(num_spawned_procs,"},{"line_number":83,"context_line":"                                               procs_launched))"},{"line_number":84,"context_line":"            cmd \u003d [\u0027ps\u0027, \u0027-f\u0027, \u0027-u\u0027, \u0027root\u0027]"},{"line_number":85,"context_line":"            err_str +\u003d utils.execute(cmd, run_as_root\u003dTrue)"},{"line_number":86,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"3fa7e38b_a28d447e","line":83,"range":{"start_line":81,"start_character":0,"end_line":83,"end_character":63},"updated":"2020-01-20 09:31:53.000000000","message":"nitty nit, could be formatted this way:\n\nerr_str \u003d (\"Expected number/spawned number: \" \n           \"%{exp}s/%{lan}s\\nProcess \"\n           \"information:\\n\" % {\u0027exp\u0027: num_spawned_procs,\n                               \u0027lan\u0027: procs_launched})","commit_id":"a0fbb3da9bb53a675705f4a04b760017684ca37b"},{"author":{"_account_id":28988,"name":"Choi-Sung-Hoon","email":"tjdgns9246@naver.com","username":"tjdgns9246"},"change_message_id":"3e3c700da7d5c04d3e77bee123579544b35b1289","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                timeout\u003d15)"},{"line_number":79,"context_line":"        except eventlet.Timeout:"},{"line_number":80,"context_line":"            num_spawned_procs \u003d self._get_num_spawned_procs()"},{"line_number":81,"context_line":"            err_str \u003d (\"Expected number/spawned number: {0}/{1}\\nProcess \""},{"line_number":82,"context_line":"                       \"information:\\n\".format(num_spawned_procs,"},{"line_number":83,"context_line":"                                               procs_launched))"},{"line_number":84,"context_line":"            cmd \u003d [\u0027ps\u0027, \u0027-f\u0027, \u0027-u\u0027, \u0027root\u0027]"},{"line_number":85,"context_line":"            err_str +\u003d utils.execute(cmd, run_as_root\u003dTrue)"},{"line_number":86,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"3fa7e38b_c2ac008a","line":83,"range":{"start_line":81,"start_character":0,"end_line":83,"end_character":63},"in_reply_to":"3fa7e38b_4272504c","updated":"2020-01-20 09:51:23.000000000","message":"You\u0027re welcome :)\nThank you for your advice.","commit_id":"a0fbb3da9bb53a675705f4a04b760017684ca37b"},{"author":{"_account_id":28988,"name":"Choi-Sung-Hoon","email":"tjdgns9246@naver.com","username":"tjdgns9246"},"change_message_id":"63eff9782eabae23a9d4a4b5fe1b3a72974297c3","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                timeout\u003d15)"},{"line_number":79,"context_line":"        except eventlet.Timeout:"},{"line_number":80,"context_line":"            num_spawned_procs \u003d self._get_num_spawned_procs()"},{"line_number":81,"context_line":"            err_str \u003d (\"Expected number/spawned number: {0}/{1}\\nProcess \""},{"line_number":82,"context_line":"                       \"information:\\n\".format(num_spawned_procs,"},{"line_number":83,"context_line":"                                               procs_launched))"},{"line_number":84,"context_line":"            cmd \u003d [\u0027ps\u0027, \u0027-f\u0027, \u0027-u\u0027, \u0027root\u0027]"},{"line_number":85,"context_line":"            err_str +\u003d utils.execute(cmd, run_as_root\u003dTrue)"},{"line_number":86,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"3fa7e38b_e2b33c08","line":83,"range":{"start_line":81,"start_character":0,"end_line":83,"end_character":63},"in_reply_to":"3fa7e38b_a28d447e","updated":"2020-01-20 09:46:56.000000000","message":"Should I specify the name of the parameters?\nI thought that the meaning of the variables num_spawned_procs and procs_launched are already explained in the string.\nThis seems unnecessary.","commit_id":"a0fbb3da9bb53a675705f4a04b760017684ca37b"},{"author":{"_account_id":24791,"name":"Maciej Jozefczyk","email":"jeicam.pl@gmail.com","username":"maciej.jozefczyk"},"change_message_id":"f9ce831ee651b2fdc9628486b29541bdbff4ef39","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                timeout\u003d15)"},{"line_number":79,"context_line":"        except eventlet.Timeout:"},{"line_number":80,"context_line":"            num_spawned_procs \u003d self._get_num_spawned_procs()"},{"line_number":81,"context_line":"            err_str \u003d (\"Expected number/spawned number: {0}/{1}\\nProcess \""},{"line_number":82,"context_line":"                       \"information:\\n\".format(num_spawned_procs,"},{"line_number":83,"context_line":"                                               procs_launched))"},{"line_number":84,"context_line":"            cmd \u003d [\u0027ps\u0027, \u0027-f\u0027, \u0027-u\u0027, \u0027root\u0027]"},{"line_number":85,"context_line":"            err_str +\u003d utils.execute(cmd, run_as_root\u003dTrue)"},{"line_number":86,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"3fa7e38b_4272504c","line":83,"range":{"start_line":81,"start_character":0,"end_line":83,"end_character":63},"in_reply_to":"3fa7e38b_e2b33c08","updated":"2020-01-20 09:49:46.000000000","message":"No, there is no need to update it :) Thanks for the patch.","commit_id":"a0fbb3da9bb53a675705f4a04b760017684ca37b"}]}
