1. 28 6月, 2001 1 次提交
    • T
      Install infrastructure for shared-memory free space map. Doesn't actually · e0c9301c
      Tom Lane 提交于
      do anything yet, but it has the necessary connections to initialization
      and so forth.  Make some gestures towards allowing number of blocks in
      a relation to be BlockNumber, ie, unsigned int, rather than signed int.
      (I doubt I got all the places that are sloppy about it, yet.)  On the
      way, replace the hardwired NLOCKS_PER_XACT fudge factor with a GUC
      variable.
      e0c9301c
  2. 26 6月, 2001 4 次提交
  3. 24 6月, 2001 3 次提交
  4. 23 6月, 2001 4 次提交
  5. 22 6月, 2001 4 次提交
  6. 21 6月, 2001 2 次提交
  7. 20 6月, 2001 3 次提交
    • B
      2e81f3d2
    • 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
      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
  8. 19 6月, 2001 4 次提交
  9. 18 6月, 2001 2 次提交
    • 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
    • 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
  10. 17 6月, 2001 3 次提交
  11. 15 6月, 2001 1 次提交
  12. 14 6月, 2001 6 次提交
  13. 13 6月, 2001 3 次提交
    • T
      Extend GUC concepts of parse_hook and assign_hook to all four supported · 2938eec7
      Tom Lane 提交于
      datatypes, not only strings.  parse_hook is useless for bool, I suppose,
      but it seems possibly useful for int and double to apply variable-specific
      constraints that are more complex than simple range limits.  assign_hook
      is definitely useful for all datatypes --- we need it right now for bool
      to support date cache reset when changing Australian timezone rule setting.
      Also, clean up some residual problems with the reset all/show all patch,
      including memory leaks and mistaken reset of PostPortNumber.  It seems
      best that RESET ALL not touch variables that don't have SUSET or
      USERSET context.
      2938eec7
    • T
      Repair problem with multi-action rules in combination with any nontrivial · 2a06b3bd
      Tom Lane 提交于
      manipulation of rtable/jointree by planner.  Rewriter was generating
      actions that shared rtable/jointree substructure, which caused havoc
      when planner got to the later actions that it'd already mucked up.
      2a06b3bd
    • B
      Back out has_table_privilege patch. · 76e9ad1f
      Bruce Momjian 提交于
      76e9ad1f