Skip to content
Snippets Groups Projects
  1. Mar 08, 2005
  2. Mar 07, 2005
  3. Mar 04, 2005
    • Tom Lane's avatar
      Replace the BufMgrLock with separate locks on the lookup hashtable and · 5d508736
      Tom Lane authored
      the freelist, plus per-buffer spinlocks that protect access to individual
      shared buffer headers.  This requires abandoning a global freelist (since
      the freelist is a global contention point), which shoots down ARC and 2Q
      as well as plain LRU management.  Adopt a clock sweep algorithm instead.
      Preliminary results show substantial improvement in multi-backend situations.
      5d508736
  4. Mar 02, 2005
  5. Feb 28, 2005
  6. Feb 27, 2005
  7. Feb 26, 2005
  8. Feb 25, 2005
  9. Feb 22, 2005
  10. Feb 21, 2005
  11. Feb 20, 2005
    • Tom Lane's avatar
      Add code to prevent transaction ID wraparound by enforcing a safe limit · 60b2444c
      Tom Lane authored
      in GetNewTransactionId().  Since the limit value has to be computed
      before we run any real transactions, this requires adding code to database
      startup to scan pg_database and determine the oldest datfrozenxid.
      This can conveniently be combined with the first stage of an attack on
      the problem that the 'flat file' copies of pg_shadow and pg_group are
      not properly updated during WAL recovery.  The code I've added to
      startup resides in a new file src/backend/utils/init/flatfiles.c, and
      it is responsible for rewriting the flat files as well as initializing
      the XID wraparound limit value.  This will eventually allow us to get
      rid of GetRawDatabaseInfo too, but we'll need an initdb so we can add
      a trigger to pg_database.
      60b2444c
  12. Feb 19, 2005
  13. Feb 15, 2005
  14. Feb 14, 2005
  15. Feb 13, 2005
  16. Feb 11, 2005
  17. Feb 10, 2005
Loading