1. 12 8月, 2006 1 次提交
  2. 02 8月, 2006 1 次提交
  3. 31 7月, 2006 1 次提交
    • T
      Change the bootstrap sequence so that toast tables for system catalogs are · 6e38e34d
      Tom Lane 提交于
      created in the bootstrap phase proper, rather than added after-the-fact
      by initdb.  This is cleaner than before because it allows us to retire the
      undocumented ALTER TABLE ... CREATE TOAST TABLE command, but the real reason
      I'm doing it is so that toast tables of shared catalogs will now have
      predetermined OIDs.  This will allow a reasonably clean solution to the
      problem of locking tables before we load their relcache entries, to appear
      in a forthcoming patch.
      6e38e34d
  4. 28 7月, 2006 1 次提交
    • T
      Aggregate functions now support multiple input arguments. I also took · 108fe473
      Tom Lane 提交于
      the opportunity to treat COUNT(*) as a zero-argument aggregate instead
      of the old hack that equated it to COUNT(1); this is materially cleaner
      (no more weird ANYOID cases) and ought to be at least a tiny bit faster.
      Original patch by Sergey Koposov; review, documentation, simple regression
      tests, pg_dump and psql support by moi.
      108fe473
  5. 04 7月, 2006 1 次提交
    • T
      Code review for FILLFACTOR patch. Change WITH grammar as per earlier · b7b78d24
      Tom Lane 提交于
      discussion (including making def_arg allow reserved words), add missed
      opt_definition for UNIQUE case.  Put the reloptions support code in a less
      random place (I chose to make a new file access/common/reloptions.c).
      Eliminate header inclusion creep.  Make the index options functions safely
      user-callable (seems like client apps might like to be able to test validity
      of options before trying to make an index).  Reduce overhead for normal case
      with no options by allowing rd_options to be NULL.  Fix some unmaintainably
      klugy code, including getting rid of Natts_pg_class_fixed at long last.
      Some stylistic cleanup too, and pay attention to keeping comments in sync
      with code.
      
      Documentation still needs work, though I did fix the omissions in
      catalogs.sgml and indexam.sgml.
      b7b78d24
  6. 02 7月, 2006 2 次提交
    • B
      Add FILLFACTOR to CREATE INDEX. · 277807bd
      Bruce Momjian 提交于
      ITAGAKI Takahiro
      277807bd
    • B
      ALTER TABLE ... ADD/DROPS INHERIT (actually INHERIT / NO INHERIT) · 8c092781
      Bruce Momjian 提交于
      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
  7. 27 6月, 2006 1 次提交
  8. 17 6月, 2006 2 次提交
  9. 28 5月, 2006 1 次提交
  10. 01 5月, 2006 1 次提交
  11. 27 4月, 2006 1 次提交
  12. 25 4月, 2006 4 次提交
  13. 16 4月, 2006 1 次提交
    • T
      Support the syntax · 3651a3e6
      Tom Lane 提交于
      	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
  14. 23 3月, 2006 1 次提交
  15. 15 3月, 2006 2 次提交
    • T
      It seems the YYLLOC_DEFAULT macro recommended by the Bison 1.875 manual · 1349839c
      Tom Lane 提交于
      just doesn't work with Bison 2.0 ... fix it ...
      1349839c
    • T
      Improve parser so that we can show an error cursor position for errors · 20ab467d
      Tom Lane 提交于
      during parse analysis, not only errors detected in the flex/bison stages.
      This is per my earlier proposal.  This commit includes all the basic
      infrastructure, but locations are only tracked and reported for errors
      involving column references, function calls, and operators.  More could
      be done later but this seems like a good set to start with.  I've also
      moved the ReportSyntaxErrorPosition logic out of psql and into libpq,
      which should make it available to more people --- even within psql this
      is an improvement because warnings weren't handled by ReportSyntaxErrorPosition.
      20ab467d
  16. 07 3月, 2006 1 次提交
  17. 05 3月, 2006 1 次提交
  18. 03 3月, 2006 1 次提交
  19. 01 3月, 2006 1 次提交
    • T
      Allow the syntax CREATE TYPE foo, with no parameters, to permit explicit · 8e68d783
      Tom Lane 提交于
      creation of a shell type.  This allows a less hacky way of dealing with
      the mutual dependency between a datatype and its I/O functions: make a
      shell type, then make the functions, then define the datatype fully.
      We should fix pg_dump to handle things this way, but this commit just deals
      with the backend.
      
      Martijn van Oosterhout, with some corrections by Tom Lane.
      8e68d783
  20. 19 2月, 2006 1 次提交
  21. 13 2月, 2006 1 次提交
  22. 12 2月, 2006 2 次提交
    • B
      I've created a new shared catalog table pg_shdescription to store · f9a726aa
      Bruce Momjian 提交于
      comments on cluster global objects like databases, tablespaces, and
      roles.
      
      It touches a lot of places, but not much in the way of big changes.  The
      only design decision I made was to duplicate the query and manipulation
      functions rather than to try and have them handle both shared and local
      comments.  I believe this is simpler for the code and not an issue for
      callers because they know what type of object they are dealing with.
      This has resulted in a shobj_description function analagous to
      obj_description and backend functions [Create/Delete]SharedComments
      mirroring the existing [Create/Delete]Comments functions.
      
      pg_shdescription.h goes into src/include/catalog/
      
      Kris Jurka
      f9a726aa
    • B
      Allow ALTER TABLE ... ALTER CONSTRAINT ... RENAME · a02f6ce3
      Bruce Momjian 提交于
      Joachim Wieland
      a02f6ce3
  23. 05 2月, 2006 1 次提交
    • A
      · f8b54fe6
      Andrew Dunstan 提交于
      DROP IF EXISTS for ROLE/USER/GROUP
      f8b54fe6
  24. 01 2月, 2006 1 次提交
  25. 23 1月, 2006 1 次提交
  26. 22 1月, 2006 1 次提交
    • N
      Allow an optional alias for the target table to be specified for UPDATE · 1d763d91
      Neil Conway 提交于
      and DELETE. If specified, the alias must be used instead of the full
      table name. Also, the alias currently cannot be used in the SET clause
      of UPDATE.
      
      Patch from Atsushi Ogawa, various editorialization by Neil Conway.
      Along the way, make the rowtypes regression test pass if add_missing_from
      is enabled, and add a new (skeletal) regression test for DELETE.
      1d763d91
  27. 21 1月, 2006 1 次提交
    • B
      Add GRANT ON SEQUENCE syntax to support sequence-only permissions. · 4789e988
      Bruce Momjian 提交于
      Continue to support GRANT ON [TABLE] for sequences for backward
      compatibility;  issue warning for invalid sequence permissions.
      
      [Backward compatibility warning message.]
      
      Add USAGE permission for sequences that allows only currval() and
      nextval(), not setval().
      
      Mention object name in grant/revoke warnings because of possible
      multi-object operations.
      4789e988
  28. 29 12月, 2005 1 次提交
  29. 28 12月, 2005 1 次提交
    • T
      Implement SQL-compliant treatment of row comparisons for < <= > >= cases · 6e077097
      Tom Lane 提交于
      (previously we only did = and <> correctly).  Also, allow row comparisons
      with any operators that are in btree opclasses, not only those with these
      specific names.  This gets rid of a whole lot of indefensible assumptions
      about the behavior of particular operators based on their names ... though
      it's still true that IN and NOT IN expand to "= ANY".  The patch adds a
      RowCompareExpr expression node type, and makes some changes in the
      representation of ANY/ALL/ROWCOMPARE SubLinks so that they can share code
      with RowCompareExpr.
      
      I have not yet done anything about making RowCompareExpr an indexable
      operator, but will look at that soon.
      
      initdb forced due to changes in stored rules.
      6e077097
  30. 27 12月, 2005 1 次提交
  31. 24 12月, 2005 1 次提交
  32. 11 12月, 2005 1 次提交
  33. 28 11月, 2005 1 次提交
    • T
      Change the parser to translate "foo [NOT] IN (expression-list)" to · 3d376fce
      Tom Lane 提交于
      ScalarArrayOpExpr when possible, that is, whenever there is an array type
      for the values of the expression list.  This completes the project I've
      been working on to improve the speed of index searches with long IN lists,
      as per discussion back in mid-October.
      
      I did not force initdb, but until you do one you will see failures in the
      "rules" regression test, because some of the standard system views use IN
      and their compiled formats have changed.
      3d376fce