Skip to content
Snippets Groups Projects
  1. Jul 04, 2006
  2. 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
  3. Jun 29, 2006
  4. Jun 27, 2006
  5. Jun 18, 2006
  6. Jun 17, 2006
  7. Jun 03, 2006
  8. Jun 01, 2006
  9. May 31, 2006
  10. May 26, 2006
  11. May 13, 2006
  12. May 07, 2006
  13. May 04, 2006
    • Tom Lane's avatar
      Rethink the locking mechanisms used for CREATE/DROP/RENAME DATABASE. · 52667d56
      Tom Lane authored
      The former approach used ExclusiveLock on pg_database, which being a
      cluster-wide lock meant only one of these operations could proceed at
      a time; worse, it also blocked all incoming connections in ReverifyMyDatabase.
      Now that we have LockSharedObject(), we can use locks of different types
      applied to databases considered as objects.  This allows much more
      flexible management of the interlocking: two CREATE DATABASEs need not
      block each other, and need not block connections except to the template
      database being used.  Similarly DROP DATABASE doesn't block unrelated
      operations.  The locking used in flatfiles.c is also much narrower in
      scope than before.  Per recent proposal.
      52667d56
  14. Apr 30, 2006
  15. Apr 27, 2006
  16. Apr 26, 2006
  17. Apr 25, 2006
  18. Apr 22, 2006
  19. Apr 15, 2006
    • Bruce Momjian's avatar
      Document that pg_dump -d/-D prevents invalid data from canceling the · 598dfee5
      Bruce Momjian authored
      entire table load.
      598dfee5
    • Tom Lane's avatar
      Support the syntax · 3651a3e6
      Tom Lane authored
      	CREATE AGGREGATE aggname (input_type) (parameter_list)
      along with the old syntax where the input type was named in the parameter
      list.  This fits more naturally with the way that the aggregate is identified
      in DROP AGGREGATE and other utility commands; furthermore it has a natural
      extension to handle multiple-input aggregates, where the basetype-parameter
      method would get ugly.  In fact, this commit fixes the grammar and all the
      utility commands to support multiple-input aggregates; but DefineAggregate
      rejects it because the executor isn't fixed yet.
      I didn't do anything about treating agg(*) as a zero-input aggregate instead
      of artificially making it a one-input aggregate, but that should be considered
      in combination with supporting multi-input aggregates.
      3651a3e6
  20. Apr 06, 2006
    • Tom Lane's avatar
      Fix a bunch of problems with domains by making them use special input functions · 7fdb4305
      Tom Lane authored
      that apply the necessary domain constraint checks immediately.  This fixes
      cases where domain constraints went unchecked for statement parameters,
      PL function local variables and results, etc.  We can also eliminate existing
      special cases for domains in places that had gotten it right, eg COPY.
      
      Also, allow domains over domains (base of a domain is another domain type).
      This almost worked before, but was disallowed because the original patch
      hadn't gotten it quite right.
      7fdb4305
  21. Apr 04, 2006
    • Tom Lane's avatar
      Modify all callers of datatype input and receive functions so that if these · 147d4bf3
      Tom Lane authored
      functions are not strict, they will be called (passing a NULL first parameter)
      during any attempt to input a NULL value of their datatype.  Currently, all
      our input functions are strict and so this commit does not change any
      behavior.  However, this will make it possible to build domain input functions
      that centralize checking of domain constraints, thereby closing numerous holes
      in our domain support, as per previous discussion.
      
      While at it, I took the opportunity to introduce convenience functions
      InputFunctionCall, OutputFunctionCall, etc to use in code that calls I/O
      functions.  This eliminates a lot of grotty-looking casts, but the main
      motivation is to make it easier to grep for these places if we ever need
      to touch them again.
      147d4bf3
  22. Apr 02, 2006
  23. Mar 17, 2006
  24. Mar 08, 2006
  25. Mar 03, 2006
Loading