1. 25 5月, 2011 2 次提交
  2. 24 5月, 2011 5 次提交
    • T
      Make plpgsql complain about conflicting IN and OUT parameter names. · 59a4a571
      Tom Lane 提交于
      The core CREATE FUNCTION code only enforces that IN parameter names are
      non-duplicate, and that OUT parameter names are separately non-duplicate.
      This is because some function languages might not have any confusion
      between the two.  But in plpgsql, such names are all in the same namespace,
      so we'd better disallow it.
      
      Per a recent complaint from Dan S.  Not back-patching since this is a small
      issue and the change could cause unexpected failures if we started to
      enforce it in a minor release.
      59a4a571
    • H
      Fix integer overflow in text_format function, reported by Dean Rasheed. · 34be83b7
      Heikki Linnakangas 提交于
      In the passing, clarify the comment on why text_format_nv wrapper is needed.
      34be83b7
    • R
      Improve hash_array() logic for combining hash values. · 7149b128
      Robert Haas 提交于
      The new logic is less vulnerable to transpositions.
      
      This invalidates the contents of hash indexes built with the old
      functions; hence, bump catversion.
      
      Dean Rasheed
      7149b128
    • P
      Message style improvements · c58b945e
      Peter Eisentraut 提交于
      c58b945e
    • T
      Install defenses against overflow in BuildTupleHashTable(). · 299d1716
      Tom Lane 提交于
      The planner can sometimes compute very large values for numGroups, and in
      cases where we have no alternative to building a hashtable, such a value
      will get fed directly to BuildTupleHashTable as its nbuckets parameter.
      There were two ways in which that could go bad.  First, BuildTupleHashTable
      declared the parameter as "int" but most callers were passing "long"s,
      so on 64-bit machines undetected overflow could occur leading to a bogus
      negative value.  The obvious fix for that is to change the parameter to
      "long", which is what I've done in HEAD.  In the back branches that seems a
      bit risky, though, since third-party code might be calling this function.
      So for them, just put in a kluge to treat negative inputs as INT_MAX.
      Second, hash_create can go nuts with extremely large requested table sizes
      (notably, my_log2 becomes an infinite loop for inputs larger than
      LONG_MAX/2).  What seems most appropriate to avoid that is to bound the
      initial table size request to work_mem.
      
      This fixes bug #6035 reported by Daniel Schreiber.  Although the reported
      case only occurs back to 8.4 since it involves WITH RECURSIVE, I think
      it's a good idea to install the defenses in all supported branches.
      299d1716
  3. 23 5月, 2011 5 次提交
  4. 22 5月, 2011 5 次提交
  5. 21 5月, 2011 2 次提交
  6. 20 5月, 2011 6 次提交
  7. 19 5月, 2011 9 次提交
  8. 17 5月, 2011 2 次提交
    • T
      Fix pg_dump's handling of extension-member casts and languages. · b3bc63ef
      Tom Lane 提交于
      pg_dump has some heuristic rules for whether to dump casts and procedural
      languages, since it's not all that easy to distinguish built-in ones from
      user-defined ones.  However, we should not apply those rules to objects
      that belong to an extension, but just use the perfectly well-defined rules
      for what to do with extension member objects.  Otherwise we might
      mistakenly lose extension member objects during a binary upgrade (which is
      the only time that we'd want to dump extension members).
      b3bc63ef
    • B
      Update pg_upgrade directory check error message. · e728701f
      Bruce Momjian 提交于
      e728701f
  9. 16 5月, 2011 4 次提交