index 672245ded7a30bbe9d5bc905ca68261fefc2c80e..bdf8ec46e2b234241274bf76edca43681ae815db 100644 (file)
@@ -58,7 +58,6 @@ static int extractRemainingColumns(ParseNamespaceColumn *src_nscolumns,
List **res_colnames, List **res_colvars,
ParseNamespaceColumn *res_nscolumns);
static Node *transformJoinUsingClause(ParseState *pstate,
- RangeTblEntry *leftRTE, RangeTblEntry *rightRTE,
List *leftVars, List *rightVars);
static Node *transformJoinOnClause(ParseState *pstate, JoinExpr *j,
List *namespace);
@@ -302,7 +301,6 @@ extractRemainingColumns(ParseNamespaceColumn *src_nscolumns,
*/
static Node *
transformJoinUsingClause(ParseState *pstate,
- RangeTblEntry *leftRTE, RangeTblEntry *rightRTE,
List *leftVars, List *rightVars)
{
Node *result;
@@ -325,8 +323,8 @@ transformJoinUsingClause(ParseState *pstate,
A_Expr *e;
/* Require read access to the join variables */
- markVarForSelectPriv(pstate, lvar, leftRTE);
- markVarForSelectPriv(pstate, rvar, rightRTE);
+ markVarForSelectPriv(pstate, lvar);
+ markVarForSelectPriv(pstate, rvar);
/* Now create the lvar = rvar join condition */
e = makeSimpleA_Expr(AEXPR_OP, "=",
@@ -1411,8 +1409,6 @@ transformFromClauseItem(ParseState *pstate, Node *n,
}
j->quals = transformJoinUsingClause(pstate,
- l_nsitem->p_rte,
- r_nsitem->p_rte,
l_usingvars,
r_usingvars);
}
index 6c87783b2c788de1ee6d322e63e874f3bbb978b2..f869e159d63f7d1a4a3c29c36692da43d0491a96 100644 (file)
@@ -2525,7 +2525,7 @@ transformWholeRowRef(ParseState *pstate, ParseNamespaceItem *nsitem,
result->location = location;
/* mark relation as requiring whole-row SELECT access */
- markVarForSelectPriv(pstate, result, nsitem->p_rte);
+ markVarForSelectPriv(pstate, result);
return (Node *) result;
}
index d0ec95c77986ef747348eb903454c79df6f37ae9..ca02982e0b367ec58216b5ea4aa9674cf5ff90cb 100644 (file)
@@ -740,7 +740,7 @@ scanNSItemForColumn(ParseState *pstate, ParseNamespaceItem *nsitem,
var->location = location;
/* Require read access to the column */
- markVarForSelectPriv(pstate, var, rte);
+ markVarForSelectPriv(pstate, var);
return (Node *) var;
}
@@ -1074,11 +1074,9 @@ markRTEForSelectPriv(ParseState *pstate, int rtindex, AttrNumber col)
* markVarForSelectPriv
* Mark the RTE referenced by the Var as requiring SELECT privilege
* for the Var's column (the Var could be a whole-row Var, too)
- *
- * The rte argument is unused and will be removed later.
*/
void
-markVarForSelectPriv(ParseState *pstate, Var *var, RangeTblEntry *rte)
+markVarForSelectPriv(ParseState *pstate, Var *var)
{
Index lv;
@@ -3123,7 +3121,7 @@ expandNSItemAttrs(ParseState *pstate, ParseNamespaceItem *nsitem,
te_list = lappend(te_list, te);
/* Require read access to each column */
- markVarForSelectPriv(pstate, varnode, rte);
+ markVarForSelectPriv(pstate, varnode);
}
Assert(name == NULL && var == NULL); /* lists not the same length? */
index f582665aeae659ec5039a48e74044349684c1b45..6e8fbc4780193646e6c3492d7ac70bbb54beb624 100644 (file)
@@ -1397,7 +1397,7 @@ ExpandSingleTable(ParseState *pstate, ParseNamespaceItem *nsitem,
{
Var *var = (Var *) lfirst(l);
- markVarForSelectPriv(pstate, var, rte);
+ markVarForSelectPriv(pstate, var);
}
return vars;
index 35e64070a89af69c8be21fea12d1270ec735e3ab..5dbe5ba2e27027daf46e72571d27cf712dd9a239 100644 (file)
@@ -41,8 +41,7 @@ extern Node *scanNSItemForColumn(ParseState *pstate, ParseNamespaceItem *nsitem,
int location);
extern Node *colNameToVar(ParseState *pstate, const char *colname, bool localonly,
int location);
-extern void markVarForSelectPriv(ParseState *pstate, Var *var,
- RangeTblEntry *rte);
+extern void markVarForSelectPriv(ParseState *pstate, Var *var);
extern Relation parserOpenTable(ParseState *pstate, const RangeVar *relation,
int lockmode);
extern ParseNamespaceItem *addRangeTableEntry(ParseState *pstate,