Open kripasreenivasan opened 1 year ago
Simplified repro:
-- setup
create table t1 as select * from generate_series(1,10000) as col;
create materialized view mv1 as select * from t1 where col > 500;
-- connection 1
BEGIN;
select * from mv1 limit 10;
-- connection 2
refresh materialized view mv1;
-- connection 1
select * from mv1 limit 10;
ERROR: Not found: The object ‘000033e8000030008000000000000000.mv1’ does not exist: OBJECT_NOT_FOUND
CONTEXT: Catalog Version Mismatch: A DDL occurred while processing this query. Try again.
Just a note to illustrate the impact of this. I was going to use materialized views to cache some foreign data wrapper tables. But I cannot refresh them while our system is receiving queries so basically that rules materialized views out for our system.
Instead I'm having to resort to uglier cache tables which have to be maintained by code.
So this issue is pretty big for some people
Jira Link: DB-5146
Description
Execute
on LST code containing materialized views.