Index: src/backend/optimizer/prep/prepjointree.c
===================================================================
RCS file: /home/hlinnaka/pgcvsrepository/pgsql/src/backend/optimizer/prep/prepjointree.c,v
retrieving revision 1.44
diff -c -r1.44 prepjointree.c
*** src/backend/optimizer/prep/prepjointree.c	4 Oct 2006 00:29:54 -0000	1.44
--- src/backend/optimizer/prep/prepjointree.c	11 Aug 2008 19:54:30 -0000
***************
*** 487,492 ****
--- 487,500 ----
  	pull_up_union_leaf_queries(subquery->setOperations, root, varno, subquery);
  
  	/*
+ 	 * pull_up_union_leaf_queries copied those range table entries that were
+ 	 * referenced from one of the UNION ALL subqueries, but we need to make
+ 	 * sure that all non-referenced ones are copied as well. They are needed
+ 	 * for permission checks during executor startup (ExecCheckRTPerms).
+ 	 */
+ 	root->parse->rtable = list_union(root->parse->rtable, subquery->rtable);
+ 
+ 	/*
  	 * Mark the parent as an append relation.
  	 */
  	rte->inh = true;
