)]}'
{"mistral/config.py":[{"author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"change_message_id":"14043503586e705b0d3a967bcc2931ca1f4f17ce","unresolved":false,"context_lines":[{"line_number":229,"context_line":"        )"},{"line_number":230,"context_line":"    ),"},{"line_number":231,"context_line":"    cfg.IntOpt("},{"line_number":232,"context_line":"        \u0027limit_of_calls\u0027,"},{"line_number":233,"context_line":"        default\u003d-1,"},{"line_number":234,"context_line":"        min\u003d-1,"},{"line_number":235,"context_line":"        help\u003d("}],"source_content_type":"text/x-python","patch_set":1,"id":"df87a7cf_dd2ab12a","line":232,"range":{"start_line":232,"start_character":9,"end_line":232,"end_character":23},"updated":"2017-12-18 03:29:11.000000000","message":"I\u0027d suggest we rename it to \"batch_size\". Similar option already exists in the group \"execution_expiration_policy_opts\" where it has exactly the same meaning. So it would be symmetric and consistent. Usually, prepositions like \"of\" aren\u0027t used in config option names. We can make it slightly shorter and more abstract and explain in the help message.","commit_id":"38654b134e836b43588b5ac2c8ec5cd1c53c29ae"},{"author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"change_message_id":"14043503586e705b0d3a967bcc2931ca1f4f17ce","unresolved":false,"context_lines":[{"line_number":233,"context_line":"        default\u003d-1,"},{"line_number":234,"context_line":"        min\u003d-1,"},{"line_number":235,"context_line":"        help\u003d("},{"line_number":236,"context_line":"            \u0027The max number of delayed calls will be selected during\u0027"},{"line_number":237,"context_line":"            \u0027a scheduler iteration.\u0027"},{"line_number":238,"context_line":"            \u0027If this property equals -1 or 0 then there is not the\u0027"},{"line_number":239,"context_line":"            \u0027restriction on selection.\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"df87a7cf_bd21eda1","line":236,"updated":"2017-12-18 03:29:11.000000000","message":"A whitespace is missing between \"during\" and \"a\".","commit_id":"38654b134e836b43588b5ac2c8ec5cd1c53c29ae"},{"author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"change_message_id":"14043503586e705b0d3a967bcc2931ca1f4f17ce","unresolved":false,"context_lines":[{"line_number":234,"context_line":"        min\u003d-1,"},{"line_number":235,"context_line":"        help\u003d("},{"line_number":236,"context_line":"            \u0027The max number of delayed calls will be selected during\u0027"},{"line_number":237,"context_line":"            \u0027a scheduler iteration.\u0027"},{"line_number":238,"context_line":"            \u0027If this property equals -1 or 0 then there is not the\u0027"},{"line_number":239,"context_line":"            \u0027restriction on selection.\u0027"},{"line_number":240,"context_line":"        )"}],"source_content_type":"text/x-python","patch_set":1,"id":"df87a7cf_1d50190a","line":237,"updated":"2017-12-18 03:29:11.000000000","message":"Same.","commit_id":"38654b134e836b43588b5ac2c8ec5cd1c53c29ae"},{"author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"change_message_id":"14043503586e705b0d3a967bcc2931ca1f4f17ce","unresolved":false,"context_lines":[{"line_number":235,"context_line":"        help\u003d("},{"line_number":236,"context_line":"            \u0027The max number of delayed calls will be selected during\u0027"},{"line_number":237,"context_line":"            \u0027a scheduler iteration.\u0027"},{"line_number":238,"context_line":"            \u0027If this property equals -1 or 0 then there is not the\u0027"},{"line_number":239,"context_line":"            \u0027restriction on selection.\u0027"},{"line_number":240,"context_line":"        )"},{"line_number":241,"context_line":"    )"}],"source_content_type":"text/x-python","patch_set":1,"id":"df87a7cf_fd753599","line":238,"updated":"2017-12-18 03:29:11.000000000","message":"Same.","commit_id":"38654b134e836b43588b5ac2c8ec5cd1c53c29ae"},{"author":{"_account_id":21970,"name":"Andras Kovi","email":"akovi@nokia.com","username":"andras.kovi"},"change_message_id":"cb6bcd13b8adb56445ae7091350f59c666490a53","unresolved":false,"context_lines":[{"line_number":235,"context_line":"        help\u003d("},{"line_number":236,"context_line":"            \u0027The max number of delayed calls will be selected during \u0027"},{"line_number":237,"context_line":"            \u0027a scheduler iteration. \u0027"},{"line_number":238,"context_line":"            \u0027If this property equals -1 or 0 then there is not the \u0027"},{"line_number":239,"context_line":"            \u0027restriction on selection.\u0027"},{"line_number":240,"context_line":"        )"},{"line_number":241,"context_line":"    )"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f91af0f_acb1fc91","line":238,"range":{"start_line":238,"start_character":13,"end_line":238,"end_character":45},"updated":"2018-01-03 09:58:39.000000000","message":"Mumbling: why do we programmers have an inclination to add corner cases? -1 instead of a big number or None? This adds a branch to the code, requires test cases, requires documentation. Unreasonable, right?","commit_id":"19d34477262e0c61e3d0bcc5e71e509d5773719d"},{"author":{"_account_id":21970,"name":"Andras Kovi","email":"akovi@nokia.com","username":"andras.kovi"},"change_message_id":"cb6bcd13b8adb56445ae7091350f59c666490a53","unresolved":false,"context_lines":[{"line_number":235,"context_line":"        help\u003d("},{"line_number":236,"context_line":"            \u0027The max number of delayed calls will be selected during \u0027"},{"line_number":237,"context_line":"            \u0027a scheduler iteration. \u0027"},{"line_number":238,"context_line":"            \u0027If this property equals -1 or 0 then there is not the \u0027"},{"line_number":239,"context_line":"            \u0027restriction on selection.\u0027"},{"line_number":240,"context_line":"        )"},{"line_number":241,"context_line":"    )"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f91af0f_770d268f","line":238,"range":{"start_line":238,"start_character":59,"end_line":238,"end_character":66},"updated":"2018-01-03 09:58:39.000000000","message":"s/not the/no/","commit_id":"19d34477262e0c61e3d0bcc5e71e509d5773719d"}],"mistral/db/v2/api.py":[{"author":{"_account_id":21970,"name":"Andras Kovi","email":"akovi@nokia.com","username":"andras.kovi"},"change_message_id":"cb6bcd13b8adb56445ae7091350f59c666490a53","unresolved":false,"context_lines":[{"line_number":346,"context_line":""},{"line_number":347,"context_line":"# Delayed calls."},{"line_number":348,"context_line":""},{"line_number":349,"context_line":"def get_delayed_calls_to_start(time, limit):"},{"line_number":350,"context_line":"    return IMPL.get_delayed_calls_to_start(time, limit)"},{"line_number":351,"context_line":""},{"line_number":352,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"9f91af0f_171e1aba","line":349,"range":{"start_line":349,"start_character":37,"end_line":349,"end_character":42},"updated":"2018-01-03 09:58:39.000000000","message":"as the config is called batch_size IMHO it would be better called similarly here","commit_id":"19d34477262e0c61e3d0bcc5e71e509d5773719d"}],"mistral/services/scheduler.py":[{"author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"change_message_id":"14043503586e705b0d3a967bcc2931ca1f4f17ce","unresolved":false,"context_lines":[{"line_number":108,"context_line":"        self._thread.daemon \u003d True"},{"line_number":109,"context_line":"        self._fixed_delay \u003d CONF.scheduler.fixed_delay"},{"line_number":110,"context_line":"        self._random_delay \u003d CONF.scheduler.random_delay"},{"line_number":111,"context_line":"        self._limit_of_calls \u003d CONF.scheduler.limit_of_calls"},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"    def start(self):"},{"line_number":114,"context_line":"        self._thread.start()"}],"source_content_type":"text/x-python","patch_set":1,"id":"df87a7cf_fddc5519","line":111,"range":{"start_line":111,"start_character":13,"end_line":111,"end_character":28},"updated":"2017-12-18 03:29:11.000000000","message":"-\u003e \"_batch_size\"","commit_id":"38654b134e836b43588b5ac2c8ec5cd1c53c29ae"}],"mistral/tests/unit/services/test_scheduler.py":[{"author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"change_message_id":"14043503586e705b0d3a967bcc2931ca1f4f17ce","unresolved":false,"context_lines":[{"line_number":78,"context_line":""},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"class SchedulerServiceTest(base.DbTestCase):"},{"line_number":81,"context_line":"    UNLIMITED_CALLS \u003d -1"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"    def setUp(self):"},{"line_number":84,"context_line":"        super(SchedulerServiceTest, self).setUp()"}],"source_content_type":"text/x-python","patch_set":1,"id":"df87a7cf_fd78d5f8","line":81,"range":{"start_line":81,"start_character":4,"end_line":81,"end_character":24},"updated":"2017-12-18 03:29:11.000000000","message":"Is there a reason to put this constant within the test class? Usually we define all the important constants in the beginning of a module.","commit_id":"38654b134e836b43588b5ac2c8ec5cd1c53c29ae"},{"author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"change_message_id":"61a5f9c62199b5ca7d794f1964f3ed4e05d6507c","unresolved":false,"context_lines":[{"line_number":78,"context_line":""},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"class SchedulerServiceTest(base.DbTestCase):"},{"line_number":81,"context_line":"    UNLIMITED_CALLS \u003d -1"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"    def setUp(self):"},{"line_number":84,"context_line":"        super(SchedulerServiceTest, self).setUp()"}],"source_content_type":"text/x-python","patch_set":1,"id":"df87a7cf_d7926957","line":81,"range":{"start_line":81,"start_character":4,"end_line":81,"end_character":24},"in_reply_to":"df87a7cf_421a22cc","updated":"2017-12-19 07:45:39.000000000","message":"OK, no worries )","commit_id":"38654b134e836b43588b5ac2c8ec5cd1c53c29ae"},{"author":{"_account_id":27008,"name":"Vitalii Solodilov","email":"Mcdkr@yandex.ru","username":"mcdoker18"},"change_message_id":"0f9ecb542a7c704a806cd5923f0af5df0d2b3e29","unresolved":false,"context_lines":[{"line_number":78,"context_line":""},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"class SchedulerServiceTest(base.DbTestCase):"},{"line_number":81,"context_line":"    UNLIMITED_CALLS \u003d -1"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"    def setUp(self):"},{"line_number":84,"context_line":"        super(SchedulerServiceTest, self).setUp()"}],"source_content_type":"text/x-python","patch_set":1,"id":"df87a7cf_421a22cc","line":81,"range":{"start_line":81,"start_character":4,"end_line":81,"end_character":24},"in_reply_to":"df87a7cf_fd78d5f8","updated":"2017-12-18 20:11:32.000000000","message":"Sorry. It is a Java habit :D","commit_id":"38654b134e836b43588b5ac2c8ec5cd1c53c29ae"},{"author":{"_account_id":21970,"name":"Andras Kovi","email":"akovi@nokia.com","username":"andras.kovi"},"change_message_id":"cb6bcd13b8adb56445ae7091350f59c666490a53","unresolved":false,"context_lines":[{"line_number":381,"context_line":"        db_api.delete_delayed_call(calls[0].id)"},{"line_number":382,"context_line":""},{"line_number":383,"context_line":"    @mock.patch(FACTORY_METHOD_PATH)"},{"line_number":384,"context_line":"    def test_scheduler_with_custom_limit(self, factory):"},{"line_number":385,"context_line":"        self.sched.stop(True)"},{"line_number":386,"context_line":""},{"line_number":387,"context_line":"        cfg.CONF.set_default(\u0027batch_size\u0027, 1, group\u003d\u0027scheduler\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f91af0f_6f63e6dd","line":384,"range":{"start_line":384,"start_character":8,"end_line":384,"end_character":40},"updated":"2018-01-03 09:58:39.000000000","message":"this is limit\u003d\u003d1. Could you add a test for another value? Or make this one limit\u003d\u003d2 and add a call that should be processed at the same time. E.g. 1, 2, 1. This requires a bit of refactoring and removal of cycles but would make the test significantly better quality.","commit_id":"19d34477262e0c61e3d0bcc5e71e509d5773719d"},{"author":{"_account_id":21970,"name":"Andras Kovi","email":"akovi@nokia.com","username":"andras.kovi"},"change_message_id":"cb6bcd13b8adb56445ae7091350f59c666490a53","unresolved":false,"context_lines":[{"line_number":412,"context_line":"                **method_args"},{"line_number":413,"context_line":"            )"},{"line_number":414,"context_line":""},{"line_number":415,"context_line":"        eventlet.sleep(number_delayed_calls * WAIT)"},{"line_number":416,"context_line":""},{"line_number":417,"context_line":"        self.assertEqual("},{"line_number":418,"context_line":"            number_delayed_calls,"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f91af0f_0f0eda33","line":415,"range":{"start_line":415,"start_character":7,"end_line":415,"end_character":51},"updated":"2018-01-03 09:58:39.000000000","message":"Instead of sleep, could you use some await function? It would be more robust.","commit_id":"19d34477262e0c61e3d0bcc5e71e509d5773719d"},{"author":{"_account_id":21970,"name":"Andras Kovi","email":"akovi@nokia.com","username":"andras.kovi"},"change_message_id":"cb6bcd13b8adb56445ae7091350f59c666490a53","unresolved":false,"context_lines":[{"line_number":417,"context_line":"        self.assertEqual("},{"line_number":418,"context_line":"            number_delayed_calls,"},{"line_number":419,"context_line":"            len(calls),"},{"line_number":420,"context_line":"            \"All delayed calls will be selected by one\""},{"line_number":421,"context_line":"        )"},{"line_number":422,"context_line":""},{"line_number":423,"context_line":"        for i in range(number_delayed_calls):"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f91af0f_6c59b458","line":420,"range":{"start_line":420,"start_character":13,"end_line":420,"end_character":54},"updated":"2018-01-03 09:58:39.000000000","message":"The message is not clear to me. Could you concretize?","commit_id":"19d34477262e0c61e3d0bcc5e71e509d5773719d"}]}
