1. 20 Feb, 2005 2 commits
    • Tom Lane's avatar
      Flat file cleanup phase 2: make it work for pg_group. The flat group · 3f9aec50
      Tom Lane authored
      file now identifies group members by usesysid not name; this avoids
      needing to depend on SearchSysCache which we can't use during startup.
      (The old representation was entirely broken anyway, since we did not
      regenerate the file following RENAME USER.)  It's only a 95% solution
      because if the group membership list is big enough to be toasted out
      of line, we cannot read it during startup.  I think this will do for
      the moment, until we have time to implement the planned pg_role
      replacement for pg_group.
      3f9aec50
    • 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
  2. 19 Feb, 2005 4 commits
  3. 18 Feb, 2005 1 commit
  4. 15 Feb, 2005 9 commits
  5. 14 Feb, 2005 6 commits
  6. 13 Feb, 2005 5 commits
  7. 12 Feb, 2005 1 commit
  8. 11 Feb, 2005 6 commits
  9. 10 Feb, 2005 6 commits