)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"0ef2115963b42a270d4d911083c0eb459df76a0a","unresolved":false,"context_lines":[{"line_number":7,"context_line":"api: use sane default in wrap_db_retry()"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The current defaults do not make much sense: having max_retries set to 0"},{"line_number":10,"context_line":"completely avoid any retry, which is the whole point of that wrapper."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"This patch moves the correct default values from the DBAPI object to the"},{"line_number":13,"context_line":"wrap_db_retry() function itself."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3aaa91ec_7c3d7edc","line":10,"updated":"2016-06-29 15:06:02.000000000","message":"I think it\u0027s worth adding a release note, but we can do it separately.\n\nhttp://codesearch.openstack.org/?q\u003dwrap_db_retry\u0026i\u003dnope\u0026files\u003d\u0026repos\u003d suggests everyone was setting max_retries explicitly...","commit_id":"8e3b356680ecb6bb1f110c0b909edd002e19771b"}],"oslo_db/api.py":[{"author":{"_account_id":11816,"name":"mike bayer","display_name":"Mike Bayer","email":"mike_mp@zzzcomputing.com","username":"zzzeek","status":"Red Hat"},"change_message_id":"f347a3bd9fd3fdaf747f7c51aef2f9fe6496b70e","unresolved":false,"context_lines":[{"line_number":109,"context_line":""},{"line_number":110,"context_line":"    @removals.removed_kwarg(\"retry_on_request\","},{"line_number":111,"context_line":"                            \"Retry on request is always enabled\")"},{"line_number":112,"context_line":"    def __init__(self, retry_interval\u003d1, max_retries\u003d20,"},{"line_number":113,"context_line":"                 inc_retry_interval\u003dTrue,"},{"line_number":114,"context_line":"                 max_retry_interval\u003d10, retry_on_disconnect\u003dFalse,"},{"line_number":115,"context_line":"                 retry_on_deadlock\u003dFalse, retry_on_request\u003dFalse,"}],"source_content_type":"text/x-python","patch_set":1,"id":"bab6814e_c948925e","line":112,"updated":"2016-05-18 15:25:14.000000000","message":"how do we know these (pretty dramatic, 20 retries) changes aren\u0027t going to break any existing applications or cause unexpected behaviors?","commit_id":"09083efb56fda4c8ac0b2c920ab22fc7e5eacdc2"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"907ac51b462467347c987cedf776b2b4a2d3d84a","unresolved":false,"context_lines":[{"line_number":109,"context_line":""},{"line_number":110,"context_line":"    @removals.removed_kwarg(\"retry_on_request\","},{"line_number":111,"context_line":"                            \"Retry on request is always enabled\")"},{"line_number":112,"context_line":"    def __init__(self, retry_interval\u003d1, max_retries\u003d20,"},{"line_number":113,"context_line":"                 inc_retry_interval\u003dTrue,"},{"line_number":114,"context_line":"                 max_retry_interval\u003d10, retry_on_disconnect\u003dFalse,"},{"line_number":115,"context_line":"                 retry_on_deadlock\u003dFalse, retry_on_request\u003dFalse,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3aaa91ec_ef5d4716","line":112,"in_reply_to":"3aaa91ec_380fc9e2","updated":"2016-06-29 09:31:31.000000000","message":"OK","commit_id":"09083efb56fda4c8ac0b2c920ab22fc7e5eacdc2"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"bdad41016ad525bd6b6e4ad21c990c923fca9f38","unresolved":false,"context_lines":[{"line_number":109,"context_line":""},{"line_number":110,"context_line":"    @removals.removed_kwarg(\"retry_on_request\","},{"line_number":111,"context_line":"                            \"Retry on request is always enabled\")"},{"line_number":112,"context_line":"    def __init__(self, retry_interval\u003d1, max_retries\u003d20,"},{"line_number":113,"context_line":"                 inc_retry_interval\u003dTrue,"},{"line_number":114,"context_line":"                 max_retry_interval\u003d10, retry_on_disconnect\u003dFalse,"},{"line_number":115,"context_line":"                 retry_on_deadlock\u003dFalse, retry_on_request\u003dFalse,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3aaa91ec_380fc9e2","line":112,"in_reply_to":"3aaa91ec_381a3018","updated":"2016-06-28 12:46:09.000000000","message":"20 is the old default, so I don\u0027t think this patch should change it.","commit_id":"09083efb56fda4c8ac0b2c920ab22fc7e5eacdc2"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"cbb6fc024ce82a9526e915f87ea20db683ee689f","unresolved":false,"context_lines":[{"line_number":109,"context_line":""},{"line_number":110,"context_line":"    @removals.removed_kwarg(\"retry_on_request\","},{"line_number":111,"context_line":"                            \"Retry on request is always enabled\")"},{"line_number":112,"context_line":"    def __init__(self, retry_interval\u003d1, max_retries\u003d20,"},{"line_number":113,"context_line":"                 inc_retry_interval\u003dTrue,"},{"line_number":114,"context_line":"                 max_retry_interval\u003d10, retry_on_disconnect\u003dFalse,"},{"line_number":115,"context_line":"                 retry_on_deadlock\u003dFalse, retry_on_request\u003dFalse,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3aaa91ec_381a3018","line":112,"in_reply_to":"bab6814e_49bb0273","updated":"2016-06-28 10:56:34.000000000","message":"Confirming that everywhere sets max_retries. Can we make this 5 not 20 though? That seems excessive.","commit_id":"09083efb56fda4c8ac0b2c920ab22fc7e5eacdc2"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"97cb4770f2e699c0d1ec6bf9eccd13222e6887e0","unresolved":false,"context_lines":[{"line_number":109,"context_line":""},{"line_number":110,"context_line":"    @removals.removed_kwarg(\"retry_on_request\","},{"line_number":111,"context_line":"                            \"Retry on request is always enabled\")"},{"line_number":112,"context_line":"    def __init__(self, retry_interval\u003d1, max_retries\u003d20,"},{"line_number":113,"context_line":"                 inc_retry_interval\u003dTrue,"},{"line_number":114,"context_line":"                 max_retry_interval\u003d10, retry_on_disconnect\u003dFalse,"},{"line_number":115,"context_line":"                 retry_on_deadlock\u003dFalse, retry_on_request\u003dFalse,"}],"source_content_type":"text/x-python","patch_set":1,"id":"bab6814e_49bb0273","line":112,"in_reply_to":"bab6814e_c948925e","updated":"2016-05-18 15:35:26.000000000","message":"We don\u0027t.\n\nBut http://codesearch.openstack.org/?q\u003dwrap_db_retry\u0026i\u003dnope\u0026files\u003d\u0026repos\u003d shows that it should be ok.\n\nI can also change the default. Suggestions?","commit_id":"09083efb56fda4c8ac0b2c920ab22fc7e5eacdc2"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"907ac51b462467347c987cedf776b2b4a2d3d84a","unresolved":false,"context_lines":[{"line_number":223,"context_line":"        for k in (\u0027retry_interval\u0027, \u0027inc_retry_interval\u0027,"},{"line_number":224,"context_line":"                  \u0027max_retry_interval\u0027, \u0027max_retries\u0027):"},{"line_number":225,"context_line":"            if k in kwargs:"},{"line_number":226,"context_line":"                self._wrap_db_kwargs[k] \u003d kwargs[k]"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"    def _load_backend(self):"},{"line_number":229,"context_line":"        with self._lock:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3aaa91ec_6f5af72b","line":226,"updated":"2016-06-29 09:31:31.000000000","message":"maybe:\n\n  kws \u003d [\u0027retry_interval\u0027, \u0027inc_retry_interval\u0027,\n         \u0027max_retry_interval\u0027, \u0027max_retries\u0027]\n  self._wrap_db_kwargs \u003d {k: v for k, v in kwargs.items() if k in kws}","commit_id":"09083efb56fda4c8ac0b2c920ab22fc7e5eacdc2"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"a2870619996af5d44c69ef3e61a970389766c68c","unresolved":false,"context_lines":[{"line_number":223,"context_line":"        for k in (\u0027retry_interval\u0027, \u0027inc_retry_interval\u0027,"},{"line_number":224,"context_line":"                  \u0027max_retry_interval\u0027, \u0027max_retries\u0027):"},{"line_number":225,"context_line":"            if k in kwargs:"},{"line_number":226,"context_line":"                self._wrap_db_kwargs[k] \u003d kwargs[k]"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"    def _load_backend(self):"},{"line_number":229,"context_line":"        with self._lock:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3aaa91ec_8b68f022","line":226,"in_reply_to":"3aaa91ec_6f5af72b","updated":"2016-06-29 11:41:34.000000000","message":"Done","commit_id":"09083efb56fda4c8ac0b2c920ab22fc7e5eacdc2"},{"author":{"_account_id":16907,"name":"Diana Clarke","email":"diana.joan.clarke@gmail.com","username":"diana-clarke"},"change_message_id":"3f8be200b14e034eeee772b305be3beedce3a86d","unresolved":false,"context_lines":[{"line_number":110,"context_line":"    @removals.removed_kwarg(\"retry_on_request\","},{"line_number":111,"context_line":"                            \"Retry on request is always enabled\")"},{"line_number":112,"context_line":"    def __init__(self, retry_interval\u003d1, max_retries\u003d20,"},{"line_number":113,"context_line":"                 inc_retry_interval\u003dTrue,"},{"line_number":114,"context_line":"                 max_retry_interval\u003d10, retry_on_disconnect\u003dFalse,"},{"line_number":115,"context_line":"                 retry_on_deadlock\u003dFalse, retry_on_request\u003dFalse,"},{"line_number":116,"context_line":"                 exception_checker\u003dlambda exc: False):"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a98d1f4_c8b4d283","line":113,"range":{"start_line":113,"start_character":17,"end_line":113,"end_character":40},"updated":"2016-09-30 17:04:28.000000000","message":"Flipping `inc_retry_interval` from False to True is a pretty significant change.\n\nFor example, that\u0027s 75 seconds vs 10 seconds, for 10 retries. The nova unit tests are minutes slower as a result.\n\n    \u003e\u003e\u003e 1 + 2 + 4 + 8 + 10 + 10 + 10 + 10 + 10 + 10\n    75\n\nHave any other projects reported similar concerns?","commit_id":"8e3b356680ecb6bb1f110c0b909edd002e19771b"},{"author":{"_account_id":16907,"name":"Diana Clarke","email":"diana.joan.clarke@gmail.com","username":"diana-clarke"},"change_message_id":"a6c5b2b5f986da8fe350f015587b57411a68d31a","unresolved":false,"context_lines":[{"line_number":110,"context_line":"    @removals.removed_kwarg(\"retry_on_request\","},{"line_number":111,"context_line":"                            \"Retry on request is always enabled\")"},{"line_number":112,"context_line":"    def __init__(self, retry_interval\u003d1, max_retries\u003d20,"},{"line_number":113,"context_line":"                 inc_retry_interval\u003dTrue,"},{"line_number":114,"context_line":"                 max_retry_interval\u003d10, retry_on_disconnect\u003dFalse,"},{"line_number":115,"context_line":"                 retry_on_deadlock\u003dFalse, retry_on_request\u003dFalse,"},{"line_number":116,"context_line":"                 exception_checker\u003dlambda exc: False):"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a98d1f4_0f0cfc3f","line":113,"range":{"start_line":113,"start_character":17,"end_line":113,"end_character":40},"in_reply_to":"3a98d1f4_c8b4d283","updated":"2016-09-30 18:54:52.000000000","message":"And in nova\u0027s case, it\u0027s actually 0 seconds vs 75 seconds because nova was just calling it like so:\n\n    wrap_db_retry(max_retries\u003d5, retry_on_deadlock\u003dTrue)","commit_id":"8e3b356680ecb6bb1f110c0b909edd002e19771b"}]}
