OSDN Git Service

Please apply the patch at the end. Disables use of system
authorBruce Momjian <bruce@momjian.us>
Fri, 2 Oct 1998 21:53:39 +0000 (21:53 +0000)
committerBruce Momjian <bruce@momjian.us>
Fri, 2 Oct 1998 21:53:39 +0000 (21:53 +0000)
    columns of views at all (not only oid, cmin etc. too).
    pgsql=> select cmin from pg_rules;
    ERROR:  system column cmin not available - pg_rules is a view
    pgsql=> select * from pg_rules where pg_rules.oid = pg_class.oid;
    ERROR:  system column oid not available - pg_rules is a view
    pgsql=>

Jan

src/backend/rewrite/rewriteHandler.c

index 0bbeeb0..a591050 100644 (file)
@@ -6,7 +6,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/rewrite/rewriteHandler.c,v 1.22 1998/10/02 16:27:47 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/rewrite/rewriteHandler.c,v 1.23 1998/10/02 21:53:39 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -1777,6 +1777,8 @@ apply_RIR_view(Node **nodePtr, int rt_index, RangeTblEntry *rte, List *tlist, in
                                                var->varno == rt_index) {
                                        Node            *exp;
 
+                                       if (var->varattno < 0)
+                                               elog(ERROR, "system column %s not available - %s is a view", get_attname(rte->relid, var->varattno), rte->relname);
                                        exp = FindMatchingTLEntry(
                                                        tlist,
                                                        get_attname(rte->relid,