1. 29 Sep, 2001 1 commit
    • Tom Lane's avatar
      Implement new 'lightweight lock manager' that's intermediate between · 499abb0c
      Tom Lane authored
      existing lock manager and spinlocks: it understands exclusive vs shared
      lock but has few other fancy features.  Replace most uses of spinlocks
      with lightweight locks.  All remaining uses of spinlocks have very short
      lock hold times (a few dozen instructions), so tweak spinlock backoff
      code to work efficiently given this assumption.  All per my proposal on
      pghackers 26-Sep-01.
      499abb0c
  2. 07 Sep, 2001 1 commit
  3. 22 Mar, 2001 1 commit
  4. 24 Jan, 2001 1 commit
  5. 28 Nov, 2000 1 commit
    • Tom Lane's avatar
      Significant cleanups in SysV IPC handling (shared mem and semaphores). · c715fdea
      Tom Lane authored
      IPC key assignment will now work correctly even when multiple postmasters
      are using same logical port number (which is possible given -k switch).
      There is only one shared-mem segment per postmaster now, not 3.
      Rip out broken code for non-TAS case in bufmgr and xlog, substitute a
      complete S_LOCK emulation using semaphores in spin.c.  TAS and non-TAS
      logic is now exactly the same.
      When deadlock is detected, "Deadlock detected" is now the elog(ERROR)
      message, rather than a NOTICE that comes out before an unhelpful ERROR.
      c715fdea
  6. 21 Nov, 2000 1 commit
  7. 25 Jul, 2000 1 commit
  8. 28 Jun, 2000 1 commit
    • Tom Lane's avatar
      First phase of memory management rewrite (see backend/utils/mmgr/README · 1aebc361
      Tom Lane authored
      for details).  It doesn't really do that much yet, since there are no
      short-term memory contexts in the executor, but the infrastructure is
      in place and long-term contexts are handled reasonably.  A few long-
      standing bugs have been fixed, such as 'VACUUM; anything' in a single
      query string crashing.  Also, out-of-memory is now considered a
      recoverable ERROR, not FATAL.
      Eliminate a large amount of crufty, now-dead code in and around
      memory management.
      Fix problem with holding off SIGTRAP, SIGSEGV, etc in postmaster and
      backend startup.
      1aebc361
  9. 30 May, 2000 1 commit
  10. 12 Apr, 2000 1 commit
  11. 26 Feb, 2000 1 commit
  12. 26 Jan, 2000 1 commit
    • Bruce Momjian's avatar
      Add: · 5c25d602
      Bruce Momjian authored
        * Portions Copyright (c) 1996-2000, PostgreSQL, Inc
      
      to all files copyright Regents of Berkeley.  Man, that's a lot of files.
      5c25d602
  13. 06 Oct, 1999 1 commit
  14. 24 Sep, 1999 1 commit
    • Tom Lane's avatar
      Several changes here, not very related but touching some of the same files. · e812458b
      Tom Lane authored
      * Buffer refcount cleanup (per my "progress report" to pghackers, 9/22).
      * Add links to backend PROC structs to sinval's array of per-backend info,
      and use these links for routines that need to check the state of all
      backends (rather than the slow, complicated search of the ShmemIndex
      hashtable that was used before).  Add databaseOID to PROC structs.
      * Use this to implement an interlock that prevents DESTROY DATABASE of
      a database containing running backends.  (It's a little tricky to prevent
      a concurrently-starting backend from getting in there, since the new
      backend is not able to lock anything at the time it tries to look up
      its database in pg_database.  My solution is to recheck that the DB is
      OK at the end of InitPostgres.  It may not be a 100% solution, but it's
      a lot better than no interlock at all...)
      * In ALTER TABLE RENAME, flush buffers for the relation before doing the
      rename of the physical files, to ensure we don't get failures later from
      mdblindwrt().
      * Update TRUNCATE patch so that it actually compiles against current
      sources :-(.
      You should do "make clean all" after pulling these changes.
      e812458b
  15. 17 Jul, 1999 1 commit
  16. 15 Jul, 1999 2 commits
  17. 06 Jun, 1999 1 commit
    • Vadim B. Mikheev's avatar
      1. xact.c: update comments about changing MyProc->xid and MyProc->xmin. · 1b812d93
      Vadim B. Mikheev authored
      2. varsup.c:ReadNewTransactionId(): don't read nextXid from disk -
         this func doesn't allocate next xid, so ShmemVariableCache->nextXid
         may be used (but GetNewTransactionId() must be called first).
      3. vacuum.c: change elog(ERROR, "Child item....") to elog(NOTICE) -
         this is not ERROR, proper handling is just not implemented, yet.
      4. s_lock.c: increase S_MAX_BUSY by 2 times.
      5. shmem.c:GetSnapshotData(): have to call ReadNewTransactionId()
         _after_ SpinAcquire(ShmemIndexLock).
      1b812d93
  18. 03 Jun, 1999 1 commit
  19. 25 May, 1999 1 commit
  20. 02 Apr, 1999 1 commit
  21. 28 Mar, 1999 1 commit
    • Vadim B. Mikheev's avatar
      1. Vacuum is updated for MVCC. · fdf6be80
      Vadim B. Mikheev authored
      2. Much faster btree tuples deletion in the case when first on page
         index tuple is deleted (no movement to the left page(s)).
      3. Remember blkno of new root page in BTPageOpaque of
         left/right siblings when root page is splitted.
      fdf6be80
  22. 22 Feb, 1999 1 commit
  23. 13 Feb, 1999 1 commit
  24. 03 Feb, 1999 1 commit
  25. 18 Dec, 1998 1 commit
  26. 16 Dec, 1998 1 commit
  27. 15 Dec, 1998 1 commit
  28. 01 Sep, 1998 2 commits
  29. 27 Jul, 1998 1 commit
  30. 21 Jul, 1998 1 commit
  31. 30 Jun, 1998 1 commit
  32. 28 Jun, 1998 1 commit
  33. 27 Jun, 1998 3 commits
  34. 25 Jun, 1998 1 commit
  35. 23 Jun, 1998 1 commit
  36. 15 Jun, 1998 1 commit