1. 05 May, 2009 3 commits
  2. 04 May, 2009 6 commits
  3. 03 May, 2009 6 commits
  4. 02 May, 2009 4 commits
    • Tom Lane's avatar
      Install some simple defenses in postmaster startup to help ensure a useful · d90984f4
      Tom Lane authored
      error message if the installation directory layout is messed up (or at least,
      something more useful than the behavior exhibited in bug #4787).  During
      postmaster startup, check that get_pkglib_path resolves as a readable
      directory; and if ParseTzFile() fails to open the expected timezone
      abbreviation file, check the possibility that the directory is missing rather
      than just the specified file.  In case of either failure, issue a hint
      suggesting that the installation is broken.  These two checks cover the lib/
      and share/ trees of a full installation, which should take care of most
      scenarios where a sysadmin decides to get cute.
      d90984f4
    • Tom Lane's avatar
      We don't need major_release_split any more. · a16e007c
      Tom Lane authored
      a16e007c
    • Tom Lane's avatar
      Split the release notes into a separate file for each (active) major branch, · 008fad58
      Tom Lane authored
      as per my recent proposal.  release.sgml itself is now just a stub that should
      change rarely; ideally, only once per major release to add a new include line.
      Most editing work will occur in the release-N.N.sgml files.  To update a back
      branch for a minor release, just copy the appropriate release-N.N.sgml
      file(s) into the back branch.
      
      This commit doesn't change the end-product documentation at all, only the
      source layout.  However, it makes it easy to start omitting ancient information
      from newer branches' documentation, should we ever decide to do that.
      008fad58
    • Tom Lane's avatar
      Fix plpgsql's EXIT so that an EXIT without a label only matches a loop, · c91bf01b
      Tom Lane authored
      never a BEGIN block.  This is required for Oracle compatibility and is
      also plainly stated to be the behavior by our original documentation
      (up until 8.1, in which the docs were adjusted to match the code's behavior;
      but actually the old docs said the correct thing and the code was wrong).
      
      Not back-patched because this introduces an incompatibility that could
      break working applications.  Requires release note.
      c91bf01b
  5. 01 May, 2009 2 commits
    • Tom Lane's avatar
      Fix a couple of cases where the plpgsql grammar looked for T_WORD and · ccc6759d
      Tom Lane authored
      failed to consider the possibility that it would get T_SCALAR, T_RECORD,
      or T_ROW instead because the word happens to match a plpgsql variable name.
      In particular, give "duplicate declaration" rather than generic "syntax error"
      if the same identifier is declared twice in the same block, as per my recent
      complaint.  Also behave more sanely when decl_aliasitem or proc_condition or
      opt_lblname is coincidentally not T_WORD.  Refactor the related productions a
      bit to reduce duplication.
      
      This is a longstanding bug, but it doesn't seem critical enough to
      back-patch.
      ccc6759d
    • Tom Lane's avatar
      When checking for datetime field overflow, we should allow a fractional-second · fe1b07a6
      Tom Lane authored
      part that rounds up to exactly 1.0 second.  The previous coding rejected input
      like "00:12:57.9999999999999999999999999999", with the exact number of nines
      needed to cause failure varying depending on float-timestamp option and
      possibly on platform.  Obviously this should round up to the next integral
      second, if we don't have enough precision to distinguish the value from that.
      Per bug #4789 from Robert Kruus.
      
      In passing, fix a missed check for fractional seconds in one copy of the
      "is it greater than 24:00:00" code.
      
      Broken all the way back, so patch all the way back.
      fe1b07a6
  6. 30 Apr, 2009 1 commit
  7. 29 Apr, 2009 1 commit
    • Heikki Linnakangas's avatar
      Add check_keyword.pl script to perform some basic sanity checks to the · 19499bf9
      Heikki Linnakangas authored
      keyword lists in gram.y and kwlist.h. It checks that all lists are in
      alphabetical order, and that all keywords present in gram.y are listed
      in kwlist.h in the right category, and that all keywords in kwlist.h are
      also in gram.y. What's still missing is to check that all keywords
      defined  with "%token <keyword>" in gram.y are present in one of the
      keyword lists in gram.y.
      19499bf9
  8. 28 Apr, 2009 4 commits
  9. 27 Apr, 2009 1 commit
  10. 26 Apr, 2009 4 commits
  11. 25 Apr, 2009 1 commit
    • Tom Lane's avatar
      Fix the handling of sub-SELECTs appearing in the arguments of an outer-level · 20a3ddbb
      Tom Lane authored
      aggregate function.  By definition, such a sub-SELECT cannot reference any
      variables of query levels between itself and the aggregate's semantic level
      (else the aggregate would've been assigned to that lower level instead).
      So the correct, most efficient implementation is to treat the sub-SELECT as
      being a sub-select of that outer query level, not the level the aggregate
      syntactically appears in.  Not doing so also confuses the heck out of our
      parameter-passing logic, as illustrated in bug report from Daniel Grace.
      
      Fortunately, we were already copying the whole Aggref expression up to the
      outer query level, so all that's needed is to delay SS_process_sublinks
      processing of the sub-SELECT until control returns to the outer level.
      
      This has been broken since we introduced spec-compliant treatment of
      outer aggregates in 7.4; so patch all the way back.
      20a3ddbb
  12. 24 Apr, 2009 6 commits
  13. 23 Apr, 2009 1 commit