1. 21 8月, 2006 1 次提交
    • A
      Fix DROP OWNED BY to correctly consider the implicitly-deleted objects list for · df18c51f
      Alvaro Herrera 提交于
      each object to be deleted, instead of the previous hack that just skipped
      INTERNAL dependencies, which didn't really work.  Per report from Tom Lane.
      
      To do this, introduce a new performMultipleDeletions entry point in
      dependency.c to delete multiple objects at once.  The dependency code then has
      the responsability of tracking INTERNAL and AUTO dependencies as needed.
      
      Along the way, change ObjectAddresses so that we can allocate an ObjectAddress
      list from outside dependency.c and not have to export the internal
      representation.
      df18c51f
  2. 19 8月, 2006 3 次提交
  3. 18 8月, 2006 3 次提交
    • T
      Implement archive_timeout feature to force xlog file switches to occur no more · e8ea9e95
      Tom Lane 提交于
      than N seconds apart.  This allows a simple, if not very high performance,
      means of guaranteeing that a PITR archive is no more than N seconds behind
      real time.  Also make pg_current_xlog_location return the WAL Write pointer,
      add pg_current_xlog_insert_location to return the Insert pointer, and fix
      pg_xlogfile_name_offset to return its results as a two-element record instead
      of a smashed-together string, as per recent discussion.
      
      Simon Riggs
      e8ea9e95
    • T
      Fix an oversight in mergejoin planning: the planner would reject a · 92c651f8
      Tom Lane 提交于
      mergejoin possibility where the inner rel was less well sorted than
      the outer (ie, it matches some but not all of the merge clauses that
      can work with the outer), if the inner path in question is also the
      overall cheapest path for its rel.  This is an old bug, but I'm not
      sure it's worth back-patching, because it's such a corner case.
      Noted while investigating a test case from Peter Hardman.
      92c651f8
    • T
      Teach convert_subquery_pathkeys() to handle the case where the · 144b0ae8
      Tom Lane 提交于
      subquery's pathkey is a RelabelType applied to something that appears
      in the subquery's output; for example where the subquery returns a
      varchar Var and the sort order is shown as that Var coerced to text.
      This comes up because varchar doesn't have its own sort operator.
      Per example from Peter Hardman.
      144b0ae8
  4. 16 8月, 2006 4 次提交
    • P
      b2281fcd
    • T
      Seems some C compilers think 'restrict' is a fully reserved word. · d6ac61cd
      Tom Lane 提交于
      Per buildfarm results from warthog.
      d6ac61cd
    • T
      Add a hack so that get_type_io_data() can work from bootstrap.c's · 1395ac6c
      Tom Lane 提交于
      internal TypInfo table in bootstrap mode.  This allows array_in and
      array_out to be used during early bootstrap, which eliminates the
      former obstacle to giving OUT parameters to built-in functions.
      1395ac6c
    • T
      Add server support for "plugin" libraries that can be used for add-on tasks · abc3120e
      Tom Lane 提交于
      such as debugging and performance measurement.  This consists of two features:
      a table of "rendezvous variables" that allows separately-loaded shared
      libraries to communicate, and a new GUC setting "local_preload_libraries"
      that allows libraries to be loaded into specific sessions without explicit
      cooperation from the client application.  To make local_preload_libraries
      as flexible as possible, we do not restrict its use to superusers; instead,
      it is restricted to load only libraries stored in $libdir/plugins/.  The
      existing LOAD command has also been modified to allow non-superusers to
      LOAD libraries stored in this directory.
      
      This patch also renames the existing GUC variable preload_libraries to
      shared_preload_libraries (after a suggestion by Simon Riggs) and does some
      code refactoring in dfmgr.c to improve clarity.
      
      Korry Douglas, with a little help from Tom Lane.
      abc3120e
  5. 15 8月, 2006 2 次提交
    • T
      Cause '*' and 'foo.*' notations to mark the referenced RTE(s) as · 58538a0f
      Tom Lane 提交于
      requiring read permissions.  Up till now there was no possible case
      in which the RTEs wouldn't already have ACL_SELECT set ... but now that
      you can say something like 'INSERT INTO foo ... RETURNING *' this is
      an essential step.  With this commit, a RETURNING clause adds the
      requirement for SELECT permissions on the target table if and only if
      the clause actually reads the value of at least one target-table column.
      58538a0f
    • T
      Fix oversight in initial implementation of PORTAL_ONE_RETURNING mode: we · 65b2f93b
      Tom Lane 提交于
      cannot assume that there's exactly one Query in the Portal, as we can for
      ONE_SELECT mode, because non-SELECT queries might have extra queries added
      during rule rewrites.  Fix things up so that we'll use ONE_RETURNING mode
      when a Portal contains one primary (canSetTag) query and that query has
      a RETURNING list.  This appears to be a second showstopper reason for running
      the Portal to completion before we start to hand anything back --- we want
      to be sure that the rule-added queries get run too.
      65b2f93b
  6. 14 8月, 2006 4 次提交
  7. 13 8月, 2006 5 次提交
  8. 12 8月, 2006 6 次提交
  9. 10 8月, 2006 6 次提交
  10. 09 8月, 2006 1 次提交
    • T
      Add a feature for automatic initialization and finalization of dynamically · b09bfcaa
      Tom Lane 提交于
      loaded libraries: call functions _PG_init() and _PG_fini() if the library
      defines such symbols.  Hence we no longer need to specify an initialization
      function in preload_libraries: we can assume that the library used the
      _PG_init() convention, instead.  This removes one source of pilot error
      in use of preloaded libraries.  Original patch by Ralf Engelschall,
      preload_libraries changes by me.
      b09bfcaa
  11. 08 8月, 2006 4 次提交
  12. 06 8月, 2006 1 次提交
    • T
      Add support for forcing a switch to a new xlog file; cause such a switch · 704ddaaa
      Tom Lane 提交于
      to happen automatically during pg_stop_backup().  Add some functions for
      interrogating the current xlog insertion point and for easily extracting
      WAL filenames from the hex WAL locations displayed by pg_stop_backup
      and friends.  Simon Riggs with some editorialization by Tom Lane.
      704ddaaa