mirror of
https://github.com/postgres/postgres.git
synced 2025-06-14 18:42:34 +03:00
This patch wraps all accesses to t_xmin, t_cmin, t_xmax, and t_cmax in
HeapTupleHeaderData in setter and getter macros called HeapTupleHeaderGetXmin, HeapTupleHeaderSetXmin etc. It also introduces a "virtual" field xvac by defining HeapTupleHeaderGetXvac and HeapTupleHeaderSetXvac. Xvac is used by VACUUM, in fact it is stored in t_cmin. Manfred Koizar
This commit is contained in:
@ -29,7 +29,7 @@
|
||||
* MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/pl/plpython/plpython.c,v 1.17 2002/03/29 19:06:27 tgl Exp $
|
||||
* $Header: /cvsroot/pgsql/src/pl/plpython/plpython.c,v 1.18 2002/06/15 19:54:24 momjian Exp $
|
||||
*
|
||||
*********************************************************************
|
||||
*/
|
||||
@ -1030,8 +1030,8 @@ PLy_procedure_get(FunctionCallInfo fcinfo, bool is_trigger)
|
||||
if (proc->me != plproc)
|
||||
elog(FATAL, "plpython: Aiieee, proc->me != plproc");
|
||||
/* did we find an up-to-date cache entry? */
|
||||
if (proc->fn_xmin != procTup->t_data->t_xmin ||
|
||||
proc->fn_cmin != procTup->t_data->t_cmin)
|
||||
if (proc->fn_xmin != HeapTupleHeaderGetXmin(procTup->t_data) ||
|
||||
proc->fn_cmin != HeapTupleHeaderGetCmin(procTup->t_data))
|
||||
{
|
||||
Py_DECREF(plproc);
|
||||
proc = NULL;
|
||||
@ -1075,8 +1075,8 @@ PLy_procedure_create(FunctionCallInfo fcinfo, bool is_trigger,
|
||||
proc = PLy_malloc(sizeof(PLyProcedure));
|
||||
proc->proname = PLy_malloc(strlen(procName) + 1);
|
||||
strcpy(proc->proname, procName);
|
||||
proc->fn_xmin = procTup->t_data->t_xmin;
|
||||
proc->fn_cmin = procTup->t_data->t_cmin;
|
||||
proc->fn_xmin = HeapTupleHeaderGetXmin(procTup->t_data);
|
||||
proc->fn_cmin = HeapTupleHeaderGetCmin(procTup->t_data);
|
||||
PLy_typeinfo_init(&proc->result);
|
||||
for (i = 0; i < FUNC_MAX_ARGS; i++)
|
||||
PLy_typeinfo_init(&proc->args[i]);
|
||||
|
Reference in New Issue
Block a user