Skip to content

fix(catalog): don't discard the snapshot on an orphaned catalog row - #844

Closed
gintsgints wants to merge 2 commits into
supabase-community:mainfrom
gintsgints:select_fix2
Closed

gintsgints wants to merge 2 commits into
supabase-community:mainfrom
gintsgints:select_fix2

Conversation

@gintsgints

Copy link
Copy Markdown
Contributor

A pg_proc row whose namespace no longer exists made the functions query return a null schema, which failed to decode and discarded the entire snapshot - disabling every database-backed feature instead of only the functions.

Join the namespace, language, trigger function and trigger table as inner joins so orphaned catalog rows are skipped, and load everything but schemas, tables, columns and the version leniently: a failure is logged and yields an empty list. Typing metadata is marked incomplete when any of the objects type inference relies on failed to load, so it keeps reporting only what Postgres would certainly reject.

Fixes #842

What kind of change does this PR introduce?

Bug fix

What is the current behavior?

Please link any relevant issues here.

What is the new behavior?

Feel free to include screenshots if it includes visual changes.

Additional context

Add any other context or screenshots.

A `pg_proc` row whose namespace no longer exists made the `functions` query
return a null schema, which failed to decode and discarded the entire
snapshot - disabling every database-backed feature instead of only the
functions.

Join the namespace, language, trigger function and trigger table as inner
joins so orphaned catalog rows are skipped, and load everything but schemas,
tables, columns and the version leniently: a failure is logged and yields an
empty list. Typing metadata is marked incomplete when any of the objects type
inference relies on failed to load, so it keeps reporting only what Postgres
would certainly reject.

Fixes supabase-community#842

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@gintsgints

Copy link
Copy Markdown
Contributor Author

Please consider this as draft only

@gintsgints gintsgints closed this Oct 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Schema load fails when there is an orphan database objects

1 participant