1. 03 Jun, 2013 5 commits
    • Tom Lane's avatar
      Add semicolons to eval'd strings to hide a minor Perl behavioral change. · 035a5e1e
      Tom Lane authored
      "eval q{foo}" used to complain that the error was on line 2 of the eval'd
      string, because eval internally tacked on "\n;" so that the end of the
      erroneous command was indeed on line 2.  But as of Perl 5.18 it more
      sanely says that the error is on line 1.  To avoid Perl-version-dependent
      regression test results, use "eval q{foo;}" instead in the two places
      where this matters.  Per buildfarm.
      
      Since people might try to use newer Perl versions with older PG releases,
      back-patch as far as 9.0 where these test cases were added.
      035a5e1e
    • Heikki Linnakangas's avatar
      Put back allow_system_table_mods check in heap_create(). · 15386281
      Heikki Linnakangas authored
      This reverts commit a475c603.
      
      Erik Rijkers reported back in January 2013 that after the patch, if you do
      "pg_dump -t myschema.mytable" to dump a single table, and restore that in
      a database where myschema does not exist, the table is silently created in
      pg_catalog instead. That is because pg_dump uses
      "SET search_path=myschema, pg_catalog" to set schema the table is created
      in. While allow_system_table_mods is not a very elegant solution to this,
      we can't leave it as it is, so for now, revert it back to the way it was
      previously.
      15386281
    • Stephen Frost's avatar
      Additional spelling corrections · f129615f
      Stephen Frost authored
      A few more minor spelling corrections, no functional changes.
      
      Thom Brown
      f129615f
    • Heikki Linnakangas's avatar
      Code review of recycling WAL segments in a restartpoint. · e1e2bb34
      Heikki Linnakangas authored
      Seems cleaner to get the currently-replayed TLI in the same call to
      GetXLogReplayRecPtr that we get the WAL position. Make it more clear in the
      comment what the code does when recovery has already ended
      (RecoveryInProgress() will set ThisTimeLineID in that case). Finally, make
      resetting ThisTimeLineID afterwards more explicit.
      e1e2bb34
    • Tom Lane's avatar
      Allow type_func_name_keywords in some places where they weren't before. · 2c92edad
      Tom Lane authored
      This change makes type_func_name_keywords less reserved than they were
      before, by allowing them for role names, language names, EXPLAIN and COPY
      options, and SET values for GUCs; which are all places where few if any
      actual keywords could appear instead, so no new ambiguities are introduced.
      
      The main driver for this change is to allow "COPY ... (FORMAT BINARY)"
      to work without quoting the word "binary".  That is an inconsistency that
      has been complained of repeatedly over the years (at least by Pavel Golub,
      Kurt Lidl, and Simon Riggs); but we hadn't thought of any non-ugly solution
      until now.
      
      Back-patch to 9.0 where the COPY (FORMAT BINARY) syntax was introduced.
      2c92edad
  2. 02 Jun, 2013 2 commits
  3. 01 Jun, 2013 6 commits
  4. 31 May, 2013 3 commits
  5. 30 May, 2013 1 commit
  6. 29 May, 2013 3 commits
  7. 27 May, 2013 1 commit
    • Stephen Frost's avatar
      Documentation fix for ALTER TYPE .. RENAME · 05624220
      Stephen Frost authored
      The documentation for ALTER TYPE .. RENAME claimed to support a
      RESTRICT/CASCADE option at the 'type' level, which wasn't implemented
      and doesn't make a whole lot of sense to begin with.  What is supported,
      and previously undocumented, is
      
      ALTER TYPE .. RENAME ATTRIBUTE .. RESTRICT/CASCADE.
      
      I've updated the documentation and back-patched this to 9.1 where it was
      first introduced.
      05624220
  8. 24 May, 2013 1 commit
  9. 23 May, 2013 2 commits
    • Robert Haas's avatar
      Fix typo in comment. · 6eb971bd
      Robert Haas authored
      Pavan Deolasee
      6eb971bd
    • Heikki Linnakangas's avatar
      Print line number correctly in COPY. · e2ef2893
      Heikki Linnakangas authored
      When COPY uses the multi-insert method to insert a batch of tuples into the
      heap at a time, incorrect line number was printed if something went wrong in
      inserting the index tuples (primary key failure, for exampl), or processing
      after row triggers.
      
      Fixes bug #8173 reported by Lloyd Albin. Backpatch to 9.2, where the multi-
      insert code was added.
      e2ef2893
  10. 21 May, 2013 6 commits
  11. 20 May, 2013 2 commits
    • Heikki Linnakangas's avatar
      Fix escaping in generated recovery.conf file. · 30b5ede7
      Heikki Linnakangas authored
      In the primary_conninfo line that "pg_basebackup -R" generates, single
      quotes in parameter values need to be escaped into \\'; the libpq parser
      requires the quotes to be escaped into \', and recovery.conf parser requires
      the \ to be escaped into \\.
      
      Also, don't quote parameter values unnecessarily, to make the connection
      string prettier. Most options in a libpq connection string don't need
      quoting.
      
      Reported by Hari Babu, closer analysis by Zoltan Boszormenyi, although I
      didn't use his patch.
      30b5ede7
    • Tom Lane's avatar
      Clarify documentation of EXPLAIN (TIMING OFF) option. · 2af0971f
      Tom Lane authored
      Clarify that this option doesn't suppress measurement of the statement's
      total runtime.
      
      Greg Smith
      2af0971f
  12. 19 May, 2013 3 commits
  13. 18 May, 2013 2 commits
  14. 16 May, 2013 3 commits
    • Tom Lane's avatar
      Fix crash when trying to display a NOTIFY rule action. · 403bd6a1
      Tom Lane authored
      Fixes oversight in commit 2ffa740b.
      Per report from Josh Kupershmidt.
      
      I think we've broken this case before, so let's add a regression test
      this time.
      403bd6a1
    • Tom Lane's avatar
      Fix fd.c to preserve errno where needed. · 6563fb2b
      Tom Lane authored
      PathNameOpenFile failed to ensure that the correct value of errno was
      returned to its caller after a failure (because it incorrectly supposed
      that free() can never change errno).  In some cases this would result
      in a user-visible failure because an expected ENOENT errno was replaced
      with something else.  Bogus EINVAL failures have been observed on OS X,
      for example.
      
      There were also a couple of places that could mangle an important value
      of errno if FDDEBUG was defined.  While the usefulness of that debug
      support is highly debatable, we might as well make it safe to use,
      so add errno save/restore logic to the DO_DB macro.
      
      Per bug #8167 from Nelson Minar, diagnosed by RhodiumToad.
      Back-patch to all supported branches.
      6563fb2b
    • Tom Lane's avatar
      Fix some uses of "the quick brown fox". · e7bfc7e4
      Tom Lane authored
      If we're going to quote a well-known pangram, we should quote it
      accurately.  Per gripe from Thom Brown.
      e7bfc7e4