Skip to content
Snippets Groups Projects
  1. Mar 06, 2002
  2. Mar 05, 2002
    • Bruce Momjian's avatar
      I attach a version of my toast-slicing patch, against current CVS · 03194432
      Bruce Momjian authored
      (current as of a few hours ago.)
      
      This patch:
      
      1. Adds PG_GETARG_xxx_P_SLICE() macros and associated support routines.
      
      2. Adds routines in src/backend/access/tuptoaster.c for fetching only
      necessary chunks of a toasted value. (Modelled on latest changes to
      assume chunks are returned in order).
      
      3. Amends text_substr and bytea_substr to use new methods. It now
      handles multibyte cases -and should still lead to a performance
      improvement in the multibyte case where the substring is near the
      beginning of the string.
      
      4. Added new command: ALTER TABLE tabname ALTER COLUMN colname SET
      STORAGE {PLAIN | EXTERNAL | EXTENDED | MAIN} to parser and documented in
      alter-table.sgml. (NB I used ColId as the item type for the storage
      mode string, rather than a new production - I hope this makes sense!).
      All this does is sets attstorage for the specified column.
      
      4. AlterTableAlterColumnStatistics is now AlterTableAlterColumnFlags and
      handles both statistics and storage (it uses the subtype code to
      distinguish). The previous version of my patch also re-arranged other
      code in backend/commands/command.c but I have dropped that from this
      patch.(I plan to return to it separately).
      
      5. Documented new macros (and also the PG_GETARG_xxx_P_COPY macros) in
      xfunc.sgml. ref/alter_table.sgml also contains documentation for ALTER
      COLUMN SET STORAGE.
      
      John Gray
      03194432
  3. Feb 17, 2002
  4. Jan 20, 2002
  5. Dec 08, 2001
  6. Nov 22, 2001
  7. Nov 18, 2001
  8. Nov 10, 2001
  9. Oct 22, 2001
  10. Oct 12, 2001
    • 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
  11. Sep 12, 2001
  12. Sep 07, 2001
    • Bruce Momjian's avatar
      Here is my much-promised patch to let people add UNIQUE constraints after · bd9b3280
      Bruce Momjian authored
      table creation time.  Big deal you say - but this patch is the basis of the
      next thing which is adding PRIMARY KEYs after table creation time.  (Which
      is currently impossible without twiddling catalogs)
      
      Rundown
      -------
      
      * I have made the makeObjectName function of analyze.c non-static, and
      exported it in analyze.h
      
      * I have included analyze.h and defrem.h into command.c, to support
      makingObjectNames and creating indices
      
      * I removed the 'case CONSTR_PRIMARY' clause so that it properly fails and
      says you can't add primary keys, rather than just doing nothing and
      reporting nothing!!!
      
      * I have modified the docs.
      
      Algorithm
      ---------
      
      * If name specified is null, search for a new valid constraint name.  I'm
      not sure if I should "lock" my generated name somehow tho - should I open
      the relation before doing this step?
      
      * Open relation in access exclusive mode
      
      * Check that the constraint does not already exist
      
      * Define the new index
      
      * Warn if they're doubling up on an existing index
      
      Christopher Kings-Lynne
      bd9b3280
  13. Sep 03, 2001
  14. May 30, 2001
  15. May 09, 2001
  16. May 07, 2001
    • Tom Lane's avatar
      Rewrite of planner statistics-gathering code. ANALYZE is now available as · f905d65e
      Tom Lane authored
      a separate statement (though it can still be invoked as part of VACUUM, too).
      pg_statistic redesigned to be more flexible about what statistics are
      stored.  ANALYZE now collects a list of several of the most common values,
      not just one, plus a histogram (not just the min and max values).  Random
      sampling is used to make the process reasonably fast even on very large
      tables.  The number of values and histogram bins collected is now
      user-settable via an ALTER TABLE command.
      
      There is more still to do; the new stats are not being used everywhere
      they could be in the planner.  But the remaining changes for this project
      should be localized, and the behavior is already better than before.
      
      A not-very-related change is that sorting now makes use of btree comparison
      routines if it can find one, rather than invoking '<' twice.
      f905d65e
  17. Mar 05, 2001
  18. Feb 10, 2001
  19. Jan 14, 2001
  20. 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
  21. Dec 26, 2000
  22. Dec 20, 2000
  23. Oct 05, 2000
  24. Jul 22, 2000
  25. Jun 09, 2000
  26. Apr 11, 2000
  27. Mar 27, 2000
  28. 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
  29. Jan 09, 2000
  30. Jul 22, 1999
  31. Jul 06, 1999
  32. Dec 29, 1998
  33. Oct 30, 1998
  34. Sep 22, 1998
  35. Sep 16, 1998
  36. Sep 07, 1998
  37. May 13, 1998
Loading