mirror of
https://github.com/postgres/postgres.git
synced 2025-09-09 13:09:39 +03:00
Backpatch SearchSysCacheTupleCopy fix for init_fcache.
This commit is contained in:
11
src/backend/utils/cache/fcache.c
vendored
11
src/backend/utils/cache/fcache.c
vendored
@@ -8,12 +8,13 @@
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/backend/utils/cache/Attic/fcache.c,v 1.30 2000/04/12 17:15:53 momjian Exp $
|
* $Header: /cvsroot/pgsql/src/backend/utils/cache/Attic/fcache.c,v 1.30.2.1 2000/06/06 17:45:05 tgl Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
#include "postgres.h"
|
#include "postgres.h"
|
||||||
|
|
||||||
|
#include "access/heapam.h"
|
||||||
#include "catalog/pg_language.h"
|
#include "catalog/pg_language.h"
|
||||||
#include "catalog/pg_proc.h"
|
#include "catalog/pg_proc.h"
|
||||||
#include "catalog/pg_type.h"
|
#include "catalog/pg_type.h"
|
||||||
@@ -89,9 +90,9 @@ init_fcache(Oid foid,
|
|||||||
if (!use_syscache)
|
if (!use_syscache)
|
||||||
elog(ERROR, "what the ????, init the fcache without the catalogs?");
|
elog(ERROR, "what the ????, init the fcache without the catalogs?");
|
||||||
|
|
||||||
procedureTuple = SearchSysCacheTuple(PROCOID,
|
procedureTuple = SearchSysCacheTupleCopy(PROCOID,
|
||||||
ObjectIdGetDatum(foid),
|
ObjectIdGetDatum(foid),
|
||||||
0, 0, 0);
|
0, 0, 0);
|
||||||
|
|
||||||
if (!HeapTupleIsValid(procedureTuple))
|
if (!HeapTupleIsValid(procedureTuple))
|
||||||
elog(ERROR, "init_fcache: Cache lookup failed for procedure %u",
|
elog(ERROR, "init_fcache: Cache lookup failed for procedure %u",
|
||||||
@@ -259,6 +260,8 @@ init_fcache(Oid foid,
|
|||||||
else
|
else
|
||||||
retval->func.fn_addr = (func_ptr) NULL;
|
retval->func.fn_addr = (func_ptr) NULL;
|
||||||
|
|
||||||
|
heap_freetuple(procedureTuple);
|
||||||
|
|
||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user