)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"97cd667ededf4be0195d27cdae00a5f1a24a758f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"d755eea4_9757a767","updated":"2026-01-14 16:35:34.000000000","message":"Solution and test coverage looks good to me.","commit_id":"85a39a1958f25893a75107815ccf8723744cca9f"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"021fbc544f17d87f55b129b4017ac72fd51c6f33","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"8c4656fa_1345244c","updated":"2026-01-15 08:20:32.000000000","message":"thanks for the patch Eric, this requires a releasenote since it\u0027s a bugfix.\nAlso it seems this is corner case that is intentionally triggered otherwise users won\u0027t be creating 2147483648 GB volumes.","commit_id":"85a39a1958f25893a75107815ccf8723744cca9f"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"719f32b2dc237cdf0dc121ab6712a697d34cb516","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"cbc5deda_785142ed","updated":"2026-01-28 01:24:45.000000000","message":"See comments inline for 2 issues.  Either could be a followup; if that\u0027s how you want to handle it, i will upgrade to +2.","commit_id":"be4b1dcf04cda650e33c6b0304426d22b654200f"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"999319a8668fbc8ea919eab4877a7bb321660dd0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"33cba421_230465e3","updated":"2026-01-20 04:10:53.000000000","message":"recheck devstack-plugin-nfs-tempest-full timed out\ncode and tests LGTM, thanks Eric!","commit_id":"be4b1dcf04cda650e33c6b0304426d22b654200f"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"b154a10cb0341b90bf2bfb0ad7a1160eb758e09e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"7445f4fa_7ee6abda","updated":"2026-02-02 16:12:49.000000000","message":"Apart from making the test more thorough (as per Brian\u0027s recommendation), code and tests still LGTM. thanks Eric!","commit_id":"7472e17c7e320e5ae91f1960c43a5c9427bc088d"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"a4bf3d127abcac9f4a9c4df084c2b3220f71fde7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"6d3d92d3_bacf0d87","updated":"2026-01-28 16:46:52.000000000","message":"Code and tests LGTM.","commit_id":"7472e17c7e320e5ae91f1960c43a5c9427bc088d"}],"cinder/db/sqlalchemy/api.py":[{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"eefcd8486bb13dddcf106be8bceb2d38b74b351f","unresolved":true,"context_lines":[{"line_number":1716,"context_line":"        # Check if total (in_use + reserved + delta) would overflow"},{"line_number":1717,"context_line":"        if delta \u003e 0:"},{"line_number":1718,"context_line":"            total \u003d usages[r].total"},{"line_number":1719,"context_line":"            if total \u003e _MAX_INT - delta:"},{"line_number":1720,"context_line":"                overflows.append(r)"},{"line_number":1721,"context_line":"            # Also check if reserved alone would overflow"},{"line_number":1722,"context_line":"            elif usages[r].reserved \u003e _MAX_INT - delta:"}],"source_content_type":"text/x-python","patch_set":3,"id":"375d2f5f_ae70b2e2","line":1719,"range":{"start_line":1719,"start_character":15,"end_line":1719,"end_character":39},"updated":"2026-01-16 09:52:33.000000000","message":"I\u0027m having confusion about how this condition works.\nIf delta is 1 (GB) of ``backups`` resource, _MAX_INT - delta will evaluate to 2147483646 and total (in_use + reserved + delta) should not be greater than that right?","commit_id":"064233c8e6ed39d2a98fcd74ad8945737f2abd43"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"457e88d83855b008c3bbb16ee9146057248530a8","unresolved":true,"context_lines":[{"line_number":1716,"context_line":"        # Check if total (in_use + reserved + delta) would overflow"},{"line_number":1717,"context_line":"        if delta \u003e 0:"},{"line_number":1718,"context_line":"            total \u003d usages[r].total"},{"line_number":1719,"context_line":"            if total \u003e _MAX_INT - delta:"},{"line_number":1720,"context_line":"                overflows.append(r)"},{"line_number":1721,"context_line":"            # Also check if reserved alone would overflow"},{"line_number":1722,"context_line":"            elif usages[r].reserved \u003e _MAX_INT - delta:"}],"source_content_type":"text/x-python","patch_set":3,"id":"c8e3565d_7824fa9a","line":1719,"range":{"start_line":1719,"start_character":15,"end_line":1719,"end_character":39},"in_reply_to":"375d2f5f_ae70b2e2","updated":"2026-01-19 20:40:14.000000000","message":"It\u0027s confusing because it\u0027s written backward from what you\u0027d expect... will fix.\n\nHere, total \u003d currently used gigabytes, so the check is really\n\n   if currently_used_gb + delta \u003e _MAX_INT:","commit_id":"064233c8e6ed39d2a98fcd74ad8945737f2abd43"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"999319a8668fbc8ea919eab4877a7bb321660dd0","unresolved":false,"context_lines":[{"line_number":1716,"context_line":"        # Check if total (in_use + reserved + delta) would overflow"},{"line_number":1717,"context_line":"        if delta \u003e 0:"},{"line_number":1718,"context_line":"            total \u003d usages[r].total"},{"line_number":1719,"context_line":"            if total \u003e _MAX_INT - delta:"},{"line_number":1720,"context_line":"                overflows.append(r)"},{"line_number":1721,"context_line":"            # Also check if reserved alone would overflow"},{"line_number":1722,"context_line":"            elif usages[r].reserved \u003e _MAX_INT - delta:"}],"source_content_type":"text/x-python","patch_set":3,"id":"e368ec57_b9e7ea36","line":1719,"range":{"start_line":1719,"start_character":15,"end_line":1719,"end_character":39},"in_reply_to":"c8e3565d_7824fa9a","updated":"2026-01-20 04:10:53.000000000","message":"Ah okay, makes more sense now. Thanks!","commit_id":"064233c8e6ed39d2a98fcd74ad8945737f2abd43"}],"cinder/tests/unit/test_quota.py":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"719f32b2dc237cdf0dc121ab6712a697d34cb516","unresolved":true,"context_lines":[{"line_number":1863,"context_line":"        self.assertRaises(exception.QuotaUsageOverflow,"},{"line_number":1864,"context_line":"                          sqa_api.quota_reserve,"},{"line_number":1865,"context_line":"                          ctxt, self.resources, quotas,"},{"line_number":1866,"context_line":"                          deltas, self.expire, 0, 0)"},{"line_number":1867,"context_line":""},{"line_number":1868,"context_line":"    def test_quota_reserve_overflow_with_reserved(self):"},{"line_number":1869,"context_line":"        # Test overflow detection when reserved value would overflow"}],"source_content_type":"text/x-python","patch_set":4,"id":"f1438a21_0ca8692f","line":1866,"updated":"2026-01-28 01:24:45.000000000","message":"Prior to your fix, you\u0027d get a DB error and then subsequent volume-create requests would fail because the quota_reserve would fail.  So would it make sense to do a normal-size quota reserve before exiting this test?  We know that the overflow was detected because the exception was raised, but we don\u0027t really know that the db was left in a good state such that subsequent requests will succeed.","commit_id":"be4b1dcf04cda650e33c6b0304426d22b654200f"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"54919815ce33b4ed134cc163129a104ee8eac079","unresolved":false,"context_lines":[{"line_number":1863,"context_line":"        self.assertRaises(exception.QuotaUsageOverflow,"},{"line_number":1864,"context_line":"                          sqa_api.quota_reserve,"},{"line_number":1865,"context_line":"                          ctxt, self.resources, quotas,"},{"line_number":1866,"context_line":"                          deltas, self.expire, 0, 0)"},{"line_number":1867,"context_line":""},{"line_number":1868,"context_line":"    def test_quota_reserve_overflow_with_reserved(self):"},{"line_number":1869,"context_line":"        # Test overflow detection when reserved value would overflow"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa4cba01_3a08ad9d","line":1866,"in_reply_to":"f1438a21_0ca8692f","updated":"2026-01-28 14:48:43.000000000","message":"Done\n\nAdded a check for this.","commit_id":"be4b1dcf04cda650e33c6b0304426d22b654200f"}],"releasenotes/notes/bug-2137642-quota-database-limits-d77f4d8f2b4829dd.yaml":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"719f32b2dc237cdf0dc121ab6712a697d34cb516","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":4,"id":"baa7a1da_3e05259d","line":7,"updated":"2026-01-28 01:24:45.000000000","message":"This patch also has the side effect of limiting the maximum volume size, since you can\u0027t request more than 2**31 GB at a time.  It\u0027s not a new limit, though, because in python 2 days, we had this same limit when we validated the \u0027size\u0027 as an int, and in python 3 days, we would have this bug to protect us (because the in the volume table, the \u0027size\u0027 column is a sqlalchemy int, which i think is whatever the underlying db considers an int).\n\nI think we need to say something, though, because the assumption has been that the max volume size is determined by the backend -- which it still is, but since we can\u0027t pass a value greater than 2**31 in the volume object that the driver sees, that\u0027s the maximum value.\n\nI don\u0027t know that we need to say something here (i.e., in this release note), however.","commit_id":"be4b1dcf04cda650e33c6b0304426d22b654200f"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"a4bf3d127abcac9f4a9c4df084c2b3220f71fde7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"98cfc7cc_0dc6ab6b","line":7,"in_reply_to":"2b65f0e2_9218ed76","updated":"2026-01-28 16:46:52.000000000","message":"Acknowledged","commit_id":"be4b1dcf04cda650e33c6b0304426d22b654200f"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"54919815ce33b4ed134cc163129a104ee8eac079","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":4,"id":"2b65f0e2_9218ed76","line":7,"in_reply_to":"baa7a1da_3e05259d","updated":"2026-01-28 14:48:43.000000000","message":"I think the limit is sufficiently large enough (2 exabytes) that no backends are bumping up against it currently - we can probably leave this for later.","commit_id":"be4b1dcf04cda650e33c6b0304426d22b654200f"}]}
