Skip to content
Snippets Groups Projects
  1. Jun 10, 2009
  2. Jun 09, 2009
    • Tom Lane's avatar
      Mark internal_in as not strict, so that the construct "null::internal" · e343eaaf
      Tom Lane authored
      will throw an error, rather than possibly allowing someone to synthesize
      a manual call to an internal-accepting function.  As of CVS HEAD and existing
      releases, all such functions are either STRICT or careful about null inputs,
      so there is no current security issue here.  But it seems like a good idea
      to lock this down to protect against future mistakes.
      
      In passing, similarly lock down trigger_in, language_handler_in, opaque_in,
      and shell_in.  These are not believed to present any security risk, but
      there's still no good reason to allow nulls of these types to be created.
      I left the polymorphic pseudotypes (anyelement etc) alone, since a null
      of one of those types doesn't seem to be a problem --- the worst you can
      say about it is that it doesn't have an underlying non-polymorphic type.
      
      If we were to make this change during normal development, we'd just
      automatically bump catversion for a pg_proc.h change.  But since this doesn't
      create a compatibility risk and isn't believed to be fixing a live bug, it
      seems better not to force a catversion bump in late beta.
      e343eaaf
    • Alvaro Herrera's avatar
      Fix typo, per Tom · e66576e5
      Alvaro Herrera authored
      e66576e5
    • Tom Lane's avatar
      Switch order of tests to avoid possible Assert failure for · 59fb29ca
      Tom Lane authored
      "array_agg_finalfn(null)".  We should modify pg_proc entries to prevent this
      query from being accepted, but let's just make the function itself secure too.
      Per my note of today.
      59fb29ca
    • Tom Lane's avatar
      Restore dblink_current_query() to being a C-language function, so as to not · f3e122fc
      Tom Lane authored
      create an ABI break between 8.3 and 8.4.  It is still just a wrapper around
      the built-in current_query() function, but at a different implementation
      level.  Per my proposal.
      
      Note: this change doesn't break 8.4beta installations, since their
      SQL-language definition of the function still works fine.
      f3e122fc
    • Alvaro Herrera's avatar
      Dynamically set a lower bound on autovacuum nap time so that we don't rebuild · e8f28cb2
      Alvaro Herrera authored
      the database list too often.
      
      Per bug report from Łukasz Jagiełło and ensuing discussion on
      pgsql-performance.
      e8f28cb2
    • Joe Conway's avatar
      Default client encoding to server encoding for dblink connections. Addresses · e5de6012
      Joe Conway authored
      issue raised by Ruzsinszky Attila and confirmed by others.
      
       ----------------------------------------------------------------------
      e5de6012
    • Tom Lane's avatar
      Fix failure to double-quote function argument names when needed, in · adaf6013
      Tom Lane authored
      pg_get_function_arguments() and related functions.  Per report from
      Andreas Nolte.
      adaf6013
  3. Jun 08, 2009
  4. Jun 07, 2009
    • Tom Lane's avatar
      Revert my patch of 2009-04-04 that removed contrib/intarray's definitions of · 156475a5
      Tom Lane authored
      the <@ and @> operators.  These are not in fact equivalent to the built-in
      anyarray operators of the same names, because they have different behavior for
      empty arrays, namely they don't think empty arrays are contained in anything.
      That is mathematically wrong, no doubt, but until we can persuade GIN indexes
      to implement the mathematical definition we should probably not change this.
      Another reason for not changing it now is that we can't yet ensure the
      opclasses will be updated correctly in a dump-and-reload upgrade.  Per
      recent discussions.
      156475a5
    • Tom Lane's avatar
      Improve the IndexVacuumInfo/IndexBulkDeleteResult API to allow somewhat sane · 32ea2363
      Tom Lane authored
      behavior in cases where we don't know the heap tuple count accurately; in
      particular partial vacuum, but this also makes the API a bit more useful
      for ANALYZE.  This patch adds "estimated_count" flags to both structs so
      that an approximate count can be flagged as such, and adjusts the logic
      so that approximate counts are not used for updating pg_class.reltuples.
      
      This fixes my previous complaint that VACUUM was putting ridiculous values
      into pg_class.reltuples for indexes.  The actual impact of that bug is
      limited, because the planner only pays attention to reltuples for an index
      if the index is partial; which probably explains why beta testers hadn't
      noticed a degradation in plan quality from it.  But it needs to be fixed.
      
      The whole thing is a bit messy and should be redesigned in future, because
      reltuples now has the potential to drift quite far away from reality when
      a long period elapses with no non-partial vacuums.  But this is as good as
      it's going to get for 8.4.
      32ea2363
  5. Jun 06, 2009
  6. Jun 05, 2009
  7. Jun 04, 2009
  8. Jun 03, 2009
Loading