1. 22 Sep, 2017 9 commits
    • Robert Haas's avatar
      hash: Implement page-at-a-time scan. · 7c75ef57
      Robert Haas authored
      Commit 09cb5c0e added a similar
      optimization to btree back in 2006, but nobody bothered to implement
      the same thing for hash indexes, probably because they weren't
      WAL-logged and had lots of other performance problems as well.  As
      with the corresponding btree case, this eliminates the problem of
      potentially needing to refind our position within the page, and cuts
      down on pin/unpin traffic as well.
      
      Ashutosh Sharma, reviewed by Alexander Korotkov, Jesper Pedersen,
      Amit Kapila, and me.  Some final edits to comments and README by
      me.
      
      Discussion: http://postgr.es/m/CAE9k0Pm3KTx93K8_5j6VMzG4h5F+SyknxUwXrN-zqSZ9X8ZS3w@mail.gmail.com
      7c75ef57
    • Tom Lane's avatar
      Allow up to 3 "-P 1" reports per thread in pgbench run of 2 seconds. · 0f574a7a
      Tom Lane authored
      There seems to be some considerable imprecision in the timing of -P
      progress reports.  Nominally each thread ought to produce 2 reports
      in this test, but about 10% of the time we only get one, and 1% of
      the time we get three, as per buildfarm results so far.  Pending
      further investigation, treat the last case as a "pass".  (I, tgl,
      am suspicious that this still might not be lax enough, now that it's
      obvious that the behavior is load-dependent; but there's not yet
      buildfarm evidence to confirm that suspicion.)
      
      Fabien Coelho
      
      Discussion: https://postgr.es/m/26654.1505232433@sss.pgh.pa.us
      0f574a7a
    • Peter Eisentraut's avatar
      Remove contrib/chkpass · 5d3cad56
      Peter Eisentraut authored
      The recent addition of a test suite for this module revealed a few
      problems.  It uses a crypt() method that is no longer considered secure
      and doesn't work anymore on some platforms.  Using a volatile input
      function violates internal sanity check assumptions and leads to
      failures on the build farm.
      
      So this module is neither a usable security tool nor a good example for
      an extension.  No one wanted to argue for keeping or improving it, so
      remove it.
      
      Discussion: https://www.postgresql.org/message-id/5645b0d7-cc40-6ab5-c553-292a91091ee7%402ndquadrant.com
      5d3cad56
    • Tom Lane's avatar
      Mop-up for commit 85feb77a. · ed87e198
      Tom Lane authored
      Adjust commentary in regc_pg_locale.c to remove mention of the possibility
      of not having <wctype.h> functions, since we no longer consider that.
      
      Eliminate duplicate code in wparser_def.c by generalizing the p_iswhat
      macro to take a parameter saying what to return for non-ASCII chars
      in C locale.  (That's not really a consequence of the
      USE_WIDE_UPPER_LOWER-ectomy, but I noticed it while doing that.)
      ed87e198
    • Tom Lane's avatar
      Assume wcstombs(), towlower(), and sibling functions are always present. · 85feb77a
      Tom Lane authored
      These functions are required by SUS v2, which is our minimum baseline
      for Unix platforms, and are present on all interesting Windows versions
      as well.  Even our oldest buildfarm members have them.  Thus, we were not
      testing the "!USE_WIDE_UPPER_LOWER" code paths, which explains why the bug
      fixed in commit e6023ee7 escaped detection.  Per discussion, there seems
      to be no more real-world value in maintaining this option.  Hence, remove
      the configure-time tests for wcstombs() and towlower(), remove the
      USE_WIDE_UPPER_LOWER symbol, and remove all the !USE_WIDE_UPPER_LOWER code.
      There's not actually all that much of the latter, but simplifying the #if
      nests is a win in itself.
      
      Discussion: https://postgr.es/m/20170921052928.GA188913@rfd.leadboat.com
      85feb77a
    • Peter Eisentraut's avatar
      Fix build with !USE_WIDE_UPPER_LOWER · e6023ee7
      Peter Eisentraut authored
      The placement of the ifdef blocks in formatting.c was pretty bogus, so
      the code failed to compile if USE_WIDE_UPPER_LOWER was not defined.
      Reported-by: default avatarPeter Geoghegan <pg@bowt.ie>
      Reported-by: default avatarNoah Misch <noah@leadboat.com>
      e6023ee7
    • Alvaro Herrera's avatar
      Document further existing locks as wait events · 885cab58
      Alvaro Herrera authored
      Reported-by: Jeremy Schneider
      Author: Michael Paquier
      Discussion: https://postgr.es/m/CA+fnDAZaPCwfY8Lp-pfLnUGFAXRu1VfLyRgdup-L-kwcBj8MqQ@mail.gmail.com
      885cab58
    • Tom Lane's avatar
      Sync our copy of the timezone library with IANA tzcode master. · 47f849a3
      Tom Lane authored
      This patch absorbs a few unreleased fixes in the IANA code.
      It corresponds to commit 2d8b944c1cec0808ac4f7a9ee1a463c28f9cd00a
      in https://github.com/eggert/tz.  Non-cosmetic changes include:
      
      TZDEFRULESTRING is updated to match current US DST practice,
      rather than what it was over ten years ago.  This only matters
      for interpretation of POSIX-style zone names (e.g., "EST5EDT"),
      and only if the timezone database doesn't include either an exact
      match for the zone name or a "posixrules" entry.  The latter
      should not be true in any current Postgres installation, but
      this could possibly matter when using --with-system-tzdata.
      
      Get rid of a nonportable use of "++var" on a bool var.
      This is part of a larger fix that eliminates some vestigial
      support for consecutive leap seconds, and adds checks to
      the "zic" compiler that the data files do not specify that.
      
      Remove a couple of ancient compatibility hacks.  The IANA
      crew think these are obsolete, and I tend to agree.  But
      perhaps our buildfarm will think different.
      
      Back-patch to all supported branches, in line with our policy
      that all branches should be using current IANA code.  Before v10,
      this includes application of current pgindent rules, to avoid
      whitespace problems in future back-patches.
      
      Discussion: https://postgr.es/m/E1dsWhf-0000pT-F9@gemulon.postgresql.org
      47f849a3
    • Tom Lane's avatar
      Revert "Fix bool/int type confusion" · a890432a
      Tom Lane authored
      This reverts commit 0ec2e908.
      We'll use the upstream (IANA) fix instead.
      a890432a
  2. 21 Sep, 2017 4 commits
  3. 20 Sep, 2017 13 commits
  4. 19 Sep, 2017 14 commits