Skip to content
Snippets Groups Projects
  1. Sep 12, 2000
    • Tom Lane's avatar
      First cut at full support for OUTER JOINs. There are still a few loose · ed5003c5
      Tom Lane authored
      ends to clean up (see my message of same date to pghackers), but mostly
      it works.  INITDB REQUIRED!
      ed5003c5
    • Vadim B. Mikheev's avatar
      Btree WAL records. · 8e953214
      Vadim B. Mikheev authored
      8e953214
    • 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
  2. Sep 10, 2000
  3. Sep 07, 2000
  4. Sep 06, 2000
  5. Sep 05, 2000
    • Jan Wieck's avatar
      Added functions · daf1e3a7
      Jan Wieck authored
          quote_ident(text) returns text
          quote_literal(text) returns text
      
      These are handy to build up properly quoted query strings
      for the new PL/pgSQL EXECUTE functionality to submit
      dynamic DDL statements.
      
      Jan
      daf1e3a7
  6. Aug 31, 2000
  7. Aug 29, 2000
    • Peter Eisentraut's avatar
    • Bruce Momjian's avatar
      * to_char: · dffd8cac
      Bruce Momjian authored
        - full support for IW (ISO week) and vice versa conversion for IW too
          (the to_char 'week' support is now complete and I hope correct).
      
        Thomas, I use for IW code from timestamp.c, for this I create separate
        function date2isoweek() from original 'case DTK_WEEK:' code in the
        timestamp_part(). I mean will better use one code for same feature in
        date_part() and in to_char(). The isoweek2date() is added to timestamp.c
        too. Right?
      
        IMHO in 7.1 will all to_char's features complete. It is cca 41 templates
        for date/time and cca 21 for numbers.
      
       * to_ascii:
      
         - gcc, is it correct now? :-)
      
      
        In the patch is documentation for to_char's IW and for to_ascii().
      
                                                              Karel
      dffd8cac
    • Tom Lane's avatar
      Update obsolete comments. · 46426b6d
      Tom Lane authored
      46426b6d
  8. Aug 27, 2000
  9. Aug 26, 2000
  10. Aug 25, 2000
  11. Aug 24, 2000
  12. Aug 23, 2000
  13. Aug 22, 2000
    • Tom Lane's avatar
      Fix a many-legged critter reported by chifungfan@yahoo.com: under the · 0147b193
      Tom Lane authored
      right circumstances a hash join executed as a DECLARE CURSOR/FETCH
      query would crash the backend.  Problem as seen in current sources was
      that the hash tables were stored in a context that was a child of
      TransactionCommandContext, which got zapped at completion of the FETCH
      command --- but cursor cleanup executed at COMMIT expected the tables
      to still be valid.  I haven't chased down the details as seen in 7.0.*
      but I'm sure it's the same general problem.
      0147b193
  14. Aug 21, 2000
  15. Aug 20, 2000
  16. Aug 13, 2000
    • Tom Lane's avatar
      Clean up handling of variable-free qual clauses. System now does the · 37168b8d
      Tom Lane authored
      right thing with variable-free clauses that contain noncachable functions,
      such as 'WHERE random() < 0.5' --- these are evaluated once per
      potential output tuple.  Expressions that contain only Params are
      now candidates to be indexscan quals --- for example, 'var = ($1 + 1)'
      can now be indexed.  Cope with RelabelType nodes atop potential indexscan
      variables --- this oversight prevents 7.0.* from recognizing some
      potentially indexscanable situations.
      37168b8d
  17. Aug 12, 2000
  18. Aug 10, 2000
  19. Aug 08, 2000
    • Tom Lane's avatar
      Remove 'func_tlist' from Func expression nodes, likewise 'param_tlist' · 62e29fe2
      Tom Lane authored
      from Param nodes, per discussion a few days ago on pghackers.  Add new
      expression node type FieldSelect that implements the functionality where
      it's actually needed.  Clean up some other unused fields in Func nodes
      as well.
      NOTE: initdb forced due to change in stored expression trees for rules.
      62e29fe2
  20. Aug 07, 2000
  21. Aug 06, 2000
    • Thomas G. Lockhart's avatar
      Implement LIKE/ESCAPE. Change parser to use like()/notlike() · 30ab107d
      Thomas G. Lockhart authored
       rather than the "~~" operator; this made it easy to add ESCAPE features.
      Implement ILIKE, NOT ILIKE, and the ESCAPE clause for them.
       afaict this is not MultiByte clean, but lots of other stuff isn't either.
      Fix up underlying support code for LIKE/NOT LIKE.
       Things should be faster and does not require internal string copying.
      Update regression test to add explicit checks for
       LIKE/NOT LIKE/ILIKE/NOT ILIKE.
      Remove colon and semi-colon operators as threatened in 7.0.
      Implement SQL99 COMMIT/AND NO CHAIN.
       Throw elog(ERROR) on COMMIT/AND CHAIN per spec
       since we don't yet support it.
      Implement SQL99 CREATE/DROP SCHEMA as equivalent to CREATE DATABASE.
       This is only a stopgap or demo since schemas will have another
       implementation soon.
      Remove a few unused production rules to get rid of warnings
       which crept in on the last commit.
      Fix up tabbing in some places by removing embedded spaces.
      30ab107d
    • Tom Lane's avatar
      Toast all the system-table columns that seem to need it. It turns out · c3e2a951
      Tom Lane authored
      that giving pg_proc a toast table required solving the same problems
      we'd have to solve for pg_class --- pg_proc is one of the relations
      that gets bootstrapped in relcache.c.  Solution is to go back at the
      end of initialization and read in the *real* pg_class row to replace
      the phony entry created by formrdesc().  This should work as long as
      there's no need to touch any toasted values during initialization,
      which seems a reasonable assumption.
      Although I did not add a toast-table for every single system table
      with a varlena attribute, I believe that it would work to just do
      ALTER TABLE pg_class CREATE TOAST TABLE.  So anyone who's really
      intent on having several thousand ACL entries for a rel could do it.
      NOTE: I didn't force initdb, but you must do one to see the effects
      of this patch.
      c3e2a951
    • Tom Lane's avatar
      Clean up inefficiency in ExecRelCheck, and cause it to do the right · 8ae23135
      Tom Lane authored
      thing when there are multiple result relations.  Formerly, during
      something like 'UPDATE foo*', foo's constraints and *only* foo's
      constraints would be applied to all foo's children.  Wrong-o ...
      8ae23135
    • Tom Lane's avatar
      Ensure that catcache 'busy' flags are reset at transaction abort. · 925418d2
      Tom Lane authored
      Without this, an elog during cache-entry load leaves that catcache
      unusable.  elog in that segment of code is pretty unusual but it can
      happen.
      925418d2
Loading