PG Bug reporting form <noreply(at)postgresql(dot)org> writes:
> In PostgreSQL 17, I’m encountering an error when creating a MATERIALIZED
> VIEW that uses a STABLE function returning jsonb, followed by LATERAL joins
> using jsonb_each() and jsonb_to_record().
> The view creation fails with:
> ERROR: relation "test_table" does not exist
What this looks like is a search_path problem. Per the first
incompatibility point in the v17 release notes, materialized view
refresh now runs the view query with a "safe" search_path that
doesn't include the public schema. So you need to schema-qualify
that reference, or else modify the function to use a "SET search_path"
clause.
regards, tom lane