{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":657224325,"defaultBranch":"main","name":"pgroll","ownerLogin":"xataio","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-06-22T15:29:36.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/74420131?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1716372967.0","currentOid":""},"activityList":{"items":[{"before":"00c7712c6e4c1892c6ee23286a6aa8ff6f03e42f","after":null,"ref":"refs/heads/export-is-rename-only","pushedAt":"2024-05-22T10:16:07.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"}},{"before":"a87fa36dda1cd8213ebf62a4bffbdc9536777bc0","after":"fca5abdfe24533de17d83a2c2fa9e47513bfc2d3","ref":"refs/heads/main","pushedAt":"2024-05-22T10:16:06.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Export `OpAlterColumn.IsRenameOnly` method (#357)\n\nExport `OpAlterColumn.IsRenameOnly` method and add a test for it.\r\n\r\nApplications using `pgroll` as a module may need to test if an alter\r\ncolumn operation is only a column rename operation without having to\r\nduplicate the logic of checking the fields of the `OpAlterColumn`\r\nstruct.","shortMessageHtmlLink":"Export OpAlterColumn.IsRenameOnly method (#357)"}},{"before":"d6b9c61e115c5ec7ed4e69e508ad6d1c9f6b96b4","after":"00c7712c6e4c1892c6ee23286a6aa8ff6f03e42f","ref":"refs/heads/export-is-rename-only","pushedAt":"2024-05-21T09:53:08.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Add tests for `OpAlterColumn.IsRenameOnly`","shortMessageHtmlLink":"Add tests for OpAlterColumn.IsRenameOnly"}},{"before":null,"after":"d6b9c61e115c5ec7ed4e69e508ad6d1c9f6b96b4","ref":"refs/heads/export-is-rename-only","pushedAt":"2024-05-20T11:20:37.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Export `OpAlterColumn.IsRenameOnly`","shortMessageHtmlLink":"Export OpAlterColumn.IsRenameOnly"}},{"before":"e4873f7c81c4e539fe8ca3cf7b526b9274f86027","after":null,"ref":"refs/heads/export-alter-column-sub-operations","pushedAt":"2024-05-20T11:19:43.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"}},{"before":null,"after":"e4873f7c81c4e539fe8ca3cf7b526b9274f86027","ref":"refs/heads/export-alter-column-sub-operations","pushedAt":"2024-05-20T11:01:32.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Export `OpAlterColumn.IsRenameOnly` method","shortMessageHtmlLink":"Export OpAlterColumn.IsRenameOnly method"}},{"before":"73cf6c8dbb553e1463040adf810530ca7a033c60","after":null,"ref":"refs/heads/drop-index-case-sensitivity","pushedAt":"2024-05-16T11:08:59.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"}},{"before":"4d3faebffdadcca89a51dca97a573f8164a020ea","after":"a87fa36dda1cd8213ebf62a4bffbdc9536777bc0","ref":"refs/heads/main","pushedAt":"2024-05-16T11:08:58.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Support create/drop index with uppercase names (#356)\n\nFixes https://github.com/xataio/pgroll/issues/355\r\n\r\nPostgres stores index names with uppercase characters in the `pg_index`\r\ncatalog using the quoted version of the name. For example:\r\n\r\n```\r\n\"idx_USERS_name\"\r\n```\r\n\r\nwhereas a lowercase index name would be stored as:\r\n\r\n```\r\nidx_users_name\r\n```\r\n\r\nThis is different to how other object types are stored in their\r\nrespective catalogs. For example, table names are stored in\r\nthe`pg_class` catalog without quotes, regardless of whether they contain\r\nuppercase characters.\r\n\r\nThis makes it necessary to strip quotes from index names when retrieving\r\nthem from the `pg_index` catalog when building the internal schema\r\nrepresentation.","shortMessageHtmlLink":"Support create/drop index with uppercase names (#356)"}},{"before":"5defcf45183bb697159afee8e968a1c1c5d1f43c","after":"73cf6c8dbb553e1463040adf810530ca7a033c60","ref":"refs/heads/drop-index-case-sensitivity","pushedAt":"2024-05-16T10:58:36.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Strip double quotes from index names\n\nPostgres stores index names with uppercase characters in the `pg_index`\ncatalog using the quoted version of the name. For example:\n\n```\n\"idx_USERS_name\"\n```\n\nwhereas a lowercase index name would be stored as:\n\n```\nidx_users_name\n```\n\nThis is different to how other object types are stored in their\nrespective catalogs. For example, table names are stored in the\n`pg_class` catalog without quotes, regardless of whether they contain\nuppercase characters.","shortMessageHtmlLink":"Strip double quotes from index names"}},{"before":"25321ad1cd34d0e2a05c280fcc740f6ee11a3d7a","after":null,"ref":"refs/heads/use-new-col-name-in-down-sql-for-rename-col","pushedAt":"2024-05-16T10:57:54.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"}},{"before":"4c1bc6a03fc646a9904f5282ec87206ea47345cd","after":"4d3faebffdadcca89a51dca97a573f8164a020ea","ref":"refs/heads/main","pushedAt":"2024-05-16T10:57:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Make `down` SQL in rename column operations use the new name of the column (#354)\n\nEnsure that 'alter column' operations that rename a column and also\r\nspecify `down` SQL (such as those that alter some other column attribute\r\nat the time of the rename) must use the new name of the column in the\r\n`down` SQL.\r\n\r\nWithout this change, the `down` SQL would require the use of the old\r\ncolumn name.\r\n\r\nFixes #350","shortMessageHtmlLink":"Make down SQL in rename column operations use the new name of the c…"}},{"before":"88dfdcb093b97fffc718837b3cd71f5ec467f7a7","after":"5defcf45183bb697159afee8e968a1c1c5d1f43c","ref":"refs/heads/drop-index-case-sensitivity","pushedAt":"2024-05-16T10:39:42.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Strip double quotes from index names\n\nPostgres stores index names with uppercase characters in the `pg_index`\ncatalog using the quoted version of the name. For example:\n\n```\n\"idx_USERS_name\"\n```\n\nwhereas a lowercase index name would be stored as:\n\n```\nidx_users_name\n```\n\nThis is different to how other object types are stored in their\nrespective catalogs. For example, table names are stored in the\n`pg_class` catalog without quotes, regardless of whether they contain\nuppercase characters.","shortMessageHtmlLink":"Strip double quotes from index names"}},{"before":null,"after":"88dfdcb093b97fffc718837b3cd71f5ec467f7a7","ref":"refs/heads/drop-index-case-sensitivity","pushedAt":"2024-05-16T10:39:02.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Strip double quotes from index names\n\nPostgres stores index names with uppercase characters in the `pg_index`\ncatalog using the quoted version of the name. For example:\n\n```\n\"idx_USERS_name\"\n```\n\nwhereas a lowercase index name would be stored as:\n\n```\nidx_users_name\n```\n\nThis is different to how other object types are stored in their\nrespective catalogs. For example, table names are stored in the\n`pg_class` catalog without quotes, regardless of whether they contain\nuppercase characters.","shortMessageHtmlLink":"Strip double quotes from index names"}},{"before":null,"after":"25321ad1cd34d0e2a05c280fcc740f6ee11a3d7a","ref":"refs/heads/use-new-col-name-in-down-sql-for-rename-col","pushedAt":"2024-05-09T11:13:24.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Update example migration","shortMessageHtmlLink":"Update example migration"}},{"before":"25321ad1cd34d0e2a05c280fcc740f6ee11a3d7a","after":null,"ref":"refs/heads/temp/investigate-up-down-change-type","pushedAt":"2024-05-09T11:11:25.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"}},{"before":"ab2cf79a68970d7687e10c4494c4f905ba62253e","after":"25321ad1cd34d0e2a05c280fcc740f6ee11a3d7a","ref":"refs/heads/temp/investigate-up-down-change-type","pushedAt":"2024-05-09T11:08:46.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Update example migration","shortMessageHtmlLink":"Update example migration"}},{"before":"54e27635a04eee625dde2cca2b2476123808f620","after":null,"ref":"refs/heads/dont-duplicate-incompatible-constraints","pushedAt":"2024-05-08T17:52:48.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"}},{"before":"5c1aef2f24f3317b1406e75906d7ef58a1639a71","after":"4c1bc6a03fc646a9904f5282ec87206ea47345cd","ref":"refs/heads/main","pushedAt":"2024-05-08T17:52:48.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Dont duplicate `CHECK` constraints and `DEFAULT`s when altering column type (#349)\n\nWhen a column is duplicated with a new type, check constraints and\r\ndefaults defined on the column *may* be incompatible with the new type.\r\n\r\nIn this case column duplication should not fail, but rather the\r\nincompatible constraints and defaults should be ignored and not be\r\nduplicated to the new column.\r\n\r\nThis PR changes column duplication to ignore errors on `DEFAULT` and\r\n`CHECK` constraint duplication that look as though they are caused by a\r\nchange of column type.\r\n\r\nFixes https://github.com/xataio/pgroll/issues/348","shortMessageHtmlLink":"Dont duplicate CHECK constraints and DEFAULTs when altering colum…"}},{"before":"549d0cfc92b2239d25bd230f1eac773562245b28","after":"54e27635a04eee625dde2cca2b2476123808f620","ref":"refs/heads/dont-duplicate-incompatible-constraints","pushedAt":"2024-05-08T15:01:15.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Test for non-duplication of incompatible checks\n\nWhen changing a column type, incompatible checks should be removed\nfrom the column.","shortMessageHtmlLink":"Test for non-duplication of incompatible checks"}},{"before":"1d7e9496024a22e852c539cf3b30fff3864eadef","after":null,"ref":"refs/heads/retry-on-ddl-lock-timeouts","pushedAt":"2024-05-08T14:54:28.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"}},{"before":"4f0a71561315deb961e48a142506d3c5baea87de","after":"5c1aef2f24f3317b1406e75906d7ef58a1639a71","ref":"refs/heads/main","pushedAt":"2024-05-08T14:54:27.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Retry on `lock_timeout` errors (#353)\n\nRetry statements and transactions that fail due to `lock_timeout`\r\nerrors.\r\n\r\nDDL operations and backfills are run in a session in which `SET\r\nlock_timout TO xms'` has been set (`x` defaults to `500` but can be\r\nspecified with the `--lock-timeout` parameter). This ensures that a long\r\nrunning query can't cause other queries to queue up behind a DDL\r\noperation as it waits to acquire its lock.\r\n\r\nThe current behaviour if a DDL operation or backfill batch times out\r\nwhen requesting a lock is to fail, forcing the user to retry the\r\nmigration operation (start, rollback, or complete).\r\n\r\nThis PR retries individual statements (like the DDL operations run by\r\nmigration operations) and transactions (used by backfills) if they fail\r\ndue to a `lock_timeout` error. The retry uses an exponential backoff\r\nwith jitter.\r\n\r\nFixes #171","shortMessageHtmlLink":"Retry on lock_timeout errors (#353)"}},{"before":"f0d1f42caaf54d5383dc50c28814f63c8ae5132a","after":"1d7e9496024a22e852c539cf3b30fff3864eadef","ref":"refs/heads/retry-on-ddl-lock-timeouts","pushedAt":"2024-05-08T12:45:56.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Add tests for retryable operations","shortMessageHtmlLink":"Add tests for retryable operations"}},{"before":"bc266e7f8182faf1f997d3ab41e3a3bffa2fdc25","after":"f0d1f42caaf54d5383dc50c28814f63c8ae5132a","ref":"refs/heads/retry-on-ddl-lock-timeouts","pushedAt":"2024-05-08T12:43:52.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Add tests for retryable operations","shortMessageHtmlLink":"Add tests for retryable operations"}},{"before":null,"after":"bc266e7f8182faf1f997d3ab41e3a3bffa2fdc25","ref":"refs/heads/retry-on-ddl-lock-timeouts","pushedAt":"2024-05-08T12:43:30.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Add tests for retryable operations","shortMessageHtmlLink":"Add tests for retryable operations"}},{"before":"c7b765daef9d959d8275dcfb0c2728259f2e8a75","after":"549d0cfc92b2239d25bd230f1eac773562245b28","ref":"refs/heads/dont-duplicate-incompatible-constraints","pushedAt":"2024-05-07T10:19:23.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Test for non-duplication of incompatible checks\n\nWhen changing a column type, incompatible checks should be removed\nfrom the column.","shortMessageHtmlLink":"Test for non-duplication of incompatible checks"}},{"before":"182a04a05e1556f0712f24eb597f7eefdb14a41d","after":"ab2cf79a68970d7687e10c4494c4f905ba62253e","ref":"refs/heads/temp/investigate-up-down-change-type","pushedAt":"2024-05-03T11:46:41.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Update example migration","shortMessageHtmlLink":"Update example migration"}},{"before":null,"after":"182a04a05e1556f0712f24eb597f7eefdb14a41d","ref":"refs/heads/temp/investigate-up-down-change-type","pushedAt":"2024-05-03T11:44:19.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Update example migration","shortMessageHtmlLink":"Update example migration"}},{"before":"081d51620704d5cab92c8acbde1da1c064816205","after":"c7b765daef9d959d8275dcfb0c2728259f2e8a75","ref":"refs/heads/dont-duplicate-incompatible-constraints","pushedAt":"2024-05-03T06:32:56.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Update test expectations for changing column type\n\nPreviously, we tested that changing a column type preserved the default\nand check constraints on the column. We now want to reverse this\ndecision and test that they are *not* preserved.","shortMessageHtmlLink":"Update test expectations for changing column type"}},{"before":null,"after":"081d51620704d5cab92c8acbde1da1c064816205","ref":"refs/heads/dont-duplicate-incompatible-constraints","pushedAt":"2024-05-03T06:24:57.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"},"commit":{"message":"Updte test expectations for changing column type\n\nPreviously, we tested that changing a column type preserved the default\nand check constraints on the column. We now want to reverse this\ndecision and test that they are *not* preserved.","shortMessageHtmlLink":"Updte test expectations for changing column type"}},{"before":"b16c7c605e14abf870a618e5249650e2ec36ce29","after":null,"ref":"refs/heads/allow-setting-comment-to-null","pushedAt":"2024-04-29T12:23:30.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"andrew-farries","name":"Andrew Farries","path":"/andrew-farries","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8225907?s=80&v=4"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEUMhITQA","startCursor":null,"endCursor":null}},"title":"Activity · xataio/pgroll"}