diff --git a/src/backend/rewrite/rewriteHandler.c b/src/backend/rewrite/rewriteHandler.c new file mode 100644 index a467588..085e22b *** a/src/backend/rewrite/rewriteHandler.c --- b/src/backend/rewrite/rewriteHandler.c *************** rewriteTargetView(Query *parsetree, Rela *** 2387,2392 **** --- 2387,2401 ---- new_rte = (RangeTblEntry *) copyObject(base_rte); parsetree->rtable = lappend(parsetree->rtable, new_rte); new_rt_index = list_length(parsetree->rtable); + new_rte->inFromCl = view_rte->inFromCl; + + /* + * Only use inheritance for the new target RTE if it was requested in the + * outer query *and* in the view query. If the outer query didn't request + * inheritance, or the view query doesn't include inherited relations, then + * we shouldn't include any relations inherited by the new target RTE. + */ + new_rte->inh = view_rte->inh && base_rte->inh; /* * Make a copy of the view's targetlist, adjusting its Vars to reference