Commit Graph

3893 Commits

Author SHA1 Message Date
Bruce Momjian 432b9b0f75 Add ALTER TABLE <tablename> CLUSTER ON <indexname>
Alvaro Herrera
2003-03-20 18:52:48 +00:00
Bruce Momjian db5d7ccac9 It would also be handy if users could see their own pg_stat_activity
queries while the rest remain blank.

Kevin Brown
2003-03-20 18:51:16 +00:00
Bruce Momjian 41d17389f1 Fix typo in SGML tags. 2003-03-20 17:37:46 +00:00
Bruce Momjian da1534d952 Re-add type conversion examples. 2003-03-20 16:17:32 +00:00
Bruce Momjian 5f65225fa3 Todo items:
Add ALTER SEQUENCE to modify min/max/increment/cache/cycle values

Also updated create sequence docs to mention NO MINVALUE, & NO MAXVALUE.

New Files:
doc/src/sgml/ref/alter_sequence.sgml
src/test/regress/expected/sequence.out
src/test/regress/sql/sequence.sql


ALTER SEQUENCE is NOT transactional.  It behaves similarly to setval().
It matches the proposed SQL200N spec, as well as Oracle in most ways --
Oracle lacks RESTART WITH for some strange reason.

--
Rod Taylor <rbt@rbt.ca>
2003-03-20 07:02:11 +00:00
Bruce Momjian 46bce088c1 Done:
> 	o -Add ALTER SEQUENCE to modify min/max/increment/cache/cycle values
2003-03-20 07:00:57 +00:00
Bruce Momjian 44aba28020 PGRES_POLLING_ACTIVE is unused, keep for backward compatibility.
Lennert Buytenhek
2003-03-20 06:23:30 +00:00
Bruce Momjian 54ca7a7b13 (Now featuring documentation: fixed some typos, expanded the
Envrironment and Files section, explained exactly what -w
does)

This is a patch which allows pg_ctl to make an intelligent
guess as to the proper port when running 'psql -l' to
determine if the database has started up (the -w flag).

The environment variable PGPORT is used. If that is not found,
it checks if a specific port has been set inside the postgresql.conf
file. If it is has not, it uses the port that Postgres was
compiled with.

Greg Sabino Mullane  greg@turnstep.com
2003-03-20 05:00:14 +00:00
Bruce Momjian 15ce2d2e4a > I can see a couple possible downsides: (a) the library might have some
> weird behavior across fork boundaries; (b) the additional memory space
> that has to be duplicated into child processes will cost something per
> child launch, even if the child never uses it.  But these are only
> arguments that it might not *always* be a prudent thing to do, not that
> we shouldn't give the DBA the tool to do it if he wants.  So fire away.

Here is a patch for the above, including a documentation update. It
creates a new GUC variable "preload_libraries", that accepts a list in
the form:

   preload_libraries = '$libdir/mylib1:initfunc,$libdir/mylib2'

If ":initfunc" is omitted or not found, no initialization function is
executed, but the library is still preloaded. If "$libdir/mylib" isn't
found, the postmaster refuses to start.

In my testing with PL/R, it reduces the first call to a PL/R function
(after connecting) from almost 2 seconds, down to about 8 ms.

Joe Conway
2003-03-20 04:51:44 +00:00
Bruce Momjian 7d1d7200a0 Minor doc patch: create function
Gavin Sherry
2003-03-20 04:41:13 +00:00
Bruce Momjian 31ce4557b3 Item done:
> * -Add start time to pg_stat_activity
2003-03-20 03:40:33 +00:00
Bruce Momjian a18331004a Add start time to pg_stat_activity
Neil Conway
2003-03-20 03:34:57 +00:00
Bruce Momjian 1ef7ba20e7 Remove typecasting section that isn't needed anymore. 2003-03-19 21:20:52 +00:00
Bruce Momjian c085c771d3 Fix typo:
< * Rod is Rod Taylor <pg@rbt.ca)>
> * Rod is Rod Taylor <pg@rbt.ca>
2003-03-19 03:53:21 +00:00
Peter Eisentraut 9e0ab7126d Reimplement create and drop scripts in C, to reduce repetitive
connections, increase robustness, add NLS, and prepare for Windows port.
(vacuumdb and clusterdb will follow later.)
2003-03-18 22:19:47 +00:00
Bruce Momjian 526de7ffd1 Remove duplicate ANALYZE recommendation in pg_dump. 2003-03-18 17:05:01 +00:00
Bruce Momjian 6fdd71c133 Add to mmap discussion. 2003-03-18 01:36:01 +00:00
Bruce Momjian 29c18bca50 Add mention of ANALYZE after object restore. 2003-03-18 00:02:11 +00:00
Bruce Momjian ccfa6f1c1e Add mention of new sets returning functions capability. 2003-03-17 19:53:08 +00:00
Bruce Momjian 77312655a9 Update links, from Ian Barwick 2003-03-17 19:47:28 +00:00
Bruce Momjian b776fc198b Add:
> * Allow UPDATE tab SET ROW (col, ...) = (...) for updating multiple columns
2003-03-17 18:50:06 +00:00
Bruce Momjian aac4484345 Increase max known database size. 2003-03-17 16:33:12 +00:00
Bruce Momjian dc95c9f3ab Update name of GUC var:
< * Add GUC log_statement_duration to print statement and >= min duration
> * Add GUC log_statement_and_duration to print statement and >= min duration
2003-03-14 20:19:59 +00:00
Bruce Momjian 96fecb54dc Add:
> * Add GUC log_statement_duration to print statement and >= min duration
2003-03-14 19:27:49 +00:00
Peter Eisentraut 706a32cdf6 Big editing for consistent content and presentation. 2003-03-13 01:30:29 +00:00
Tom Lane 6261c75014 Implement SQL92-compatible FIRST, LAST, ABSOLUTE n, RELATIVE n options
for FETCH and MOVE.
2003-03-11 19:40:24 +00:00
Bruce Momjian 081fa240a1 Update German FAQ
Ian Barwick
2003-03-10 16:06:41 +00:00
Tom Lane aa83bc04e0 Restructure parsetree representation of DECLARE CURSOR: now it's a
utility statement (DeclareCursorStmt) with a SELECT query dangling from
it, rather than a SELECT query with a few unusual fields in it.  Add
code to determine whether a planned query can safely be run backwards.
If DECLARE CURSOR specifies SCROLL, ensure that the plan can be run
backwards by adding a Materialize plan node if it can't.  Without SCROLL,
you get an error if you try to fetch backwards from a cursor that can't
handle it.  (There is still some discussion about what the exact
behavior should be, but this is necessary infrastructure in any case.)
Along the way, make EXPLAIN DECLARE CURSOR work.
2003-03-10 03:53:52 +00:00
Bruce Momjian f93672e2c9 Not done:
> * Precompile SQL functions to avoid overhead (Neil)
2003-03-08 04:23:05 +00:00
Bruce Momjian b4bb288e5b Reorder items and mark some as completed.
> * Allow savepoints / nested transactions [transactions] (Bruce)
215d210
< 	o Add GUC parameter to control the maximum number of rewrite cycles
227,228c222
< 	o Allow parameters to be specified by name and type during
< 	  definition
> 	o Allow parameters to be specified by name and type during definition
304,305d297
< * Overhaul bufmgr/lockmgr/transaction manager
< * Allow savepoints / nested transactions [transactions] (Bruce)
386,387c378,379
< * Add checkpoint_min_warning postgresql.conf option to warn about checkpoints
<   that are too frequent
> * -Add checkpoint_min_warning postgresql.conf option to warn about checkpoints
>   that are too frequent (Bruce)
390d381
< * Allow pg_xlog to be moved without symlinks
406c397
< * Precompile SQL functions to avoid overhead (Neil)
> * -Precompile SQL functions to avoid overhead (Neil)
2003-03-08 03:03:49 +00:00
Bruce Momjian 2e6887df63 Add to mmap emails. 2003-03-07 17:43:26 +00:00
Bruce Momjian b7e089fdbb Update FAQ. 2003-03-07 05:49:10 +00:00
Bruce Momjian 650a854936 Update Russian FAQ, from Viktor Vislobokov. 2003-03-07 05:46:51 +00:00
Bruce Momjian 086c0712a7 Add:
> 	o Report server version number, database encoding, client encoding
2003-03-06 19:53:07 +00:00
Bruce Momjian 601a2c970c Add for protocol changes:
> 	o Report server version number
2003-03-06 19:52:20 +00:00
Bruce Momjian 4144c7b629 Remove:
< * Require DROP COLUMN CASCADE for a column that is part of a multi-column index
2003-03-06 18:39:18 +00:00
Bruce Momjian 17bb6b3792 Done:
> * -Modify regression tests to prevent failures do to minor numeric rounding
2003-03-06 18:05:00 +00:00
Bruce Momjian 235d5fa666 Add:
> 	o Have ALTER TABLE rename SERIAL sequences
2003-03-06 02:29:44 +00:00
Tom Lane 391eb5e5b6 Reimplement free-space-map management as per recent discussions.
Adjustable threshold is gone in favor of keeping track of total requested
page storage and doling out proportional fractions to each relation
(with a minimum amount per relation, and some quantization of the results
to avoid thrashing with small changes in page counts).  Provide special-
case code for indexes so as not to waste space storing useless page
free space counts.  Restructure internal data storage to be a flat array
instead of list-of-chunks; this may cost a little more work in data
copying when reorganizing, but allows binary search to be used during
lookup_fsm_page_entry().
2003-03-04 21:51:22 +00:00
Tom Lane d28cd2273b Improve description of geometric operators. 2003-03-03 03:31:23 +00:00
Tom Lane 799bc58dc7 More infrastructure for btree compaction project. Tree-traversal code
now knows what to do upon hitting a dead page (in theory anyway, it's
untested...).  Add a post-VACUUM-cleanup entry point for index AMs, to
provide a place for dead-page scavenging to happen.
Also, fix oversight that broke btpo_prev links in temporary indexes.
initdb forced due to additions in pg_am.
2003-02-22 00:45:05 +00:00
Bruce Momjian cde8bbc413 This patch makes the following changes to the documentation:
- more work from the SGML police

- some grammar improvements: rewriting a paragraph or two, replacing
contractions where (IMHO) appropriate

- fix missing utility commands in lock mode docs

- improve CLUSTER, REINDEX, SET SESSION AUTHORIZATION ref pages

Neil Conway
2003-02-19 04:06:28 +00:00
Bruce Momjian 81f6db4803 Allow PQcmdTuples to return row counts for MOVE and FETCH.
Neil Conway
2003-02-19 03:59:02 +00:00
Bruce Momjian a286f73210 The following patches eliminate the overflows in the j2date() and date2j()
functions which limited the maximum date for a timestamp to AD 1465001.
The new limit is AD 5874897.
The files affected are:

doc/src/sgml/datatype.sgml:
    Documentation change due to patch. Included is a notice about
    the reduced range when using an eight-byte integer for timestamps.

src/backend/utils/adt/datetime.c:
    Replacement functions for j2date() and date2j() functions.

src/include/utils/datetime.h:
    Corrected a bug with the limit on the earliest possible date,
    Nov 23,-4713 has a Julian day count of -1. The earliest possible
    date should be Nov 24, -4713 with a day count of 0.

src/test/regress/expected/horology-no-DST-before-1970.out:
src/test/regress/expected/horology-solaris-1947.out:
src/test/regress/expected/horology.out:
    Copies of expected output for regression testing.
    Note: Only horology.out has been physically tested. I do not have access
    to a Solaris box and I don't know how to provoke the "pre-1970" test.

src/test/regress/sql/horology.sql:
    Added some test cases to check extended range.

John Cochran
2003-02-19 03:48:11 +00:00
Bruce Momjian 4996eea81c This patch includes more SGML markup fixes as well as a few minor
additions to the docs.

Neil Conway
2003-02-19 03:13:25 +00:00
Bruce Momjian aca86479fd This patch adds a note to the documentation describing why the
performance of min() and max() is slow when applied to the entire table,
and suggesting the simple workaround most experienced Pg users
eventually learn about (SELECT xyz ... ORDER BY xyz LIMIT 1).

Neil Conway
2003-02-19 03:12:22 +00:00
Bruce Momjian 9b13db687e Add SQL 200X standards URL. 2003-02-19 01:38:41 +00:00
Bruce Momjian d8f4eff89c Mark as done, fix grammar:
< * Prevent index uniqueness checks when UPDATE does not modifying column
> * Prevent index uniqueness checks when UPDATE does not modify the column
235c235
< 	o Make PL/PgSQL %TYPE schema-aware
> 	o -Make PL/PgSQL %TYPE schema-aware
2003-02-19 01:36:32 +00:00
Bruce Momjian 3e2eceabc5 Update URL. 2003-02-18 17:23:08 +00:00
Bruce Momjian a9c28a6124 Hungarian FAQ is text, not HTML, so remove it. 2003-02-18 17:20:37 +00:00
Bruce Momjian f3fcb16ce6 New URL. 2003-02-18 16:38:05 +00:00
Bruce Momjian 1a458e9e64 New URL for FAQ. 2003-02-18 16:37:30 +00:00
Bruce Momjian f8247a7666 Add:
> * Allow WAL information to recover corrupted pg_controldata
2003-02-18 05:15:51 +00:00
Bruce Momjian cdbe5f62f1 Update German FAQ, from Ian Barwick. 2003-02-18 05:08:12 +00:00
Bruce Momjian f3ad24efb8 *** empty log message *** 2003-02-18 05:07:42 +00:00
Bruce Momjian 9c1d2d66d6 Update changes from Ian Barwick. 2003-02-18 05:07:04 +00:00
Bruce Momjian 44ddef3be5 Add:
> * Allow pg_dump to dump sequences using NO_MAXVALUE and NO_MINVALUE
2003-02-18 03:47:39 +00:00
Bruce Momjian bb402a0eca Add:
> * Add a script to ask system configuration questions and tune postgresql.conf
2003-02-18 02:49:30 +00:00
Bruce Momjian cf55ee5758 Add:
> * Allow CIDR format to be used in pg_hba.conf
2003-02-17 20:47:29 +00:00
Bruce Momjian a8ed5dc069 Update marks:
< 	o Allow CLUSTER to cluster all tables (Alvaro Herrera)
> 	o -Allow CLUSTER to cluster all tables (Alvaro Herrera)
243c243
< * Allow pg_dump to dump a specific schema (Neil Conway)
> * -Allow pg_dump to dump a specific schema (Neil Conway)
398c398
< * Make IN/NOT IN have similar performance to EXISTS/NOT EXISTS (Tom)
> * -Make IN/NOT IN have similar performance to EXISTS/NOT EXISTS (Tom)
2003-02-17 18:48:29 +00:00
Bruce Momjian fa4574e3a3 Remove IN/EXISTS TODO.detail item. 2003-02-17 18:48:14 +00:00
Bruce Momjian 4ba4b4a631 Mark as done:
> 	o -Add ALTER TABLE tab SET WITHOUT OIDS (Rod)

> 	o -Allow CLUSTER to cluster all tables (Alvaro Herrera)

> * -Allow pg_dump to dump a specific schema (Neil Conway)

> * -Make IN/NOT IN have similar performance to EXISTS/NOT EXISTS (Tom)

> * Rod is Rod Taylor <pg@rbt.ca)>
2003-02-17 18:47:02 +00:00
Bruce Momjian 92a7ef9d57 Update:
< * -Make a transaction-safe TRUNCATE
> * -Make a transaction-safe TRUNCATE (Rod)
2003-02-17 18:37:12 +00:00
Bruce Momjian 52d0feecd7 Done:
> * -Make a transaction-safe TRUNCATE
2003-02-17 18:36:24 +00:00
Tom Lane 51972a9d5d COALESCE() and NULLIF() are now first-class expressions, not macros
that turn into CASE expressions.  They evaluate their arguments at most
once.  Patch by Kris Jurka, review and (very light) editorializing by me.
2003-02-16 02:30:39 +00:00
Bruce Momjian de25638d2f Update wording:
< * Disallow DROP COLUMN on a column that is part of a multi-column index
> * Require DROP COLUMN CASCADE for a column that is part of a multi-column index
2003-02-16 00:29:49 +00:00
Bruce Momjian 50c4190e37 Add:
> * Disallow DROP COLUMN on a column that is part of a multi-column index
2003-02-15 18:30:06 +00:00
Bruce Momjian 37664ee465 Add:
> * Allow incremental backups
2003-02-14 17:02:45 +00:00
Bruce Momjian e9551212d2 Add:
> * Add schema option to createlang
2003-02-14 14:41:40 +00:00
Bruce Momjian 0e010a54a3 Update FAQ's in head and 7.3.X. 2003-02-14 14:05:00 +00:00
Bruce Momjian 044dca9f7c Update to 7.3.2 as newest release. 2003-02-14 14:03:10 +00:00
Bruce Momjian a4a6c007bb *** empty log message *** 2003-02-14 13:59:14 +00:00
Bruce Momjian 2b26f1ca3f Update URL's. 2003-02-14 13:59:01 +00:00
Bruce Momjian aa874ee0d7 Add:
> * Cache last known per-tuple offsets to speed long tuple access
2003-02-14 13:11:44 +00:00
Bruce Momjian 5458bd2fa5 Update FAQ. 2003-02-14 04:07:46 +00:00
Bruce Momjian c5f8cbf9f5 Fix broken markup I just introduced. 2003-02-14 02:21:25 +00:00
Bruce Momjian 77cf4a133c Properly document location of pg_service.conf.sample. 2003-02-14 01:32:31 +00:00
Bruce Momjian 29e57ce303 Add local ident OpenBSD mention that was missing in one place. 2003-02-13 05:47:46 +00:00
Bruce Momjian 0064031f99 This patch fixes an error in the usage message for 'clusterdb', and
makes a few editorial changes to the documentation.


Neil Conway
2003-02-13 05:37:44 +00:00
Bruce Momjian 0845b6f326 > > They work the same as table constraints with in-line declaration (no
> > comma).
>
> OK. But the documentation implies there is a comma, so it should probably
> get chenged then.

Yes, it should. (attached)

[ Backpatched to 7.3.X too.]

Rod Taylor
2003-02-13 05:32:42 +00:00
Bruce Momjian 6cb1f4fe44 The "random" regression test uses a function called oidrand(), which
takes two parameters, an OID x and an integer y, and returns "true" with
probability 1/y (the OID argument is ignored). This can be useful -- for
example, it can be used to select a random sampling of the rows in a
table (which is what the "random" regression test uses it for).

This patch removes that function, because it was old and messy. The old
function had the following problems:

- it was undocumented

- it was poorly named

- it was designed to workaround an optimizer bug that no longer exists
(the OID argument is to ensure that the optimizer won't optimize away
calls to the function; AFAIK marking the function as 'volatile' suffices
nowadays)

- it used a different random-number generation technique than the other
PSRNG-related functions in the backend do (it called random() like they
do, but it had its own logic for setting a set and deciding when to
reseed the RNG).

Ok, this patch removes oidrand(), oidsrand(), and userfntest(), and
improves the SGML docs a little bit (un-commenting the setseed()
documentation).

Neil Conway
2003-02-13 05:24:04 +00:00
Bruce Momjian 8195f8f042 Code for WITHOUT OIDS.
On Wed, 2003-01-08 at 21:59, Christopher Kings-Lynne wrote:
> I agree.  I want to remove OIDs from heaps of our tables when we go to 7.3.
> I'd rather not have to do it in the dump due to down time.


Rod Taylor <rbt@rbt.ca>
2003-02-13 05:20:05 +00:00
Bruce Momjian 2bd63117c1 [ dumping schemas ]
> I don't care what you use for short options if all useful ones are taken.
> But the long option should be --schema.

Ok, fair enough: a revised patch is attached that uses the '-n' short
option and the '--schema' long option.

Neil Conway
2003-02-13 04:54:16 +00:00
Bruce Momjian e2b58f7693 Done in 7.3.2, so removed:
< * Fix SELECT ... INTO and CREATE TABLE AS to have appopriate OID column
2003-02-12 14:11:22 +00:00
Bruce Momjian 0550c7a63a Done:
> * -Get faster regex() code from Henry Spencer <henry@zoo.utoronto.ca>
2003-02-12 14:09:04 +00:00
Tom Lane 39b7ec3309 Create a distinction between Lists of integers and Lists of OIDs, to get
rid of the assumption that sizeof(Oid)==sizeof(int).  This is one small
step towards someday supporting 8-byte OIDs.  For the moment, it doesn't
do much except get rid of a lot of unsightly casts.
2003-02-09 06:56:28 +00:00
Tom Lane c15a4c2aef Replace planner's representation of relation sets, per pghackers discussion.
Instead of Lists of integers, we now store variable-length bitmap sets.
This should be faster as well as less error-prone.
2003-02-08 20:20:55 +00:00
Tom Lane 77ede8900d Create a GUC variable REGEX_FLAVOR to control the type of regular
expression accepted by the regex operators, per discussion yesterday.

Along the way, reduce deadlock_timeout from PGC_POSTMASTER to PGC_SIGHUP
category.  It is probably best to insist that all backends share the same
setting, but that doesn't mean it has to be frozen at startup.
2003-02-06 20:25:33 +00:00
Tom Lane 7bcc6d98fb Replace regular expression package with Henry Spencer's latest version
(extracted from Tcl 8.4.1 release, as Henry still hasn't got round to
making it a separate library).  This solves a performance problem for
multibyte, as well as upgrading our regexp support to match recent Tcl
and nearly match recent Perl.
2003-02-05 17:41:33 +00:00
Bruce Momjian 865429e00f Update Hungarian FAQ, from Laszlo Hornyak 2003-02-04 12:32:41 +00:00
Bruce Momjian bf4bf092e5 Revert doc change so we mention moving past the last row of a cursor. 2003-02-04 11:23:58 +00:00
Bruce Momjian 464598b637 Add mention of CURRENT_SCHEMA for object creation. 2003-02-03 15:56:50 +00:00
Bruce Momjian 802a4d4111 Change MOVE LAST to MOVE ALL.
Standard says FETCH LAST is after last row, and we don't do that.
2003-02-03 14:04:24 +00:00
Tom Lane c7bceca156 Implement EXPLAIN EXECUTE. By Neil Conway, with some kibitzing from
Tom Lane.
2003-02-02 23:46:38 +00:00
Tom Lane 6adb475f77 Update release history for 7.3.2. 2003-02-02 19:48:20 +00:00
Tom Lane 6ba8af9d5d Remove restriction that cast functions cannot be volatile. This
restriction was debatable to begin with, but it has now become obvious
that it breaks forward-porting of user-defined types; contrib/lo being
the most salient example.
2003-02-01 22:09:26 +00:00
Tom Lane bd96dd1184 Allow a time zone to be specified (and silently ignored) in the input
for type 'time without time zone', as we already did for type
'timestamp without time zone'.  This patch was proposed by Tom Lockhart
on 7-Nov-02, but he never got around to applying it.  Adjust regression
tests and documentation to match.
2003-01-31 01:08:08 +00:00
Tom Lane 0de771dd5c Fix typo, per Neil Conway. 2003-01-31 00:10:51 +00:00
Tom Lane 4ec457ad58 Fix regression in .pgpass support. From Neil Conway. 2003-01-30 19:49:54 +00:00
Tom Lane 887edf4ff7 Update release history for 7.2.4. 2003-01-29 22:14:08 +00:00
Tom Lane 23b8a0ce61 Repair array subscript overrun identified by Yichen Xie. Reduce the
value of MAX_TIME_PRECISION in floating-point-timestamp-storage case
from 13 to 10, which is as much as time_out is actually willing to print.
(The alternative of increasing the number of digits we are willing to
print looks risky; we might find ourselves printing roundoff garbage.)
2003-01-29 01:08:42 +00:00
Tom Lane 2e46b762eb Extend join-selectivity API (oprjoin interface) so that join type is
passed to join selectivity estimators.  Make use of this in eqjoinsel
to derive non-bogus selectivity for IN clauses.  Further tweaking of
cost estimation for IN.
initdb forced because of pg_proc.h changes.
2003-01-28 22:13:41 +00:00
Bruce Momjian f21fb30dfc Revert optimizer page count change. 2003-01-28 03:34:29 +00:00
Bruce Momjian d42a476621 Add blank line. 2003-01-27 23:19:18 +00:00
Bruce Momjian c177ba99bd Move:
> * Add the concept of dataspaces/tablespaces [tablespaces]
307d307
< * Add the concept of dataspaces/tablespaces [tablespaces]
2003-01-27 23:16:52 +00:00
Bruce Momjian 9b9b14915b Fix typo 233 pages -> 333 pages. 2003-01-27 22:40:56 +00:00
Bruce Momjian b2773d4099 Remove mention of 6.5 max backends. 2003-01-27 06:25:03 +00:00
Bruce Momjian 4dc2bceef4 Mark IN performance problem as fixed in 7.4 2003-01-26 02:43:55 +00:00
Bruce Momjian 677d77817d Add:
> * Add group object ownership, so groups can rename/drop/grant on objects,
>   so we can implement roles
2003-01-26 01:13:34 +00:00
Tom Lane 9f5f212475 Allow the planner to collapse explicit inner JOINs together, rather than
necessarily following the JOIN syntax to develop the query plan.  The old
behavior is still available by setting GUC variable JOIN_COLLAPSE_LIMIT
to 1.  Also create a GUC variable FROM_COLLAPSE_LIMIT to control the
similar decision about when to collapse sub-SELECT lists into their parent
lists.  (This behavior existed already, but the limit was always
GEQO_THRESHOLD/2; now it's separately adjustable.)
2003-01-25 23:10:30 +00:00
Peter Eisentraut ef7422510e Grant options, and cascading revoke. Grant options are allowed only for
users right now, not groups.  Extension of has_foo_privileges functions to
query the grant options.  Extension of aclitem type to store grantor.
2003-01-23 23:39:07 +00:00
Tom Lane 742403bdad Update 'Mathematical Functions' table to reflect 7.3 addition of float8
forms of ceil(), floor(), sign().  Back-patch this and other recent
doc fixes in this file to the 7.3 branch.
2003-01-23 01:22:59 +00:00
Tom Lane a4482f4c4c Fix coredump problem in plpgsql's RETURN NEXT. When a SELECT INTO
that's selecting into a RECORD variable returns zero rows, make it
assign an all-nulls row to the RECORD; this is consistent with what
happens when the SELECT INTO target is not a RECORD.  In support of
this, tweak the SPI code so that a valid tuple descriptor is returned
even when a SPI select returns no rows.
2003-01-21 22:06:12 +00:00
Tom Lane bdfbfde1b1 IN clauses appearing at top level of WHERE can now be handled as joins.
There are two implementation techniques: the executor understands a new
JOIN_IN jointype, which emits at most one matching row per left-hand row,
or the result of the IN's sub-select can be fed through a DISTINCT filter
and then joined as an ordinary relation.
Along the way, some minor code cleanup in the optimizer; notably, break
out most of the jointree-rearrangement preprocessing in planner.c and
put it in a new file prep/prepjointree.c.
2003-01-20 18:55:07 +00:00
Bruce Momjian be2b660ecd This patch includes a lot of minor cleanups to the SGML documentation,
including:

- replacing all the appropriate usages of <citetitle>PostgreSQL
...</citetitle> with &cite-user;, &cite-admin;, and so on

- fix an omission in the EXECUTE documentation

- add some more text to the EXPLAIN documentation

- improve the PL/PgSQL RETURN NEXT documentation (more work to do here)

- minor markup fixes


Neil Conway
2003-01-19 00:13:31 +00:00
Bruce Momjian d12be5c37b Add section on testing index scan. 2003-01-17 17:15:14 +00:00
Bruce Momjian 3c731e0ed7 Add dash to:
set-returning functions or SRF's.

for clarity.
2003-01-17 03:28:18 +00:00
Bruce Momjian 606d4f7b38 Oops, put back changes. Those were Peter's, not mine. 2003-01-15 21:55:52 +00:00
Bruce Momjian 57a15288a1 Revert my changes to features.sgml. 2003-01-15 21:44:35 +00:00
Tom Lane de97072e3c Allow merge and hash joins to occur on arbitrary expressions (anything not
containing a volatile function), rather than only on 'Var = Var' clauses
as before.  This makes it practical to do flatten_join_alias_vars at the
start of planning, which in turn eliminates a bunch of klugery inside the
planner to deal with alias vars.  As a free side effect, we now detect
implied equality of non-Var expressions; for example in
	SELECT ... WHERE a.x = b.y and b.y = 42
we will deduce a.x = 42 and use that as a restriction qual on a.  Also,
we can remove the restriction introduced 12/5/02 to prevent pullup of
subqueries whose targetlists contain sublinks.
Still TODO: make statistical estimation routines in selfuncs.c and costsize.c
smarter about expressions that are more complex than plain Vars.  The need
for this is considerably greater now that we have to be able to estimate
the suitability of merge and hash join techniques on such expressions.
2003-01-15 19:35:48 +00:00
Bruce Momjian 0eed62f34d Reorder VARCHAR() to appear before CHAR() in docs. 2003-01-15 18:01:05 +00:00
Bruce Momjian 3b6ca54cda This patch includes some minor fixes and improvements to the SGML docs
for PL/PgSQL.

Neil Conway
2003-01-15 16:40:24 +00:00
Peter Eisentraut 2160c9177d Add sql_features table to information schema. Generate the features list
in the documentation from that same data.
2003-01-14 23:19:34 +00:00
Peter Eisentraut 97f0d0c86f Escape ampersand. 2003-01-14 10:19:02 +00:00
Bruce Momjian 956762a546 Add:
> 	o Allow PL/PgSQL to support array element assignment
2003-01-14 00:47:35 +00:00
Bruce Momjian 4e9face69a Add Hugarian FAQ, from Laszlo Hornyak 2003-01-13 23:00:32 +00:00
Tom Lane d4ce5a4f4c Revise cost_qual_eval() to compute both startup (one-time) and per-tuple
costs for expression evaluation, not only per-tuple cost as before.
This extension is needed in order to deal realistically with hashed or
materialized sub-selects.
2003-01-12 22:35:29 +00:00
Tom Lane b05204ac8a Fix some minor grammatical errors. 2003-01-12 18:42:59 +00:00
Bruce Momjian 9392c40553 Update CHAR(). 2003-01-12 18:36:22 +00:00
Bruce Momjian 6f4855842c Update CHAR() description. 2003-01-12 14:58:46 +00:00
Bruce Momjian d340e00626 Update date only. 2003-01-12 05:35:55 +00:00
Bruce Momjian 4976816b03 Improve CHAR() description. 2003-01-12 05:16:12 +00:00
Bruce Momjian 3e54e26bcf SGML build cleanups from Neil Conway. 2003-01-12 01:33:00 +00:00
Bruce Momjian 161c2a7be6 Fix capitalization. 2003-01-11 21:02:49 +00:00
Bruce Momjian 266eb6ad28 Fix markup problem in link to other SGML file. 2003-01-11 17:03:45 +00:00
Bruce Momjian 3cd7edfee0 > > This patch improves the documentation for the shared_buffers GUC param.
>
> I'd suggest that the runtime.sgml description explicitly say "values of
> at least a few thousand are recommended for production installations".

Neil Conway
2003-01-11 05:04:14 +00:00
Bruce Momjian ab74a932a3 Add doc links from SET to SET_CONSTRAINTS, SET_SESSION_AUTH,
SET_TRANSACTION.
2003-01-11 00:39:52 +00:00
Peter Eisentraut 2650fba6ff Fix markup. 2003-01-11 00:00:03 +00:00
Peter Eisentraut b65cd56240 Read-only transactions, as defined in SQL. 2003-01-10 22:03:30 +00:00
Peter Eisentraut 36ea26793a Add optional drop behavior clause to REVOKE command, for SQL conformance.
Currently, only RESTRICT is allowed.
2003-01-10 11:02:51 +00:00
Bruce Momjian 2cd00f0bac add to threads discussion. 2003-01-09 01:04:35 +00:00
Bruce Momjian e38246a643 Add:
> 	o Allow fastpast to pass values in portable format
2003-01-08 06:14:51 +00:00
Tom Lane 061168d38f Code review for FETCH/MOVE 0 changes. Improve documentation, do the
right thing with the destination when FETCH 0 can't return a row,
don't try to stuff LONG_MAX into an int value.
2003-01-08 00:22:27 +00:00
Tom Lane b4b62cff93 Apply the proper version of Christopher Kings-Lynne's describe patch
(ie, the one with describe-schema support).  Minor code review.
Adjust display of casts to use standard type names.
2003-01-07 20:56:07 +00:00
Bruce Momjian 925800cc0b Document that psql \encoding doesn't see SET CLIENT_ENCODING changes. 2003-01-07 18:46:52 +00:00
Bruce Momjian c859cda782 Document libpq service capability, and add sample file. 2003-01-07 04:25:29 +00:00
Bruce Momjian c9cf982038 Enable IPv6 libpq 'hostaddr' addresses. Update docs. 2003-01-06 22:48:16 +00:00
Peter Eisentraut 939a59ffc6 Use our own version of getopt_long() if the OS doesn't have one. 2003-01-06 18:53:25 +00:00
Bruce Momjian c3e9699f21 Enable IPv6 connections to the server, and add pg_hba.conf IPv6 entries
if the OS supports it.  Code will still compile on non-IPv6-aware
machines (feature added by Bruce).

Nigel Kukard
2003-01-06 03:18:27 +00:00
Tom Lane d99e7b5a0d Add note explaining that a mergejoinable equality operator is now
required if a datatype is to be accepted by GROUP BY, DISTINCT, or
ORDER BY.  This is documentation for code changes made pursuant to
pgsql-hackers discussion around 29-Nov-02.
2003-01-06 01:20:40 +00:00