)]}'
{"keystone/revoke/backends/sql.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"5b4dda9e9d0e2ebd8c3206f36639236467e947c0","unresolved":false,"context_lines":[{"line_number":92,"context_line":""},{"line_number":93,"context_line":"            return events"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"    @oslo_db_api.wrap_db_retry(max_retries\u003d5, retry_on_deadlock\u003dTrue)"},{"line_number":96,"context_line":"    def revoke(self, event):"},{"line_number":97,"context_line":"        kwargs \u003d dict()"},{"line_number":98,"context_line":"        for attr in revoke_model.REVOKE_KEYS:"}],"source_content_type":"text/x-python","patch_set":1,"id":"dada55a8_97d9d0f5","line":95,"range":{"start_line":95,"start_character":31,"end_line":95,"end_character":44},"updated":"2016-07-21 17:18:53.000000000","message":"default max is 20:\n\nhttps://github.com/openstack/oslo.db/blob/master/oslo_db/api.py#L112\n\na note about why 5 was picked would be nice","commit_id":"d9b5b1f647cdb791545af726b35621e5f4d29c9f"},{"author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"change_message_id":"42a8b3281bb174070ab690983d7901d124f9950e","unresolved":false,"context_lines":[{"line_number":92,"context_line":""},{"line_number":93,"context_line":"            return events"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"    @oslo_db_api.wrap_db_retry(max_retries\u003d5, retry_on_deadlock\u003dTrue)"},{"line_number":96,"context_line":"    def revoke(self, event):"},{"line_number":97,"context_line":"        kwargs \u003d dict()"},{"line_number":98,"context_line":"        for attr in revoke_model.REVOKE_KEYS:"}],"source_content_type":"text/x-python","patch_set":1,"id":"dada55a8_4c5af951","line":95,"range":{"start_line":95,"start_character":31,"end_line":95,"end_character":44},"in_reply_to":"dada55a8_97d9d0f5","updated":"2016-07-22 14:10:47.000000000","message":"I suggest to leave max_retries by default. And not to pass it.","commit_id":"d9b5b1f647cdb791545af726b35621e5f4d29c9f"}],"keystone/tests/unit/test_v3_os_revoke.py":[{"author":{"_account_id":20259,"name":"Clenimar Filemon","email":"clenimar@lsd.ufcg.edu.br","username":"clenimar"},"change_message_id":"39b31a73132859fe38338c0e50b3db7eabd37c81","unresolved":false,"context_lines":[{"line_number":166,"context_line":"    @mock.patch(\u0027sqlalchemy.orm.query.Query.delete\u0027,"},{"line_number":167,"context_line":"                autospec\u003dTrue,"},{"line_number":168,"context_line":"                side_effect\u003doslo_db_exception.DBDeadlock)"},{"line_number":169,"context_line":"    def test_reties_on_deadlock(self, mock_delete):"},{"line_number":170,"context_line":"        user_id \u003d uuid.uuid4().hex"},{"line_number":171,"context_line":"        self.assertRaises(oslo_db_exception.DBDeadlock,"},{"line_number":172,"context_line":"                          self.revoke_api.revoke,"}],"source_content_type":"text/x-python","patch_set":1,"id":"dada55a8_08ae9680","line":169,"range":{"start_line":169,"start_character":13,"end_line":169,"end_character":19},"updated":"2016-07-20 19:45:50.000000000","message":"typo: retries.","commit_id":"d9b5b1f647cdb791545af726b35621e5f4d29c9f"},{"author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"change_message_id":"bc8727f69ad431c7ef46b95744e28c29bab93af0","unresolved":false,"context_lines":[{"line_number":196,"context_line":"        try:"},{"line_number":197,"context_line":"            self.revoke_api.revoke(revoke_model.RevokeEvent(user_id\u003duser_id))"},{"line_number":198,"context_line":"        finally:"},{"line_number":199,"context_line":"            if patcher in patcher._active_patches:"},{"line_number":200,"context_line":"                patcher.stop()"},{"line_number":201,"context_line":""},{"line_number":202,"context_line":"        call_count \u003d sql_delete_mock.call_count"}],"source_content_type":"text/x-python","patch_set":5,"id":"bacf61ea_933fcdd5","line":199,"range":{"start_line":199,"start_character":26,"end_line":199,"end_character":49},"updated":"2016-08-03 10:40:28.000000000","message":"We should not access private patcher variables. They can change any time.","commit_id":"48a96f15d6598983688d2a932fdee980cf989fbd"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"bfde7e3749c380ccb395df63703226360f536835","unresolved":false,"context_lines":[{"line_number":173,"context_line":"                             autospec\u003dTrue)"},{"line_number":174,"context_line":"        patched \u003d True"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"        # NOTE(mnikolaenko): raise 2 deadlock and back to normal work of"},{"line_number":177,"context_line":"        # method. Two attempts is enough to check that retry decorator works."},{"line_number":178,"context_line":"        # Otherwise it will take very much time to pass this test"},{"line_number":179,"context_line":"        class FakeDeadlock(object):"}],"source_content_type":"text/x-python","patch_set":6,"id":"bacf61ea_d6cad36d","line":176,"updated":"2016-08-03 12:31:19.000000000","message":"nit: deadlocks","commit_id":"630884cf92a2979ddfed03060977490fd1fab59e"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"bfde7e3749c380ccb395df63703226360f536835","unresolved":false,"context_lines":[{"line_number":196,"context_line":"        user_id \u003d uuid.uuid4().hex"},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"        try:"},{"line_number":199,"context_line":"            self.revoke_api.revoke(revoke_model.RevokeEvent(user_id\u003duser_id))"},{"line_number":200,"context_line":"        finally:"},{"line_number":201,"context_line":"            if patched:"},{"line_number":202,"context_line":"                patcher.stop()"}],"source_content_type":"text/x-python","patch_set":6,"id":"bacf61ea_16aaab70","line":199,"range":{"start_line":199,"start_character":60,"end_line":199,"end_character":75},"updated":"2016-08-03 12:31:19.000000000","message":"nit: you are not using \"user_id\" anywhere else, it\u0027s cleaner pass \"uuid.uuid4().hex\" directly here.","commit_id":"630884cf92a2979ddfed03060977490fd1fab59e"}]}
