Hopefully this will forestall future confusion about their roles.
Jonah Harris
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/pl/plpgsql/src/gram.y,v 1.115 2008/09/10 01:09:45 tgl Exp $
+ * $PostgreSQL: pgsql/src/pl/plpgsql/src/gram.y,v 1.116 2008/11/05 00:07:53 tgl Exp $
*
*-------------------------------------------------------------------------
*/
if ($5 == NULL)
new->cursor_explicit_argrow = -1;
else
- new->cursor_explicit_argrow = $5->rowno;
+ new->cursor_explicit_argrow = $5->dno;
new->cursor_options = CURSOR_OPT_FAST_PLAN | $2;
}
;
| T_ROW
{
check_assignable((PLpgSQL_datum *) yylval.row);
- $$ = yylval.row->rowno;
+ $$ = yylval.row->dno;
}
| T_RECORD
{
check_assignable((PLpgSQL_datum *) yylval.rec);
- $$ = yylval.rec->recno;
+ $$ = yylval.rec->dno;
}
| assign_var '[' expr_until_rightbracket
{
new->cmd_type = PLPGSQL_STMT_FORC;
new->lineno = $1;
- new->curvar = cursor->varno;
+ new->curvar = cursor->dno;
/* Should have had a single variable name */
plpgsql_error_lineno = $2.lineno;
new = palloc0(sizeof(PLpgSQL_stmt_open));
new->cmd_type = PLPGSQL_STMT_OPEN;
new->lineno = $2;
- new->curvar = $3->varno;
+ new->curvar = $3->dno;
new->cursor_options = CURSOR_OPT_FAST_PLAN;
if ($3->cursor_explicit_expr == NULL)
fetch->lineno = $2;
fetch->rec = rec;
fetch->row = row;
- fetch->curvar = $4->varno;
+ fetch->curvar = $4->dno;
fetch->is_move = false;
$$ = (PLpgSQL_stmt *)fetch;
PLpgSQL_stmt_fetch *fetch = $3;
fetch->lineno = $2;
- fetch->curvar = $4->varno;
+ fetch->curvar = $4->dno;
fetch->is_move = true;
$$ = (PLpgSQL_stmt *)fetch;
new = palloc(sizeof(PLpgSQL_stmt_close));
new->cmd_type = PLPGSQL_STMT_CLOSE;
new->lineno = $2;
- new->curvar = $3->varno;
+ new->curvar = $3->dno;
$$ = (PLpgSQL_stmt *)new;
}
case T_ROW:
snprintf(buf, sizeof(buf), " $%d ",
- assign_expr_param(yylval.row->rowno,
+ assign_expr_param(yylval.row->dno,
params, &nparams));
plpgsql_dstring_append(&ds, buf);
break;
case T_RECORD:
snprintf(buf, sizeof(buf), " $%d ",
- assign_expr_param(yylval.rec->recno,
+ assign_expr_param(yylval.rec->dno,
params, &nparams));
plpgsql_dstring_append(&ds, buf);
break;
case T_ROW:
snprintf(buf, sizeof(buf), " $%d ",
- assign_expr_param(yylval.row->rowno,
+ assign_expr_param(yylval.row->dno,
params, &nparams));
plpgsql_dstring_append(&ds, buf);
break;
case T_RECORD:
snprintf(buf, sizeof(buf), " $%d ",
- assign_expr_param(yylval.rec->recno,
+ assign_expr_param(yylval.rec->dno,
params, &nparams));
plpgsql_dstring_append(&ds, buf);
break;
break;
case T_ROW:
- new->retvarno = yylval.row->rowno;
+ new->retvarno = yylval.row->dno;
break;
case T_RECORD:
- new->retvarno = yylval.rec->recno;
+ new->retvarno = yylval.rec->dno;
break;
default:
switch (yylex())
{
case T_ROW:
- new->retvarno = yylval.row->rowno;
+ new->retvarno = yylval.row->dno;
break;
case T_RECORD:
- new->retvarno = yylval.rec->recno;
+ new->retvarno = yylval.rec->dno;
break;
default:
plpgsql_build_variable("*case*", lineno,
plpgsql_build_datatype(INT4OID, -1),
false);
- t_varno = t_var->varno;
+ t_varno = t_var->dno;
new->t_varno = t_varno;
foreach(l, case_when_list)
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/pl/plpgsql/src/pl_comp.c,v 1.131 2008/10/09 16:35:07 tgl Exp $
+ * $PostgreSQL: pgsql/src/pl/plpgsql/src/pl_comp.c,v 1.132 2008/11/05 00:07:53 tgl Exp $
*
*-------------------------------------------------------------------------
*/
num_out_args);
plpgsql_adddatum((PLpgSQL_datum *) row);
- function->out_param_varno = row->rowno;
+ function->out_param_varno = row->dno;
}
/*
/* Add the record for referencing NEW */
rec = plpgsql_build_record("new", 0, true);
- function->new_varno = rec->recno;
+ function->new_varno = rec->dno;
/* Add the record for referencing OLD */
rec = plpgsql_build_record("old", 0, true);
- function->old_varno = rec->recno;
+ function->old_varno = rec->dno;
/* Add the variable tg_name */
var = plpgsql_build_variable("tg_name", 0,
plpgsql_adddatum((PLpgSQL_datum *) var);
if (add2namespace)
plpgsql_ns_additem(PLPGSQL_NSTYPE_VAR,
- var->varno,
+ var->dno,
refname);
result = (PLpgSQL_variable *) var;
break;
plpgsql_adddatum((PLpgSQL_datum *) row);
if (add2namespace)
plpgsql_ns_additem(PLPGSQL_NSTYPE_ROW,
- row->rowno,
+ row->dno,
refname);
result = (PLpgSQL_variable *) row;
break;
rec->freetup = false;
plpgsql_adddatum((PLpgSQL_datum *) rec);
if (add2namespace)
- plpgsql_ns_additem(PLPGSQL_NSTYPE_REC, rec->recno, rec->refname);
+ plpgsql_ns_additem(PLPGSQL_NSTYPE_REC, rec->dno, rec->refname);
return rec;
}
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/pl/plpgsql/src/pl_exec.c,v 1.223 2008/11/02 01:45:28 tgl Exp $
+ * $PostgreSQL: pgsql/src/pl/plpgsql/src/pl_exec.c,v 1.224 2008/11/05 00:07:54 tgl Exp $
*
*-------------------------------------------------------------------------
*/
bool found = false;
int rc = PLPGSQL_RC_OK;
- var = (PLpgSQL_var *) (estate->datums[stmt->var->varno]);
+ var = (PLpgSQL_var *) (estate->datums[stmt->var->dno]);
/*
* Get the value of the lower bound
/* Determine if we assign to a record or a row */
if (stmt->rec != NULL)
- rec = (PLpgSQL_rec *) (estate->datums[stmt->rec->recno]);
+ rec = (PLpgSQL_rec *) (estate->datums[stmt->rec->dno]);
else if (stmt->row != NULL)
- row = (PLpgSQL_row *) (estate->datums[stmt->row->rowno]);
+ row = (PLpgSQL_row *) (estate->datums[stmt->row->dno]);
else
elog(ERROR, "unsupported target");
/* Determine if we assign to a record or a row */
if (stmt->rec != NULL)
- rec = (PLpgSQL_rec *) (estate->datums[stmt->rec->recno]);
+ rec = (PLpgSQL_rec *) (estate->datums[stmt->rec->dno]);
else if (stmt->row != NULL)
- row = (PLpgSQL_row *) (estate->datums[stmt->row->rowno]);
+ row = (PLpgSQL_row *) (estate->datums[stmt->row->dno]);
else
elog(ERROR, "unsupported target");
* ----------
*/
if (stmt->rec != NULL)
- rec = (PLpgSQL_rec *) (estate->datums[stmt->rec->recno]);
+ rec = (PLpgSQL_rec *) (estate->datums[stmt->rec->dno]);
else if (stmt->row != NULL)
- row = (PLpgSQL_row *) (estate->datums[stmt->row->rowno]);
+ row = (PLpgSQL_row *) (estate->datums[stmt->row->dno]);
else
elog(ERROR, "unsupported target");
* Determine if we assign to a record or a row
*/
if (stmt->rec != NULL)
- rec = (PLpgSQL_rec *) (estate->datums[stmt->rec->recno]);
+ rec = (PLpgSQL_rec *) (estate->datums[stmt->rec->dno]);
else if (stmt->row != NULL)
- row = (PLpgSQL_row *) (estate->datums[stmt->row->rowno]);
+ row = (PLpgSQL_row *) (estate->datums[stmt->row->dno]);
else
elog(ERROR, "unsupported target");
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/pl/plpgsql/src/pl_funcs.c,v 1.73 2008/08/29 13:02:33 petere Exp $
+ * $PostgreSQL: pgsql/src/pl/plpgsql/src/pl_funcs.c,v 1.74 2008/11/05 00:07:54 tgl Exp $
*
*-------------------------------------------------------------------------
*/
if (stmt->rec != NULL)
{
dump_ind();
- printf(" target = %d %s\n", stmt->rec->recno, stmt->rec->refname);
+ printf(" target = %d %s\n", stmt->rec->dno, stmt->rec->refname);
}
if (stmt->row != NULL)
{
dump_ind();
- printf(" target = %d %s\n", stmt->row->rowno, stmt->row->refname);
+ printf(" target = %d %s\n", stmt->row->dno, stmt->row->refname);
}
dump_indent -= 2;
}
dump_ind();
printf(" INTO%s target = %d %s\n",
stmt->strict ? " STRICT" : "",
- stmt->rec->recno, stmt->rec->refname);
+ stmt->rec->dno, stmt->rec->refname);
}
if (stmt->row != NULL)
{
dump_ind();
printf(" INTO%s target = %d %s\n",
stmt->strict ? " STRICT" : "",
- stmt->row->rowno, stmt->row->refname);
+ stmt->row->dno, stmt->row->refname);
}
dump_indent -= 2;
}
dump_ind();
printf(" INTO%s target = %d %s\n",
stmt->strict ? " STRICT" : "",
- stmt->rec->recno, stmt->rec->refname);
+ stmt->rec->dno, stmt->rec->refname);
}
if (stmt->row != NULL)
{
dump_ind();
printf(" INTO%s target = %d %s\n",
stmt->strict ? " STRICT" : "",
- stmt->row->rowno, stmt->row->refname);
+ stmt->row->dno, stmt->row->refname);
}
if (stmt->params != NIL)
{
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/pl/plpgsql/src/plpgsql.h,v 1.104 2008/11/04 21:00:15 alvherre Exp $
+ * $PostgreSQL: pgsql/src/pl/plpgsql/src/plpgsql.h,v 1.105 2008/11/05 00:07:54 tgl Exp $
*
*-------------------------------------------------------------------------
*/
typedef struct PLpgSQL_expr
{ /* SQL Query to plan and execute */
int dtype;
- int exprno;
+ int dno;
char *query;
SPIPlanPtr plan;
Oid *plan_argtypes;
typedef struct
{ /* Scalar variable */
int dtype;
- int varno;
+ int dno;
char *refname;
int lineno;
typedef struct
{ /* Row variable */
int dtype;
- int rowno;
+ int dno;
char *refname;
int lineno;
typedef struct
{ /* Record variable (non-fixed structure) */
int dtype;
- int recno;
+ int dno;
char *refname;
int lineno;
typedef struct
{ /* Field in record */
int dtype;
- int rfno;
+ int dno;
char *fieldname;
int recparentno; /* dno of parent record */
} PLpgSQL_recfield;