Skip to content
Snippets Groups Projects
  1. Jan 05, 2001
    • Tom Lane's avatar
      Remove not-really-standard implementation of CREATE TABLE's UNDER clause, · 2fb6cc90
      Tom Lane authored
      and revert documentation to describe the existing INHERITS clause
      instead, per recent discussion in pghackers.  Also fix implementation
      of SQL_inheritance SET variable: it is not cool to look at this var
      during the initial parsing phase, only during parse_analyze().  See
      recent bug report concerning misinterpretation of date constants just
      after a SET TIMEZONE command.  gram.y really has to be an invariant
      transformation of the query string to a raw parsetree; anything that
      can vary with time must be done during parse analysis.
      2fb6cc90
  2. Dec 08, 2000
  3. Nov 16, 2000
  4. Nov 14, 2000
    • Tom Lane's avatar
      Extend CREATE DATABASE to allow selection of a template database to be · 2cf48ca0
      Tom Lane authored
      cloned, rather than always cloning template1.  Modify initdb to generate
      two identical databases rather than one, template0 and template1.
      Connections to template0 are disallowed, so that it will always remain
      in its virgin as-initdb'd state.  pg_dumpall now dumps databases with
      restore commands that say CREATE DATABASE foo WITH TEMPLATE = template0.
      This allows proper behavior when there is user-added data in template1.
      initdb forced!
      2cf48ca0
  5. Nov 08, 2000
  6. Nov 07, 2000
  7. Nov 05, 2000
  8. Oct 23, 2000
    • Tom Lane's avatar
      Some small polishing of Mark Hollomon's cleanup of DROP command: might · 9ace0318
      Tom Lane authored
      as well allow DROP multiple INDEX, RULE, TYPE as well.  Add missing
      CommandCounterIncrement to DROP loop, which could cause trouble otherwise
      with multiple DROP of items affecting same catalog entries.  Try to
      bring a little consistency to various error messages using 'does not exist',
      'nonexistent', etc --- I standardized on 'does not exist' since that's
      what the vast majority of the existing uses seem to be.
      9ace0318
  9. Oct 18, 2000
    • Bruce Momjian's avatar
      The following patch was sent to the patches list: · 73677dd9
      Bruce Momjian authored
      This patch forces the use of 'DROP VIEW' to destroy views.
      
      It also changes the syntax of DROP VIEW to
      DROP VIEW v1, v2, ...
      to match the syntax of DROP TABLE.
      
      Some error messages were changed so this patch also includes changes to the
      appropriate expected/*.out files.
      
      Doc changes for 'DROP TABLE" and 'DROP VIEW' are included.
      
      
      --
      Mark Hollomon
      73677dd9
  10. Oct 16, 2000
  11. Oct 07, 2000
    • Tom Lane's avatar
      Arrange that no database accesses are attempted during parser() --- this · fbd26d69
      Tom Lane authored
      took some rejiggering of typename and ACL parsing, as well as moving
      parse_analyze call out of parser().  Restructure postgres.c processing
      so that parse analysis and rewrite are skipped when in abort-transaction
      state.  Only COMMIT and ABORT statements will be processed beyond the raw
      parser() phase.  This addresses problem of parser failing with database access
      errors while in aborted state (see pghackers discussions around 7/28/00).
      Also fix some bugs with COMMIT/ABORT statements appearing in the middle of
      a single query input string.
      Function, operator, and aggregate arguments/results can now use full
      TypeName production, in particular foo[] for array types.
      DROP OPERATOR and COMMENT ON OPERATOR were broken for unary operators.
      Allow CREATE AGGREGATE to accept unquoted numeric constants for initcond.
      fbd26d69
  12. Sep 12, 2000
    • Bruce Momjian's avatar
      This patch implements the following command: · 7f171b59
      Bruce Momjian authored
      ALTER TABLE <tablename> OWNER TO <username>
      
      Only a superuser may execute the command.
      
      --
      Mark Hollomon
      mhh@mindspring.com
      7f171b59
    • Bruce Momjian's avatar
      This patch implements a different "relkind" · 264c0682
      Bruce Momjian authored
      for views. Views are now have a "relkind" of
      RELKIND_VIEW instead of RELKIND_RELATION.
      
      Also, views no longer have actual heap storage
      files.
      
      The following changes were made
      
      1. CREATE VIEW sets the new relkind
      
      2. The executor complains if a DELETE or
              INSERT references a view.
      
      3. DROP RULE complains if an attempt is made
              to delete a view SELECT rule.
      
      4. CREATE RULE "_RETmytable" AS ON SELECT TO mytable DO INSTEAD ...
              1. checks to make sure mytable is empty.
              2. sets the relkind to RELKIND_VIEW.
              3. deletes the heap storage files.
      5. LOCK myview is not allowed. :)
      
      
      6. the regression test type_sanity was changed to
              account for the new relkind value.
      
      7. CREATE INDEX ON myview ... is not allowed.
      
      8. VACUUM myview is not allowed.
              VACUUM automatically skips views when do the entire
              database.
      
      9. TRUNCATE myview is not allowed.
      
      
      THINGS LEFT TO THINK ABOUT
      
      o pg_views
      
      o pg_dump
      
      o pgsql (\d \dv)
      o Do we really want to be able to inherit from views?
      
      o Is 'DROP TABLE myview' OK?
      
      --
      Mark Hollomon
      264c0682
  13. Sep 06, 2000
    • Peter Eisentraut's avatar
      Code cleanup of user name and user id handling in the backend. The current · 6dc24961
      Peter Eisentraut authored
      user is now defined in terms of the user id, the user name is only computed
      upon request (for display purposes). This is kind of the opposite of the
      previous state, which would maintain the user name and compute the user id
      for permission checks.
      
      Besides perhaps saving a few cycles (integer vs string), this now creates a
      single point of attack for changing the user id during a connection, for
      purposes of "setuid" functions, etc.
      6dc24961
  14. Jul 05, 2000
  15. Jul 04, 2000
    • Jan Wieck's avatar
      TOAST · 57d8080a
      Jan Wieck authored
          WARNING: This is actually broken - we have self-deadlocks
      	         due to concurrent changes in buffer management.
      			 Vadim and me are working on it.
      
      Jan
      57d8080a
  16. Jun 04, 2000
  17. May 11, 2000
  18. Apr 25, 2000
  19. Apr 12, 2000
  20. Apr 04, 2000
    • Tom Lane's avatar
      Fix bug noted by Bruce: FETCH in an already-aborted transaction block · 708f82f1
      Tom Lane authored
      would crash, due to premature invocation of SetQuerySnapshot().  Clean
      up problems with handling of multiple queries by splitting
      pg_parse_and_plan into two routines.  The old code would not, for
      example, do the right thing with END; SELECT... submitted in one query
      string when it had been in transaction abort state, because it'd decide
      to skip planning the SELECT before it had executed the END.  New
      arrangement is simpler and doesn't force caller to plan if only
      parse+rewrite is needed.
      708f82f1
  21. Feb 19, 2000
  22. Feb 18, 2000
  23. Jan 29, 2000
    • Peter Eisentraut's avatar
      A few minor psql enhancements · 2b84cbb6
      Peter Eisentraut authored
      Initdb help correction
      Changed end/abort to commit/rollback and changed related notices
      Commented out way old printing functions in libpq
      Fixed a typo in alter table / alter column
      2b84cbb6
  24. Jan 26, 2000
    • Bruce Momjian's avatar
      Add: · 5c25d602
      Bruce Momjian authored
        * Portions Copyright (c) 1996-2000, PostgreSQL, Inc
      
      to all files copyright Regents of Berkeley.  Man, that's a lot of files.
      5c25d602
  25. Jan 16, 2000
  26. Jan 15, 2000
    • Peter Eisentraut's avatar
      - Allow array on int8 · 2a1bfbce
      Peter Eisentraut authored
      - Prevent permissions on indexes
      - Instituted --enable-multibyte option and tweaked the MB build process where necessary
      - initdb prompts for superuser password
      2a1bfbce
  27. Jan 14, 2000
    • Peter Eisentraut's avatar
      * User management commands no longer user pg_exec_query_dest -> more robust · 4ceb2d0c
      Peter Eisentraut authored
      * Let unprivileged users change their own passwords.
      
      * The password is now an Sconst in the parser, which better reflects its text datatype and also
      forces users to quote them.
      
      * If your password is NULL you won't be written to the password file, meaning you can't connect
      until you have a password set up (if you use password authentication).
      
      * When you drop a user that owns a database you get an error. The database is not gone.
      4ceb2d0c
  28. Jan 13, 2000
  29. Dec 20, 1999
  30. Dec 16, 1999
  31. Dec 14, 1999
    • Bruce Momjian's avatar
      Depending on my interpreting (and programming) skills, this might solve · bcaabc56
      Bruce Momjian authored
      anywhere from zero to two TODO items.
      
      * Allow flag to control COPY input/output of NULLs
      
      I got this:
      COPY table .... [ WITH NULL AS 'string' ]
      which does what you'd expect. The default is \N, otherwise you can use
      empty strings, etc. On Copy In this acts like a filter: every data item
      that looks like 'string' becomes a NULL. Pretty straightforward.
      
      This also seems to be related to
      
      * Make postgres user have a password by default
      
      If I recall this discussion correctly, the problem was actually that the
      default password for the postgres (or any) user is in fact "\N", because
      of the way copy is used. With this change, the file pg_pwd is copied out
      with nulls as empty strings, so if someone doesn't have a password, the
      password is just '', which one would expect from a new account. I don't
      think anyone really wants a hard-coded default password.
      
      Peter Eisentraut                  Sernanders väg 10:115
      bcaabc56
  32. Dec 10, 1999
  33. Nov 21, 1999
    • Tom Lane's avatar
      Change backend-side COPY to write files with permissions 644 not 666 · d8ba3dfb
      Tom Lane authored
      (whoever thought world-writable files were a good default????).  Modify
      the pg_pwd code so that pg_pwd is created with 600 permissions.  Modify
      initdb so that permissions on a pre-existing PGDATA directory are not
      blindly accepted: if the dir is already there, it does chmod go-rwx
      to be sure that the permissions are OK and the dir actually is owned
      by postgres.
      d8ba3dfb
  34. Oct 26, 1999
    • Bruce Momjian's avatar
      Hello. · 577e21b3
      Bruce Momjian authored
      The following patch extends the COMMENT ON functionality to the
      rest of the database objects beyond just tables, columns, and views. The
      grammer of the COMMENT ON statement now looks like:
      
      COMMENT ON [
        [ DATABASE | INDEX | RULE | SEQUENCE | TABLE | TYPE | VIEW ] <objname>
      |
      
        COLUMN <relation>.<attribute> |
        AGGREGATE <aggname> <aggtype> |
        FUNCTION <funcname> (arg1, arg2, ...) |
        OPERATOR <op> (leftoperand_typ rightoperand_typ) |
        TRIGGER <triggername> ON relname>
      
      Mike Mascari
      (mascarim@yahoo.com)
      577e21b3
  35. Oct 15, 1999
    • Bruce Momjian's avatar
      This patch implements ORACLE's COMMENT SQL command. · 7acc2377
      Bruce Momjian authored
      >From the ORACLE 7 SQL Language Reference Manual:
      -----------------------------------------------------
      COMMENT
      
      Purpose:
      
      To add a comment about a table, view, snapshot, or
      column into the data dictionary.
      
      Prerequisites:
      
      The table, view, or snapshot must be in your own
      schema
      or you must have COMMENT ANY TABLE system privilege.
      
      Syntax:
      
      COMMENT ON [ TABLE table ] |
                 [ COLUMN table.column] IS 'text'
      
      You can effectively drop a comment from the database
      by setting it to the empty string ''.
      -----------------------------------------------------
      
      Example:
      
      COMMENT ON TABLE workorders IS
         'Maintains base records for workorder information';
      
      COMMENT ON COLUMN workorders.hours IS
         'Number of hours the engineer worked on the task';
      
      to drop a comment:
      
      COMMENT ON COLUMN workorders.hours IS '';
      
      The current patch will simply perform the insert into
      pg_description, as per the TODO. And, of course, when
      the table is dropped, any comments relating to it
      or any of its attributes are also dropped. I haven't
      looked at the ODBC source yet, but I do know from
      an ODBC client standpoint that the standard does
      support the notion of table and column comments.
      Hopefully the ODBC driver is already fetching these
      values from pg_description, but if not, it should be
      trivial.
      
      Hope this makes the grade,
      
      Mike Mascari
      (mascarim@yahoo.com)
      7acc2377
  36. Sep 30, 1999
  37. Sep 29, 1999
    • Jan Wieck's avatar
      This is part #1 for of the DEFERRED CONSTRAINT TRIGGER support. · 1547ee01
      Jan Wieck authored
      Implements the CREATE CONSTRAINT TRIGGER and SET CONSTRAINTS commands.
      
      TODO:
          Generic builtin trigger procedures
          Automatic execution of appropriate CREATE CONSTRAINT... at CREATE TABLE
          Support of new trigger type in pg_dump
          Swapping of huge # of events to disk
      
      Jan
      1547ee01
  38. Sep 27, 1999
  39. Sep 23, 1999
Loading