1. 01 Aug, 2007 1 commit
  2. 05 Jan, 2007 1 commit
  3. 04 Oct, 2006 1 commit
  4. 14 Jul, 2006 1 commit
  5. 13 Jul, 2006 1 commit
  6. 05 Mar, 2006 1 commit
  7. 01 Mar, 2006 1 commit
    • Neil Conway's avatar
      This patch makes the error message strings throughout the backend · 8e5a10d4
      Neil Conway authored
      more compliant with the error message style guide. In particular,
      errdetail should begin with a capital letter and end with a period,
      whereas errmsg should not. I also fixed a few related issues in
      passing, such as fixing the repeated misspelling of "lexeme" in
      contrib/tsearch2 (per Tom's suggestion).
      8e5a10d4
  8. 21 Jan, 2006 1 commit
    • Tom Lane's avatar
      Repair longstanding bug in slru/clog logic: it is possible for two backends · c89a0dd3
      Tom Lane authored
      to try to create a log segment file concurrently, but the code erroneously
      specified O_EXCL to open(), resulting in a needless failure.  Before 7.4,
      it was even a PANIC condition :-(.  Correct code is actually simpler than
      what we had, because we can just say O_CREAT to start with and not need a
      second open() call.  I believe this accounts for several recent reports of
      hard-to-reproduce "could not create file ...: File exists" errors in both
      pg_clog and pg_subtrans.
      c89a0dd3
  9. 06 Dec, 2005 2 commits
    • Tom Lane's avatar
      Get rid of slru.c's hardwired insistence on a fixed number of slots per · 887a7c61
      Tom Lane authored
      SLRU area.  The number of slots is still a compile-time constant (someday
      we might want to change that), but at least it's a different constant for
      each SLRU area.  Increase number of subtrans buffers to 32 based on
      experimentation with a heavily subtrans-bashing test case, and increase
      number of multixact member buffers to 16, since it's obviously silly for
      it not to be at least twice the number of multixact offset buffers.
      887a7c61
    • Tom Lane's avatar
      Arrange for read-only accesses to SLRU page buffers to take only a shared · a615acf5
      Tom Lane authored
      lock, not exclusive, if the desired page is already in memory.  This can
      be demonstrated to be a significant win on the pg_subtrans cache when there
      is a large window of open transactions.  It should be useful for pg_clog
      as well.  I didn't try to make GetMultiXactIdMembers() use the code, as
      that would have taken some restructuring, and what with the local cache
      for multixact contents it probably wouldn't really make a difference.
      Per my recent proposal.
      a615acf5
  10. 22 Nov, 2005 1 commit
  11. 05 Nov, 2005 1 commit
  12. 03 Nov, 2005 1 commit
    • Tom Lane's avatar
      Fix longstanding race condition in transaction log management: there was a · 99d48695
      Tom Lane authored
      very narrow window in which SimpleLruReadPage or SimpleLruWritePage could
      think that I/O was needed when it wasn't (and indeed the buffer had already
      been assigned to another page).  This would result in an Assert failure if
      Asserts were enabled, and probably in silent data corruption if not.
      Reported independently by Jim Nasby and Robert Creager.
      
      I intend a more extensive fix when 8.2 development starts, but this is a
      reasonably low-impact patch for the existing branches.
      99d48695
  13. 15 Oct, 2005 1 commit
  14. 20 Aug, 2005 1 commit
    • Tom Lane's avatar
      Convert the arithmetic for shared memory size calculation from 'int' · 0007490e
      Tom Lane authored
      to 'Size' (that is, size_t), and install overflow detection checks in it.
      This allows us to remove the former arbitrary restrictions on NBuffers
      etc.  It won't make any difference in a 32-bit machine, but in a 64-bit
      machine you could theoretically have terabytes of shared buffers.
      (How efficiently we could manage 'em remains to be seen.)  Similarly,
      num_temp_buffers, work_mem, and maintenance_work_mem can be set above
      2Gb on a 64-bit machine.  Original patch from Koichi Suzuki, additional
      work by moi.
      0007490e
  15. 04 Jul, 2005 1 commit
    • Tom Lane's avatar
      Arrange for the postmaster (and standalone backends, initdb, etc) to · eb5949d1
      Tom Lane authored
      chdir into PGDATA and subsequently use relative paths instead of absolute
      paths to access all files under PGDATA.  This seems to give a small
      performance improvement, and it should make the system more robust
      against naive DBAs doing things like moving a database directory that
      has a live postmaster in it.  Per recent discussion.
      eb5949d1
  16. 19 Jun, 2005 1 commit
    • Tom Lane's avatar
      Simplify uses of readdir() by creating a function ReadDir() that · 3f749924
      Tom Lane authored
      includes error checking and an appropriate ereport(ERROR) message.
      This gets rid of rather tedious and error-prone manipulation of errno,
      as well as a Windows-specific bug workaround, at more than a dozen
      call sites.  After an idea in a recent patch by Heikki Linnakangas.
      3f749924
  17. 12 Feb, 2005 1 commit
  18. 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
  19. 06 Sep, 2004 1 commit
  20. 29 Aug, 2004 2 commits
  21. 23 Aug, 2004 1 commit
    • Tom Lane's avatar
      Rearrange pg_subtrans handling as per recent discussion. pg_subtrans · 4dbb880d
      Tom Lane authored
      updates are no longer WAL-logged nor even fsync'd; we do not need to,
      since after a crash no old pg_subtrans data is needed again.  We truncate
      pg_subtrans to RecentGlobalXmin at each checkpoint.  slru.c's API is
      refactored a little bit to separate out the necessary decisions.
      4dbb880d
  22. 21 Jul, 2004 1 commit
    • Tom Lane's avatar
      Invent WAL timelines, as per recent discussion, to make point-in-time · 2042b342
      Tom Lane authored
      recovery more manageable.  Also, undo recent change to add FILE_HEADER
      and WASTED_SPACE records to XLOG; instead make the XLOG page header
      variable-size with extra fields in the first page of an XLOG file.
      This should fix the boundary-case bugs observed by Mark Kirkwood.
      initdb forced due to change of XLOG representation.
      2042b342
  23. 01 Jul, 2004 1 commit
  24. 31 May, 2004 1 commit
    • Tom Lane's avatar
      Per previous discussions, get rid of use of sync(2) in favor of · 9b178555
      Tom Lane authored
      explicitly fsync'ing every (non-temp) file we have written since the
      last checkpoint.  In the vast majority of cases, the burden of the
      fsyncs should fall on the bgwriter process not on backends.  (To this
      end, we assume that an fsync issued by the bgwriter will force out
      blocks written to the same file by other processes using other file
      descriptors.  Anyone have a problem with that?)  This makes the world
      safe for WIN32, which ain't even got sync(2), and really makes the world
      safe for Unixen as well, because sync(2) never had the semantics we need:
      it offers no way to wait for the requested I/O to finish.
      
      Along the way, fix a bug I recently introduced in xlog recovery:
      file truncation replay failed to clear bufmgr buffers for the dropped
      blocks, which could result in 'PANIC:  heap_delete_redo: no block'
      later on in xlog replay.
      9b178555
  25. 29 May, 2004 1 commit
    • Tom Lane's avatar
      Separate out bgwriter code into a logically separate module, rather · 076a055a
      Tom Lane authored
      than being random pieces of other files.  Give bgwriter responsibility
      for all checkpoint activity (other than a post-recovery checkpoint);
      so this child process absorbs the functionality of the former transient
      checkpoint and shutdown subprocesses.  While at it, create an actual
      include file for postmaster.c, which for some reason never had its own
      file before.
      076a055a
  26. 28 May, 2004 1 commit
    • Tom Lane's avatar
      Code review for EXEC_BACKEND changes. Reduce the number of #ifdefs by · 1a321f26
      Tom Lane authored
      about a third, make it work on non-Windows platforms again.  (But perhaps
      I broke the WIN32 code, since I have no way to test that.)  Fold all the
      paths that fork postmaster child processes to go through the single
      routine SubPostmasterMain, which takes care of resurrecting the state that
      would normally be inherited from the postmaster (including GUC variables).
      Clean up some places where there's no particularly good reason for the
      EXEC and non-EXEC cases to work differently.  Take care of one or two
      FIXMEs that remained in the code.
      1a321f26
  27. 23 Feb, 2004 1 commit
    • Tom Lane's avatar
      Replace opendir/closedir calls throughout the backend with AllocateDir · 7a57a672
      Tom Lane authored
      and FreeDir routines modeled on the existing AllocateFile/FreeFile.
      Like the latter, these routines will avoid failing on EMFILE/ENFILE
      conditions whenever possible, and will prevent leakage of directory
      descriptors if an elog() occurs while one is open.
      Also, reduce PANIC to ERROR in MoveOfflineLogs() --- this is not
      critical code and there is no reason to force a DB restart on failure.
      All per recent trouble report from Olivier Hubaut.
      7a57a672
  28. 17 Feb, 2004 1 commit
  29. 10 Feb, 2004 1 commit
    • Tom Lane's avatar
      Restructure smgr API as per recent proposal. smgr no longer depends on · 87bd9563
      Tom Lane authored
      the relcache, and so the notion of 'blind write' is gone.  This should
      improve efficiency in bgwriter and background checkpoint processes.
      Internal restructuring in md.c to remove the not-very-useful array of
      MdfdVec objects --- might as well just use pointers.
      Also remove the long-dead 'persistent main memory' storage manager (mm.c),
      since it seems quite unlikely to ever get resurrected.
      87bd9563
  30. 28 Jan, 2004 1 commit
    • Tom Lane's avatar
      Review uses of IsUnderPostmaster, change some tests to look at · 2f0d43b2
      Tom Lane authored
      whereToSendOutput instead because they are really inquiring about
      the correct client communication protocol.  Update some comments.
      This is pointing towards supporting regular FE/BE client protocol
      in a standalone backend, per discussion a month or so back.
      2f0d43b2
  31. 26 Jan, 2004 1 commit
  32. 29 Nov, 2003 1 commit
    • PostgreSQL Daemon's avatar
      · 969685ad
      PostgreSQL Daemon authored
      $Header: -> $PostgreSQL Changes ...
      969685ad
  33. 25 Sep, 2003 1 commit
  34. 08 Aug, 2003 2 commits
  35. 04 Aug, 2003 1 commit
  36. 28 Jul, 2003 1 commit
  37. 19 Jul, 2003 1 commit