Skip to content
Snippets Groups Projects
  1. Sep 20, 2010
  2. Sep 16, 2010
  3. Jun 24, 2010
  4. Jun 09, 2010
  5. May 13, 2010
  6. Apr 03, 2010
    • Peter Eisentraut's avatar
      Remove unnecessary xref endterm attributes and title ids · 6dcce398
      Peter Eisentraut authored
      The endterm attribute is mainly useful when the toolchain does not support
      automatic link target text generation for a particular situation.  In  the
      past, this was required by the man page tools for all reference page links,
      but that is no longer the case, and it now actually gets in the way of
      proper automatic link text generation.  The only remaining use cases are
      currently xrefs to refsects.
      6dcce398
  7. Jan 22, 2010
  8. Sep 18, 2009
    • Peter Eisentraut's avatar
      Easier to translate psql help · 20f7f019
      Peter Eisentraut authored
      Instead of requiring translators to translate the entire SQL command
      synopses, change create_help.pl to only require them to translate the
      placeholders, and paste those into the synopsis using a printf mechanism.
      Make some small updates to the markup to make it easier to parse.
      
      Note: This causes msgmerge of gettext 0.17 to segfault.  You will need
      the patch from https://savannah.gnu.org/bugs/?27474 to make it work.
      msgmerge usually only runs on babel.postgresql.org, however.
      20f7f019
  9. Aug 03, 2009
  10. Jul 20, 2009
  11. May 03, 2009
  12. Apr 16, 2009
  13. Feb 11, 2009
    • Tom Lane's avatar
      Change ALTER TABLE SET WITHOUT OIDS to rewrite the whole table to physically · 6d1e3618
      Tom Lane authored
      get rid of the OID column.  This eliminates the problem discovered by Heikki
      back in November that 8.4's suppression of "unnecessary" junk filtering in
      INSERT/SELECT could lead to an Assert failure, or storing of oids into a table
      that shouldn't have them if Asserts are off.  While that particular problem
      could have been solved in other ways, it seems likely to be just a forerunner
      of things to come if we continue to allow tables to contain rows that disagree
      with the pg_class.relhasoids setting.  It's better to make this operation slow
      than to sacrifice performance or risk bugs in more common code paths.
      
      Also, add ALTER TABLE SET WITH OIDS to rewrite the table to add oids.
      This was a bit more controversial, but in view of the very small amount of
      extra code needed given the current ALTER TABLE infrastructure, it seems best
      to eliminate the asymmetry in features.
      6d1e3618
  14. Feb 09, 2009
  15. Dec 13, 2008
  16. Nov 14, 2008
  17. Oct 21, 2008
  18. May 10, 2008
    • Tom Lane's avatar
      Change the rules for inherited CHECK constraints to be essentially the same · cd902b33
      Tom Lane authored
      as those for inherited columns; that is, it's no longer allowed for a child
      table to not have a check constraint matching one that exists on a parent.
      This satisfies the principle of least surprise (rows selected from the parent
      will always appear to meet its check constraints) and eliminates some
      longstanding bogosity in pg_dump, which formerly had to guess about whether
      check constraints were really inherited or not.
      
      The implementation involves adding conislocal and coninhcount columns to
      pg_constraint (paralleling attislocal and attinhcount in pg_attribute)
      and refactoring various ALTER TABLE actions to be more like those for
      columns.
      
      Alex Hunsaker, Nikhil Sontakke, Tom Lane
      cd902b33
  19. Nov 28, 2007
  20. May 18, 2007
  21. Mar 22, 2007
  22. Mar 20, 2007
    • Jan Wieck's avatar
      Changes pg_trigger and extend pg_rewrite in order to allow triggers and · 0fe16500
      Jan Wieck authored
      rules to be defined with different, per session controllable, behaviors
      for replication purposes.
      
      This will allow replication systems like Slony-I and, as has been stated
      on pgsql-hackers, other products to control the firing mechanism of
      triggers and rewrite rules without modifying the system catalog directly.
      
      The firing mechanisms are controlled by a new superuser-only GUC
      variable, session_replication_role, together with a change to
      pg_trigger.tgenabled and a new column pg_rewrite.ev_enabled. Both
      columns are a single char data type now (tgenabled was a bool before).
      The possible values in these attributes are:
      
           'O' - Trigger/Rule fires when session_replication_role is "origin"
                 (default) or "local". This is the default behavior.
      
           'D' - Trigger/Rule is disabled and fires never
      
           'A' - Trigger/Rule fires always regardless of the setting of
                 session_replication_role
      
           'R' - Trigger/Rule fires when session_replication_role is "replica"
      
      The GUC variable can only be changed as long as the system does not have
      any cached query plans. This will prevent changing the session role and
      accidentally executing stored procedures or functions that have plans
      cached that expand to the wrong query set due to differences in the rule
      firing semantics.
      
      The SQL syntax for changing a triggers/rules firing semantics is
      
           ALTER TABLE <tabname> <when> TRIGGER|RULE <name>;
      
           <when> ::= ENABLE | ENABLE ALWAYS | ENABLE REPLICA | DISABLE
      
      psql's \d command as well as pg_dump are extended in a backward
      compatible fashion.
      
      Jan
      0fe16500
  23. Feb 01, 2007
  24. Oct 23, 2006
  25. Oct 13, 2006
  26. Sep 16, 2006
  27. Aug 21, 2006
    • Tom Lane's avatar
      Fix all known problems with pg_dump's handling of serial sequences · 2b2a5072
      Tom Lane authored
      by abandoning the idea that it should say SERIAL in the dump.  Instead,
      dump serial sequences and column defaults just like regular ones.
      Add a new backend command ALTER SEQUENCE OWNED BY to let pg_dump recreate
      the sequence-to-column dependency that was formerly created "behind the
      scenes" by SERIAL.  This restores SERIAL to being truly "just a macro"
      consisting of component operations that can be stated explicitly in SQL.
      Furthermore, the new command allows sequence ownership to be reassigned,
      so that old mistakes can be cleaned up.
      
      Also, downgrade the OWNED-BY dependency from INTERNAL to AUTO, since there
      is no longer any very compelling argument why the sequence couldn't be
      dropped while keeping the column.  (This forces initdb, to be sure the
      right kinds of dependencies are in there.)
      
      Along the way, add checks to prevent ALTER OWNER or SET SCHEMA on an
      owned sequence; you can now only do this indirectly by changing the
      owning table's owner or schema.  This is an oversight in previous
      releases, but probably not worth back-patching.
      2b2a5072
  28. Aug 03, 2006
    • Tom Lane's avatar
      Cause ALTER TABLE to perform ALTER COLUMN DROP DEFAULT operations during · 7946f772
      Tom Lane authored
      the DROP pass rather than the ADD_CONSTR pass.  On examining the code I
      think this was just an oversight rather than intentional, and it seems
      to satisfy the principle of least surprise better than the alternative
      solution that was discussed.  Add an example to the ref page showing how
      to do ALTER TYPE and update the default in one command.  Per gripe from
      Markus Bertheau that that wasn't possible.
      7946f772
  29. Jul 04, 2006
  30. Jul 02, 2006
    • Bruce Momjian's avatar
      Add FILLFACTOR to CREATE INDEX. · 277807bd
      Bruce Momjian authored
      ITAGAKI Takahiro
      277807bd
    • Bruce Momjian's avatar
      ALTER TABLE ... ADD/DROPS INHERIT (actually INHERIT / NO INHERIT) · 8c092781
      Bruce Momjian authored
      Open items:
      
      There were a few tangentially related issues that have come up that I think
      are TODOs. I'm likely to tackle one or two of these next so I'm interested in
      hearing feedback on them as well.
      
      . Constraints currently do not know anything about inheritance. Tom suggested
        adding a coninhcount and conislocal like attributes have to track their
        inheritance status.
      
      . Foreign key constraints currently do not get copied to new children (and
        therefore my code doesn't verify them). I don't think it would be hard to
        add them and treat them like CHECK constraints.
      
      . No constraints at all are copied to tables defined with LIKE. That makes it
        hard to use LIKE to define new partitions. The standard defines LIKE and
        specifically says it does not copy constraints. But the standard already has
        an option called INCLUDING DEFAULTS; we could always define a non-standard
        extension LIKE table INCLUDING CONSTRAINTS that gives the user the option to
        request a copy including constraints.
      
      . Personally, I think the whole attislocal thing is bunk. The decision about
        whether to drop a column from children tables or not is something that
        should be up to the user and trying to DWIM based on whether there was ever
        a local definition or the column was acquired purely through inheritance is
        hardly ever going to match up with user expectations.
      
      . And of course there's the whole unique and primary key constraint issue. I
        think to get any traction at all on this you have a prerequisite of a real
        partitioned table implementation where the system knows what the partition
        key is so it can recognize when it's a leading part of an index key.
      
      Greg Stark
      8c092781
  31. Feb 12, 2006
  32. Feb 11, 2006
  33. Dec 08, 2005
    • Bruce Momjian's avatar
      there's a paragraph in the ALTER TABLE reference page that reads: · 04db9d25
      Bruce Momjian authored
      DROP CONSTRAINT
      
          This form drops constraints on a table. Currently, constraints on tables
          are not required to have unique names, so there may be more than one
          constraint matching the specified name. All matching constraints will be
          dropped.
      
      To my knowledge, it is no longer possible to create constraints with the
      same name for the same relation. When you create a constraint and specify
      the same name explictly, an error is raised. Implicit constraint creation
      won't choose an existing name either and up to now you could not rename a
      constraint. Renaming works with the patch I sent in a few hours ago but this
      patch as well won't allow constraints with identical names on the same
      relation.
      
      The attached patch thus removes the note in the docs.
      
      Joachim Wieland
      04db9d25
  34. Aug 24, 2005
  35. Aug 22, 2005
  36. Aug 04, 2005
    • Tom Lane's avatar
      ALTER TABLE OWNER must change the ownership of the table's rowtype too. · 33f5bf97
      Tom Lane authored
      This was not especially critical before, but it is now that we track
      ownership dependencies --- the dependency for the rowtype *must* shift
      to the new owner.  Spotted by Bernd Helmle.
      Also fix a problem introduced by recent change to allow non-superusers
      to do ALTER OWNER in some cases: if the table had a toast table, ALTER
      OWNER failed *even for superusers*, because the test being applied would
      conclude that the new would-be owner had no create rights on pg_toast.
      A side-effect of the fix is to disallow changing the ownership of indexes
      or toast tables separately from their parent table, which seems a good
      idea on the whole.
      33f5bf97
  37. Aug 01, 2005
Loading