1. 06 Jul, 2006 1 commit
  2. 26 Jun, 2006 1 commit
  3. 24 Jun, 2006 1 commit
  4. 07 Jun, 2006 1 commit
    • Bruce Momjian's avatar
      Prepare code to be built by MSVC: · 399a36a7
      Bruce Momjian authored
      	o  remove many WIN32_CLIENT_ONLY defines
      	o  add WIN32_ONLY_COMPILER define
      	o  add 3rd argument to open() for portability
      	o  add include/port/win32_msvc directory for
      	   system includes
      
      Magnus Hagander
      399a36a7
  5. 28 May, 2006 1 commit
    • Tom Lane's avatar
      Fix up pg_dump to do string escaping fully correctly for client encoding · 134b463f
      Tom Lane authored
      and standard_conforming_strings; likewise for the other client programs
      that need it.  As per previous discussion, a pg_dump dump now conforms
      to the standard_conforming_strings setting of the source database.
      We don't use E'' syntax in the dump, thereby improving portability of
      the SQL.  I added a SET escape_strings_warning = off command to keep
      the dumps from getting a lot of back-chatter from that.
      134b463f
  6. 26 May, 2006 1 commit
    • Bruce Momjian's avatar
      Use E'' strings internally only when standard_conforming_strings = · 7a846ecc
      Bruce Momjian authored
      'off'. This allows pg_dump output with standard_conforming_strings =
      'on' to generate proper strings that can be loaded into other databases
      without the backslash doubling we typically do.  I have added the
      dumping of the standard_conforming_strings value to pg_dump.
      
      I also added standard backslash handling for plpgsql.
      7a846ecc
  7. 14 Apr, 2006 1 commit
    • Tom Lane's avatar
      Repair a low-probability race condition identified by Qingqing Zhou. · 0fcc3c2f
      Tom Lane authored
      If a process abandons a wait in LockBufferForCleanup (in practice,
      only happens if someone cancels a VACUUM) just before someone else
      sends it a signal indicating the buffer is available, it was possible
      for the wakeup to remain in the process' semaphore, causing misbehavior
      next time the process waited for an lmgr lock.  Rather than try to
      prevent the race condition directly, it seems best to make the lock
      manager robust against leftover wakeups, by having it repeat waiting
      on the semaphore if the lock has not actually been granted or denied
      yet.
      0fcc3c2f
  8. 05 Mar, 2006 2 commits
  9. 03 Mar, 2006 1 commit
  10. 16 Feb, 2006 1 commit
  11. 03 Feb, 2006 1 commit
  12. 05 Jan, 2006 1 commit
  13. 25 Dec, 2005 1 commit
    • Bruce Momjian's avatar
      I have added these macros to c.h: · 261114a2
      Bruce Momjian authored
              #define HIGHBIT                 (0x80)
              #define IS_HIGHBIT_SET(ch)      ((unsigned char)(ch) & HIGHBIT)
      
      and removed CSIGNBIT and mapped it uses to HIGHBIT.  I have also added
      uses for IS_HIGHBIT_SET where appropriate.  This change is
      purely for code clarity.
      261114a2
  14. 06 Dec, 2005 1 commit
  15. 17 Nov, 2005 1 commit
    • Tom Lane's avatar
      Make SQL arrays support null elements. This commit fixes the core array · cecb6075
      Tom Lane authored
      functionality, but I still need to make another pass looking at places
      that incidentally use arrays (such as ACL manipulation) to make sure they
      are null-safe.  Contrib needs work too.
      I have not changed the behaviors that are still under discussion about
      array comparison and what to do with lower bounds.
      cecb6075
  16. 15 Oct, 2005 1 commit
  17. 21 Jul, 2005 1 commit
  18. 18 Jul, 2005 1 commit
  19. 02 Jul, 2005 1 commit
  20. 28 Jun, 2005 1 commit
    • Tom Lane's avatar
      Replace pg_shadow and pg_group by new role-capable catalogs pg_authid · 7762619e
      Tom Lane authored
      and pg_auth_members.  There are still many loose ends to finish in this
      patch (no documentation, no regression tests, no pg_dump support for
      instance).  But I'm going to commit it now anyway so that Alvaro can
      make some progress on shared dependencies.  The catalog changes should
      be pretty much done.
      7762619e
  21. 08 Jun, 2005 1 commit
  22. 25 May, 2005 1 commit
  23. 11 May, 2005 1 commit
  24. 28 Apr, 2005 1 commit
    • Tom Lane's avatar
      Implement sharable row-level locks, and use them for foreign key references · bedb78d3
      Tom Lane authored
      to eliminate unnecessary deadlocks.  This commit adds SELECT ... FOR SHARE
      paralleling SELECT ... FOR UPDATE.  The implementation uses a new SLRU
      data structure (managed much like pg_subtrans) to represent multiple-
      transaction-ID sets.  When more than one transaction is holding a shared
      lock on a particular row, we create a MultiXactId representing that set
      of transactions and store its ID in the row's XMAX.  This scheme allows
      an effectively unlimited number of row locks, just as we did before,
      while not costing any extra overhead except when a shared lock actually
      has to be shared.   Still TODO: use the regular lock manager to control
      the grant order when multiple backends are waiting for a row lock.
      
      Alvaro Herrera and Tom Lane.
      bedb78d3
  25. 29 Mar, 2005 1 commit
    • Tom Lane's avatar
      Convert oidvector and int2vector into variable-length arrays. This · 70c9763d
      Tom Lane authored
      change saves a great deal of space in pg_proc and its primary index,
      and it eliminates the former requirement that INDEX_MAX_KEYS and
      FUNC_MAX_ARGS have the same value.  INDEX_MAX_KEYS is still embedded
      in the on-disk representation (because it affects index tuple header
      size), but FUNC_MAX_ARGS is not.  I believe it would now be possible
      to increase FUNC_MAX_ARGS at little cost, but haven't experimented yet.
      There are still a lot of vestigial references to FUNC_MAX_ARGS, which
      I will clean up in a separate pass.  However, getting rid of it
      altogether would require changing the FunctionCallInfoData struct,
      and I'm not sure I want to buy into that.
      70c9763d
  26. 22 Feb, 2005 1 commit
  27. 15 Feb, 2005 1 commit
  28. 31 Dec, 2004 1 commit
    • PostgreSQL Daemon's avatar
      · 2ff50159
      PostgreSQL Daemon authored
      Tag appropriate files for rc3
      
      Also performed an initial run through of upgrading our Copyright date to
      extend to 2005 ... first run here was very simple ... change everything
      where: grep 1996-2004 && the word 'Copyright' ... scanned through the
      generated list with 'less' first, and after, to make sure that I only
      picked up the right entries ...
      2ff50159
  29. 27 Sep, 2004 3 commits
  30. 26 Sep, 2004 1 commit
  31. 23 Sep, 2004 1 commit
  32. 16 Sep, 2004 1 commit
    • Tom Lane's avatar
      Restructure subtransaction handling to reduce resource consumption, · 8f9f1986
      Tom Lane authored
      as per recent discussions.  Invent SubTransactionIds that are managed like
      CommandIds (ie, counter is reset at start of each top transaction), and
      use these instead of TransactionIds to keep track of subtransaction status
      in those modules that need it.  This means that a subtransaction does not
      need an XID unless it actually inserts/modifies rows in the database.
      Accordingly, don't assign it an XID nor take a lock on the XID until it
      tries to do that.  This saves a lot of overhead for subtransactions that
      are only used for error recovery (eg plpgsql exceptions).  Also, arrange
      to release a subtransaction's XID lock as soon as the subtransaction
      exits, in both the commit and abort cases.  This avoids holding many
      unique locks after a long series of subtransactions.  The price is some
      additional overhead in XactLockTableWait, but that seems acceptable.
      Finally, restructure the state machine in xact.c to have a more orthogonal
      set of states for subtransactions.
      8f9f1986
  33. 10 Sep, 2004 2 commits
  34. 09 Sep, 2004 1 commit
  35. 29 Aug, 2004 2 commits