fix(table editor): request fired per column when updating table (#40160)

When updating a table with many columns, a request is fired per column,
causing potential rate-limiting.

The biggest contributor is a bug in the `comment` config of each column.
If columns have no comment, we coerce the comment to an empty string,
but our column payload diff function sees this as a difference, thus
tries to set a new comment on every column. Unfortunately this is not a
one-time issue, because Postgres considers an empty comment to be null,
and corces it back to null, and on and on we go in a giant circle.

The fix is just to not coerce to empty strings on our end.

There are a few other requests that we might be able to shave, but this
is by far the noisiest one.
This commit is contained in:
Charis authored and GitHub committed 2025-11-05 11:57:49 +00:00
1 parent 5a0e1cb1cc
commit a0afa9eef2
2 files changed
+2 -2

No files matched your search

@@ -70,7 +70,7 @@ export const generateColumnFieldFromPostgresColumn = (
table: column.table, table: column.table,
schema: column.schema, schema: column.schema,
name: column.name, name: column.name,
comment: column?.comment ?? '', comment: column?.comment,
format: isArray ? column.format.slice(1) : column.format, format: isArray ? column.format.slice(1) : column.format,
defaultValue: column?.default_value as string | null, defaultValue: column?.default_value as string | null,
check: column.check, check: column.check,
@@ -46,7 +46,7 @@ export interface ColumnField {
table: string table: string
schema: string schema: string
check: string | null check: string | null
comment?: string comment?: string | null
format: string format: string
defaultValue: string | null defaultValue: string | null
foreignKey?: ExtendedPostgresRelationship foreignKey?: ExtendedPostgresRelationship