postgresql/src/backend/utils
Marc G. Fournier 6c7c6d0c05 From: Jan Wieck <jwieck@debis.com>
The diff looks so simple and easy. But to find it wasn't fun.

    It must have been there for a long time. What happened:

    When a tuple in one of some central catalogs was updated, the
    referenced  relation  got flushed, so it would be reopened on
    the next access (to reflect new  triggers,  rules  and  table
    structure changes into the relation cache).

    Some  data  (the  tupleDescriptor e.g.) is used in the system
    cache too. So when a relation is subject to the system cache,
    this  must know too that a cached system relation got flushed
    because the tupleDesc data gets freed during the flush!

    For the GRANT/REVOKE on pg_class it was  slightly  different.
    There  is some local data in inval.c that gets initialized on
    the first invalidation of a tuple in some  central  catalogs.
    This  needs a SysCache lookup in pg_class. But when the first
    of all commands is a GRANT on pg_class,  exactly  the  needed
    tuple is the one actually invalidated. So I added little code
    snippets that the initialization of the  local  variables  in
    inval.c will already happen during InitPostgres().
1998-02-23 17:44:24 +00:00
..
adt From: Tom I Helbekkmo <tih@Hamartun.Priv.NO> 1998-02-14 18:00:37 +00:00
cache From: Jan Wieck <jwieck@debis.com> 1998-02-23 17:44:24 +00:00
error Goodbye register keyword. Compiler knows better. 1998-02-11 19:14:04 +00:00
fmgr Goodbye register keyword. Compiler knows better. 1998-02-11 19:14:04 +00:00
hash Goodbye register keyword. Compiler knows better. 1998-02-11 19:14:04 +00:00
init From: Jan Wieck <jwieck@debis.com> 1998-02-23 17:44:24 +00:00
misc Inline fastgetattr and others so data access does not use function 1998-01-31 04:39:26 +00:00
mmgr Goodbye register keyword. Compiler knows better. 1998-02-11 19:14:04 +00:00
sort ExecReScan for Unique & Sort nodes. 1998-02-23 06:28:16 +00:00
time Major cleanout of PORTNAME variables from Makefiles...bound to screw up 1997-12-20 00:29:35 +00:00
Gen_fmgrtab.sh.in fmgr_faddr cleanup 1998-01-31 05:54:57 +00:00
Makefile Major cleanout of PORTNAME variables from Makefiles...bound to screw up 1997-12-20 00:29:35 +00:00