1. 08 Jul, 2013 1 commit
    • Tom Lane's avatar
      Fix planning of parameterized appendrel paths with expensive join quals. · 5372275b
      Tom Lane authored
      The code in set_append_rel_pathlist() for building parameterized paths
      for append relations (inheritance and UNION ALL combinations) supposed
      that the cheapest regular path for a child relation would still be cheapest
      when reparameterized.  Which might not be the case, particularly if the
      added join conditions are expensive to compute, as in a recent example from
      Jeff Janes.  Fix it to compare child path costs *after* reparameterizing.
      We can short-circuit that if the cheapest pre-existing path is already
      parameterized correctly, which seems likely to be true often enough to be
      worth checking for.
      
      Back-patch to 9.2 where parameterized paths were introduced.
      5372275b
  2. 07 Jul, 2013 6 commits
  3. 06 Jul, 2013 4 commits
    • Jeff Davis's avatar
      Handle posix_fallocate() errors. · 5b571bb8
      Jeff Davis authored
      On some platforms, posix_fallocate() is available but may still return
      EINVAL if the underlying filesystem does not support it.  So, in case
      of an error, fall through to the alternate implementation that just
      writes zeros.
      
      Per buildfarm failure and analysis by Tom Lane.
      5b571bb8
    • Michael Meskes's avatar
      43c3aab1
    • Tom Lane's avatar
      Rename a function to avoid naming conflict in parallel regression tests. · 0cd78780
      Tom Lane authored
      Commit 31a89185 added some tests in
      plpgsql.sql that used a function rather unthinkingly named "foo()".
      However, rangefuncs.sql has some much older tests that create a function
      of that name, and since these test scripts run in parallel, there is a
      chance of failures if the timing is just right.  Use another name to
      avoid that.  Per buildfarm (failure seen today on "hamerkop", but
      probably it's happened before and not been noticed).
      0cd78780
    • Peter Eisentraut's avatar
      PL/Python: Convert numeric to Decimal · 7919398b
      Peter Eisentraut authored
      The old implementation converted PostgreSQL numeric to Python float,
      which was always considered a shortcoming.  Now numeric is converted to
      the Python Decimal object.  Either the external cdecimal module or the
      standard library decimal module are supported.
      
      From: Szymon Guz <mabewlun@gmail.com>
      From: Ronan Dunklau <rdunklau@gmail.com>
      Reviewed-by: default avatarSteve Singer <steve@ssinger.info>
      7919398b
  4. 05 Jul, 2013 7 commits
  5. 04 Jul, 2013 7 commits
  6. 03 Jul, 2013 14 commits
  7. 02 Jul, 2013 1 commit
    • Robert Haas's avatar
      Add support for multiple kinds of external toast datums. · 36820250
      Robert Haas authored
      To that end, support tags rather than lengths for external datums.
      As an example of how this can be used, add support or "indirect"
      tuples which point to some externally allocated memory containing
      a toast tuple.  Similar infrastructure could be used for other
      purposes, including, perhaps, support for alternative compression
      algorithms.
      
      Andres Freund, reviewed by Hitoshi Harada and myself
      36820250