1. 04 Jul, 2018 3 commits
    • Fujii Masao's avatar
      Improve the performance of relation deletes during recovery. · b4166911
      Fujii Masao authored
      When multiple relations are deleted at the same transaction,
      the files of those relations are deleted by one call to smgrdounlinkall(),
      which leads to scan whole shared_buffers only one time. OTOH,
      previously, during recovery, smgrdounlink() (not smgrdounlinkall()) was
      called for each file to delete, which led to scan shared_buffers
      multiple times. Obviously this could cause to increase the WAL replay
      time very much especially when shared_buffers was huge.
      
      To alleviate this situation, this commit changes the recovery so that
      it also calls smgrdounlinkall() only one time to delete multiple
      relation files.
      
      This is just fix for oversight of commit 279628a0, not new feature.
      So, per discussion on pgsql-hackers, we concluded to backpatch this
      to all supported versions.
      
      Author: Fujii Masao
      Reviewed-by: Michael Paquier, Andres Freund, Thomas Munro, Kyotaro Horiguchi, Takayuki Tsunakawa
      Discussion: https://postgr.es/m/CAHGQGwHVQkdfDqtvGVkty+19cQakAydXn1etGND3X0PHbZ3+6w@mail.gmail.com
      b4166911
    • Peter Eisentraut's avatar
      doc: Reorganize CREATE TABLE / LIKE option documentation · b46727e0
      Peter Eisentraut authored
      This section once started out small but has now grown quite a bit and
      needs a bit of structure.
      
      Rewrite as list, add documentation of EXCLUDING, and improve the
      documentation of INCLUDING ALL instead of just listing all the options
      again.
      
      per report from Yugo Nagata that EXCLUDING was not documented, that part
      reviewed by Daniel Gustafsson, most of the rewrite was by me
      b46727e0
    • Michael Paquier's avatar
      Remove dead code for temporary relations in partition planning · fc057b2b
      Michael Paquier authored
      Since recent commit 1c7c317c, temporary relations cannot be mixed with
      permanent relations within the same partition tree, and the same counts
      for temporary relations created by other sessions, which the planner
      simply discarded.  Instead be paranoid and issue an error, as those
      should be blocked at definition time, at least for now.
      
      At the same time, a test case is added to stress what has been moved
      when expand_partitioned_rtentry gets called recursively but bumps on a
      partitioned relation with no partitions which should be handled the same
      way as the non-inheritance case.  This code may be reworked in a close
      future, and covering this code path will limit surprises.
      
      Reported-by: David Rowley
      Author: David Rowley
      Reviewed-by: Amit Langote, Robert Haas, Michael Paquier
      Discussion: https://postgr.es/m/CAKJS1f_HyV1txn_4XSdH5EOhBMYaCwsXyAj6bHXk9gOu4JKsbw@mail.gmail.com
      fc057b2b
  2. 03 Jul, 2018 2 commits
  3. 02 Jul, 2018 2 commits
  4. 01 Jul, 2018 6 commits
  5. 30 Jun, 2018 4 commits
  6. 29 Jun, 2018 6 commits
  7. 27 Jun, 2018 8 commits
  8. 26 Jun, 2018 9 commits