1. 22 Mar, 2017 11 commits
    • Simon Riggs's avatar
      Correct erroneous comment in GetOldestXmin() · c137c68e
      Simon Riggs authored
      Craig Ringer
      c137c68e
    • Simon Riggs's avatar
      Refactor GetOldestXmin() to use flags · af4b1a08
      Simon Riggs authored
      Replace ignoreVacuum parameter with more flexible flags.
      
      Author: Eiji Seki
      Review: Haribabu Kommi
      af4b1a08
    • Simon Riggs's avatar
      Assign AccessExclusiveLocks against subxacts in Hot Standby · 49bff530
      Simon Riggs authored
      Previously AELs were registered against the top-level xid, which could
      cause locks to be held much longer than necessary in some cases during
      Hot Standby replay. We now record locks directly against their appropriate
      xids. Requires few code changes because original code allowed for this
      situation but didn’t fully implement it.
      
      Discussion: CAKJS1f9vJ841HY=wonnLVbfkTWGYWdPN72VMxnArcGCjF3SywA@mail.gmail.com
      
      Author: Simon Riggs and David Rowley
      49bff530
    • Peter Eisentraut's avatar
      Change logical replication pg_hba.conf use · 8df9bd0b
      Peter Eisentraut authored
      Logical replication no longer uses the "replication" keyword.  It just
      matches database entries in the normal way.  The "replication" keyword
      now only applies to physical replication.
      Reviewed-by: default avatarPetr Jelinek <petr.jelinek@2ndquadrant.com>
      8df9bd0b
    • Peter Eisentraut's avatar
      Refine rules for altering publication owner · 4cfc9484
      Peter Eisentraut authored
      Previously, the new owner had to be a superuser.  The new rules are more
      refined similar to other objects.
      Reviewed-by: default avatarPetr Jelinek <petr.jelinek@2ndquadrant.com>
      4cfc9484
    • Andrew Dunstan's avatar
      Sync pg_dump and pg_dumpall output · 96a7128b
      Andrew Dunstan authored
      Before exiting any files are fsync'ed. A --no-sync option is also
      provided for a faster exit if desired.
      
      Michael Paquier.
      
      Reviewed by Albe Laurenz
      
      Discussion: https://postgr.es/m/CAB7nPqS1uZ=Ov+UruW6jr3vB-S_DLVMPc0dQpV-fTDjmm0ZQMg@mail.gmail.com
      96a7128b
    • Simon Riggs's avatar
      Improve performance of replay of AccessExclusiveLocks · 9b013dc2
      Simon Riggs authored
      A hot standby replica keeps a list of Access Exclusive locks for a top
      level transaction. These locks are released when the top level transaction
      ends. Searching of this list is O(N^2), and each transaction had to pay the
      price of searching this list for locks, even if it didn't take any AE
      locks itself.
      
      This patch optimizes this case by having the master server track which
      transactions took AE locks, and passes that along to the standby server in
      the commit/abort record. This allows the standby to only try to release
      locks for transactions which actually took any, avoiding the majority of
      the performance issue.
      
      Refactor MyXactAccessedTempRel into MyXactFlags to allow minimal additional
      cruft with this.
      
      Analysis and initial patch by David Rowley
      Author: David Rowley and Simon Riggs
      9b013dc2
    • Simon Riggs's avatar
      Teach xlogreader to follow timeline switches · 1148e22a
      Simon Riggs authored
      Uses page-based mechanism to ensure we’re using the correct timeline.
      
      Tests are included to exercise the functionality using a cold disk-level copy
      of the master that's started up as a replica with slots intact, but the
      intended use of the functionality is with later features.
      
      Craig Ringer, reviewed by Simon Riggs and Andres Freund
      1148e22a
    • Peter Eisentraut's avatar
      Avoid Perl warning · 9ca2dd57
      Peter Eisentraut authored
      Perl versions before 5.12 would warn "Use of implicit split to @_ is
      deprecated".
      
      Author: Jeff Janes <jeff.janes@gmail.com>
      9ca2dd57
    • Peter Eisentraut's avatar
      pg_dump: Only dump publications when dumping everything · 05227e0c
      Peter Eisentraut authored
      Don't dump publications with pg_dump -t or similar cases that select
      specific groups of objects.
      
      Author: Petr Jelinek <petr.jelinek@2ndquadrant.com>
      05227e0c
    • Peter Eisentraut's avatar
      doc: Update tool sets documentation for modern FreeBSD · 9212810c
      Peter Eisentraut authored
      For several operating systems, we give handy package manager one-liners
      to install all the requirements for building our documentation.  All
      current production FreeBSD releases have a friendly new package manager
      a bit like apt/yum, so give a one line command here.  Also, add a brief
      note about gmake vs make in the doc subdirectory.
      
      Author: Thomas Munro <thomas.munro@enterprisedb.com>
      9212810c
  2. 21 Mar, 2017 14 commits
  3. 20 Mar, 2017 10 commits
  4. 19 Mar, 2017 3 commits
  5. 18 Mar, 2017 2 commits
    • Tom Lane's avatar
      Avoid use of already-closed relcache entry. · e3044f61
      Tom Lane authored
      Oversight in commit 17f8ffa1.  Per buildfarm member prion.
      e3044f61
    • Tom Lane's avatar
      Fix REFRESH MATERIALIZED VIEW to report activity to the stats collector. · 17f8ffa1
      Tom Lane authored
      The non-concurrent code path for REFRESH MATERIALIZED VIEW failed to
      report its updates to the stats collector.  This is bad since it means
      auto-analyze doesn't know there's any work to be done.  Adjust it to
      report the refresh as a table truncate followed by insertion of an
      appropriate number of rows.
      
      Since a matview could contain more than INT_MAX rows, change the
      signature of pgstat_count_heap_insert() to accept an int64 rowcount.
      (The accumulator it's adding into is already int64, but existing
      callers could not insert more than a small number of rows at once,
      so the argument had been declared just "int n".)
      
      This is surely a bug fix, but changing pgstat_count_heap_insert()'s API
      seems too risky for the back branches.  Given the lack of previous
      complaints, I'm not sure it's a big enough problem to justify a kluge
      solution that would avoid that.  So, no back-patch, at least for now.
      
      Jim Mlodgenski, adjusted a bit by me
      
      Discussion: https://postgr.es/m/CAB_5SRchSz7-WmdO5szdiknG8Oj_GGqJytrk1KRd11yhcMs1KQ@mail.gmail.com
      17f8ffa1