1. 12 Jul, 2002 1 commit
    • Tom Lane's avatar
      Second phase of committing Rod Taylor's pg_depend/pg_constraint patch. · 7c6df91d
      Tom Lane authored
      pg_relcheck is gone; CHECK, UNIQUE, PRIMARY KEY, and FOREIGN KEY
      constraints all have real live entries in pg_constraint.  pg_depend
      exists, and RESTRICT/CASCADE options work on most kinds of DROP;
      however, pg_depend is not yet very well populated with dependencies.
      (Most of the ones that are present at this point just replace formerly
      hardwired associations, such as the implicit drop of a relation's pg_type
      entry when the relation is dropped.)  Need to add more logic to create
      dependency entries, improve pg_dump to dump constraints in place of
      indexes and triggers, and add some regression tests.
      7c6df91d
  2. 11 Jul, 2002 1 commit
  3. 25 Jun, 2002 2 commits
    • Bruce Momjian's avatar
      Back out cleanup patch. Got old version and needs work. · e2c00704
      Bruce Momjian authored
      Neil Conway
      e2c00704
    • Bruce Momjian's avatar
      The attached patch fixes some spelling mistakes, makes the · ed275aea
      Bruce Momjian authored
      comments on one of the optimizer functions a lot more
      clear, adds a summary of the recent KSQO discussion to the
      comments in the code, adds regression tests for the bug with
      sequence state Tom fixed recently and another reg. test, and
      removes some PostQuel legacy stuff: ExecAppend -> ExecInsert,
      ExecRetrieve -> ExecSelect, etc. This was changed because the
      elog() messages from this routine are user-visible, so we
      should be using the SQL terms.
      
      Neil Conway
      ed275aea
  4. 03 May, 2002 1 commit
    • Tom Lane's avatar
      Retire xlateSqlType/xlateSqlFunc; all type name translations are now · 53cedcac
      Tom Lane authored
      handled as special productions.  This is needed to keep us honest about
      user-schema type names that happen to coincide with system type names.
      Per pghackers discussion 24-Apr.  To avoid bloating the keyword list
      too much, I removed the translations for datetime, timespan, and lztext,
      all of which were slated for destruction several versions back anyway.
      53cedcac
  5. 24 Apr, 2002 2 commits
  6. 12 Apr, 2002 1 commit
  7. 11 Apr, 2002 1 commit
    • Tom Lane's avatar
      Restructure representation of aggregate functions so that they have pg_proc · 902a6a0a
      Tom Lane authored
      entries, per pghackers discussion.  This fixes aggregates to live in
      namespaces, and also simplifies/speeds up lookup in parse_func.c.
      Also, add a 'proimplicit' flag to pg_proc that controls whether a type
      coercion function may be invoked implicitly, or only explicitly.  The
      current settings of these flags are more permissive than I would like,
      but we will need to debate and refine the behavior; for now, I avoided
      breaking regression tests as much as I could.
      902a6a0a
  8. 05 Apr, 2002 1 commit
  9. 01 Apr, 2002 1 commit
  10. 21 Mar, 2002 1 commit
    • Tom Lane's avatar
      First phase of SCHEMA changes, concentrating on fixing the grammar and · 95ef6a34
      Tom Lane authored
      the parsetree representation.  As yet we don't *do* anything with schema
      names, just drop 'em on the floor; but you can enter schema-compatible
      command syntax, and there's even a primitive CREATE SCHEMA command.
      No doc updates yet, except to note that you can now extract a field
      from a function-returning-row's result with (foo(...)).fieldname.
      95ef6a34
  11. 19 Mar, 2002 1 commit
  12. 06 Mar, 2002 1 commit
    • Bruce Momjian's avatar
      Change made to elog: · 92288a1c
      Bruce Momjian authored
      o  Change all current CVS messages of NOTICE to WARNING.  We were going
      to do this just before 7.3 beta but it has to be done now, as you will
      see below.
      
      o Change current INFO messages that should be controlled by
      client_min_messages to NOTICE.
      
      o Force remaining INFO messages, like from EXPLAIN, VACUUM VERBOSE, etc.
      to always go to the client.
      
      o Remove INFO from the client_min_messages options and add NOTICE.
      
      Seems we do need three non-ERROR elog levels to handle the various
      behaviors we need for these messages.
      
      Regression passed.
      92288a1c
  13. 04 Mar, 2002 1 commit
  14. 02 Mar, 2002 1 commit
    • Bruce Momjian's avatar
      Commit to match discussed elog() changes. Only update is that LOG is · a033daf5
      Bruce Momjian authored
      now just below FATAL in server_min_messages.  Added more text to
      highlight ordering difference between it and client_min_messages.
      
      ---------------------------------------------------------------------------
      
      REALLYFATAL => PANIC
      STOP => PANIC
      New INFO level the prints to client by default
      New LOG level the prints to server log by default
      Cause VACUUM information to print only to the client
      NOTICE => INFO where purely information messages are sent
      DEBUG => LOG for purely server status messages
      DEBUG removed, kept as backward compatible
      DEBUG5, DEBUG4, DEBUG3, DEBUG2, DEBUG1 added
      DebugLvl removed in favor of new DEBUG[1-5] symbols
      New server_min_messages GUC parameter with values:
              DEBUG[5-1], INFO, NOTICE, ERROR, LOG, FATAL, PANIC
      New client_min_messages GUC parameter with values:
              DEBUG[5-1], LOG, INFO, NOTICE, ERROR, FATAL, PANIC
      Server startup now logged with LOG instead of DEBUG
      Remove debug_level GUC parameter
      elog() numbers now start at 10
      Add test to print error message if older elog() values are passed to elog()
      Bootstrap mode now has a -d that requires an argument, like postmaster
      a033daf5
  15. 24 Nov, 2001 1 commit
  16. 04 Nov, 2001 2 commits
  17. 31 Oct, 2001 2 commits
  18. 12 Oct, 2001 1 commit
    • Tom Lane's avatar
      Break transformCreateStmt() into multiple routines and make · f9e6e27c
      Tom Lane authored
      transformAlterStmt() use these routines, instead of having lots of
      duplicate (not to mention should-have-been-duplicate) code.
      Adding a column with a CHECK constraint actually works now,
      and the tests to reject unsupported DEFAULT and NOT NULL clauses
      actually fire now.  ALTER TABLE ADD PRIMARY KEY works, modulo
      having to have created the column(s) NOT NULL already.
      f9e6e27c
  19. 09 Aug, 2001 1 commit
  20. 30 May, 2001 1 commit
  21. 11 May, 2001 1 commit
  22. 09 May, 2001 1 commit
  23. 05 Dec, 2000 1 commit
    • Tom Lane's avatar
      From Stephan Szabo: · 981a7d32
      Tom Lane authored
      I believe this should fix the issue that Philip Warner
      noticed about the check for unique constraints meeting the
      referenced keys of a foreign key constraint allowing the
      specification of a subset of a foreign key instead of
      rejecting it.  I also added tests for a base case of
      this to the foreign key and alter table tests and patches
      for expected output.
      981a7d32
  24. 29 Aug, 2000 1 commit
    • Bruce Momjian's avatar
      This is mostly the same as an earlier patch I · d4f62650
      Bruce Momjian authored
      didn't hear anything about, but which would
      have broken with the function manager changes
      anyway.
      
      Well, this patch checks that a unique constraint
      of some form (unique or pk) is on the referenced
      columns of an FK constraint and that the columns
      in the referencing table exist at creation time.
      The former is to move closer to SQL compatibility
      and the latter is in answer to a bug report.
      I also added a basic check of this functionality
      to the alter table and foreign key regression
      tests.
      
      Stephan Szabo
      sszabo@bigpanda.com
      d4f62650
  25. 16 Jul, 2000 1 commit
  26. 14 Mar, 2000 1 commit
    • Thomas G. Lockhart's avatar
      Implement column aliases on views "CREATE VIEW name (collist)". · 64568100
      Thomas G. Lockhart authored
      Implement TIME WITH TIME ZONE type (timetz internal type).
      Remap length() for character strings to CHAR_LENGTH() for SQL92
       and to remove the ambiguity with geometric length() functions.
      Keep length() for character strings for backward compatibility.
      Shrink stored views by removing internal column name list from visible rte.
      Implement min(), max() for time and timetz data types.
      Implement conversion of TIME to INTERVAL.
      Implement abs(), mod(), fac() for the int8 data type.
      Rename some math functions to generic names:
       round(), sqrt(), cbrt(), pow(), etc.
      Rename NUMERIC power() function to pow().
      Fix int2 factorial to calculate result in int4.
      Enhance the Oracle compatibility function translate() to work with string
       arguments (from Edwin Ramirez).
      Modify pg_proc system table to remove OID holes.
      64568100
  27. 22 Feb, 2000 1 commit
    • Bruce Momjian's avatar
      Well, here's the first pass on regression · 020be62d
      Bruce Momjian authored
      tests for the Foreign Key support in 7.0 which
      was made against a CVS copy from this
      afternoon.
      
      This modifies
       src/test/regress/sql/run_check.tests
       src/test/regress/sql/alter_table.sql
       src/test/regress/expected/alter_table.out
       src/test/regress/sql/foreign_key.sql
       src/test/regress/expected/foreign_key.out
      
      sszabo@bigpanda.co
      020be62d
  28. 15 Feb, 2000 1 commit
    • Tom Lane's avatar
      New cost model for planning, incorporating a penalty for random page · b1577a7c
      Tom Lane authored
      accesses versus sequential accesses, a (very crude) estimate of the
      effects of caching on random page accesses, and cost to evaluate WHERE-
      clause expressions.  Export critical parameters for this model as SET
      variables.  Also, create SET variables for the planner's enable flags
      (enable_seqscan, enable_indexscan, etc) so that these can be controlled
      more conveniently than via PGOPTIONS.
      
      Planner now estimates both startup cost (cost before retrieving
      first tuple) and total cost of each path, so it can optimize queries
      with LIMIT on a reasonable basis by interpolating between these costs.
      Same facility is a win for EXISTS(...) subqueries and some other cases.
      
      Redesign pathkey representation to achieve a major speedup in planning
      (I saw as much as 5X on a 10-way join); also minor changes in planner
      to reduce memory consumption by recycling discarded Path nodes and
      not constructing unnecessary lists.
      
      Minor cleanups to display more-plausible costs in some cases in
      EXPLAIN output.
      
      Initdb forced by change in interface to index cost estimation
      functions.
      b1577a7c
  29. 11 Jan, 2000 1 commit
  30. 09 Jan, 2000 1 commit
  31. 23 Feb, 1999 1 commit
  32. 02 Feb, 1999 1 commit
  33. 30 Aug, 1998 1 commit
  34. 26 Apr, 1998 1 commit
  35. 07 Apr, 1998 1 commit
  36. 30 Mar, 1998 1 commit
    • Bruce Momjian's avatar
      The following uuencoded, gzip'd file will ... · 57b59664
      Bruce Momjian authored
      1. Remove the char2, char4, char8 and char16 types from postgresql
      2. Change references of char16 to name in the regression tests.
      3. Rename the char16.sql regression test to name.sql.  4. Modify
      the regression test scripts and outputs to match up.
      
      Might require new regression.{SYSTEM} files...
      
      Darren King
      57b59664