Skip to content
Snippets Groups Projects
  1. Jul 09, 2008
    • Tom Lane's avatar
      Fix performance bug in write_syslog(): the code to preferentially break the · 37933102
      Tom Lane authored
      log message at newlines cost O(N^2) for very long messages with few or no
      newlines.  For messages in the megabyte range this became the dominant cost.
      Per gripe from Achilleas Mantzios.
      
      Patch all the way back, since this is a safe change with no portability
      risks.  I am also thinking of increasing PG_SYSLOG_LIMIT, but that should
      be done separately.
      37933102
  2. Jul 08, 2008
  3. Jul 07, 2008
    • Tom Lane's avatar
      Fix estimate_num_groups() to assume that GROUP BY expressions yielding boolean · 170063cd
      Tom Lane authored
      results always contribute two groups, regardless of the expression contents.
      This is very substantially more accurate than the regular heuristic for
      certain boolean tests like "col IS NULL".  Per gripe from Sam Mason.
      
      Back-patch to all supported releases, since the behavior of
      estimate_num_groups() hasn't changed all that much since 7.4.
      170063cd
    • Tom Lane's avatar
      Fix AT TIME ZONE (in all three variants) so that we first try to interpret · c5083853
      Tom Lane authored
      the timezone argument as a timezone abbreviation, and only try it as a full
      timezone name if that fails.  The zic database has four zones (CET, EET, MET,
      WET) that are full daylight-savings zones and yet have names that are the
      same as their abbreviations for standard time, resulting in ambiguity.
      In the timestamp input functions we resolve the ambiguity by preferring the
      abbreviation, and AT TIME ZONE should work the same way.  (No functionality
      is lost because the zic database also has other names for these zones, eg
      Europe/Zurich.)  Per gripe from Jaromir Talir.
      
      Backpatch to 8.1.  Older releases did not have the issue because AT TIME ZONE
      only accepted abbreviations not zone names.  (Thus, this patch also arguably
      fixes a compatibility botch introduced at 8.1: in ambiguous cases we now
      behave the same as 8.0 did.)
      c5083853
    • Peter Eisentraut's avatar
      76c3c59b
  4. Jul 06, 2008
    • Tom Lane's avatar
      Prevent integer overflows during units conversion when displaying a GUC · fbcc69c1
      Tom Lane authored
      variable that has units.  Per report from Stefan Kaltenbrunner.
      
      Backport to 8.2.  I also backported my patch of 2007-06-21 that prevented
      comparable overflows on the input side, since that now seems to have enough
      field track record to be back-patched safely.  That patch included addition
      of hints listing the available unit names, which I did not bother to strip
      out of it --- this will make a little more work for the translators, but
      they can copy the translation from 8.3, and anyway an untranslated hint
      is better than no hint.
      fbcc69c1
  5. Jul 04, 2008
  6. Jul 03, 2008
  7. Jul 01, 2008
  8. Jun 30, 2008
  9. Jun 29, 2008
  10. Jun 28, 2008
  11. Jun 27, 2008
    • Tom Lane's avatar
      Consider a clause to be outerjoin_delayed if it references the nullable side · dcc23347
      Tom Lane authored
      of any lower outer join, even if it also references the non-nullable side and
      so could not get pushed below the outer join anyway.  We need this in case
      the clause is an OR clause: if it doesn't get marked outerjoin_delayed,
      create_or_index_quals() could pull an indexable restriction for the nullable
      side out of it, leading to wrong results as demonstrated by today's bug
      report from toruvinn.  (See added regression test case for an example.)
      
      In principle this has been wrong for quite a while.  In practice I don't
      think any branch before 8.3 can really show the failure, because
      create_or_index_quals() will only pull out indexable conditions, and before
      8.3 those were always strict.  So though we might have improperly generated
      null-extended rows in the outer join, they'd get discarded from the result
      anyway.  The gating factor that makes the failure visible is that 8.3
      considers "col IS NULL" to be indexable.  Hence I'm not going to risk
      back-patching further than 8.3.
      dcc23347
    • Magnus Hagander's avatar
      Fix standalone libpq build on win32. · f6c1dece
      Magnus Hagander authored
      Hiroshi Saito
      f6c1dece
    • Tom Lane's avatar
      Improve planner's estimation of the size of an append relation: rather than · 2c2161a4
      Tom Lane authored
      taking the maximum of any child rel's width, we should weight the widths
      proportionally to the number of rows expected from each child.  In hindsight
      this is obviously correct because row width is really a proxy for the total
      physical size of the relation.  Per discussion with Scott Carey (bug #4264).
      2c2161a4
    • Bruce Momjian's avatar
      Mention actual function names in documentation of how to pass binary · f95b5334
      Bruce Momjian authored
      values to libpq.
      f95b5334
Loading