1. 20 6月, 2001 3 次提交
    • T
      Add IS UNKNOWN, IS NOT UNKNOWN boolean tests, fix the existing boolean · 116d2bba
      Tom Lane 提交于
      tests to return the correct results per SQL9x when given NULL inputs.
      Reimplement these tests as well as IS [NOT] NULL to have their own
      expression node types, instead of depending on special functions.
      From Joe Conway, with a little help from Tom Lane.
      116d2bba
    • T
      Fix badly broken RelationGetRelationName(). · 8c30aca2
      Tom Lane 提交于
      8c30aca2
    • T
      Clean up some longstanding problems in shared-cache invalidation. · bbbc00af
      Tom Lane 提交于
      SI messages now include the relevant database OID, so that operations
      in one database do not cause useless cache flushes in backends attached
      to other databases.  Declare SI messages properly using a union, to
      eliminate the former assumption that Oid is the same size as int or Index.
      Rewrite the nearly-unreadable code in inval.c, and document it better.
      Arrange for catcache flushes at end of command/transaction to happen before
      relcache flushes do --- this avoids loading a new tuple into the catcache
      while setting up new relcache entry, only to have it be flushed again
      immediately.
      bbbc00af
  2. 19 6月, 2001 15 次提交
  3. 18 6月, 2001 3 次提交
    • T
      Do some restructuring to improve performance of the catcaches. Teach · 2c5aa2ac
      Tom Lane 提交于
      CatalogCacheFlushRelation (formerly called SystemCacheRelationFlushed)
      how to distinguish tuples it should flush from those it needn't; this
      means a relcache flush event now only removes the catcache entries
      it ought to, rather than zapping the caches completely as it used to.
      Testing with the regression tests indicates that this considerably
      improves the lifespan of catcache entries.  Also, rearrange catcache
      data structures so that the limit on number of cached tuples applies
      globally across all the catcaches, rather than being per-catcache.
      It was a little silly to have the same size limit on both, say,
      pg_attribute caches and pg_am caches (there being only four possible
      rows in the latter...).  Doing LRU removal across all the caches
      instead of locally in each one should reduce cache reload traffic
      in the more heavily used caches and improve the efficiency of
      cache memory use.
      2c5aa2ac
    • H
    • T
      Keep the list of to-be-NOTIFYed names in a plain List palloc'd in · 6054b332
      Tom Lane 提交于
      TopTransactionContext, rather than using Dllist.  This simplifies and
      speeds up the code, and eliminates a former risk of coredump when
      out of memory (since the old code didn't bother to check for malloc
      failure).  It also moves us one step closer to retiring Dllist...
      6054b332
  4. 17 6月, 2001 3 次提交
  5. 16 6月, 2001 1 次提交
  6. 15 6月, 2001 5 次提交
  7. 14 6月, 2001 10 次提交