Commit Graph

3901 Commits

Author SHA1 Message Date
Bruce Momjian
e02f818311 Add hostmask() function:
+       <entry><function>hostmask</function>(<type>inet</type>)</entry>
+       <entry><type>inet</type></entry>
+       <entry>construct hostmask for network</entry>
+       <entry><literal>hostmask('192.168.23.20/30')</literal></entry>
+       <entry><literal>0.0.0.3</literal></entry>

Greg Wickham
2003-03-21 21:54:29 +00:00
Bruce Momjian
93331d8318 Remove mention of transactions for insensitive cursors. 2003-03-21 17:11:46 +00:00
Bruce Momjian
c7d17a551a Done:
> * -Change NUMERIC data type to use base 10,000 internally
2003-03-21 03:47:38 +00:00
Tom Lane
d72f6c7503 Reimplement NUMERIC datatype using base-10000 arithmetic; also improve
some of the algorithms for higher functions.  I see about a factor of ten
speedup on the 'numeric' regression test, but it's unlikely that that test
is representative of real-world applications.
initdb forced due to change of on-disk representation for NUMERIC.
2003-03-21 01:58:05 +00:00
Bruce Momjian
b2e09fcd5e This is not the only place in the system catalogs where NULL is
effectively used to mean a default value that could also be spelled
out explicitly.  (ACLs behave that way, and useconfig/datconfig
do too IIRC.)

It's a bit of a hack, but it saves table space and backend code ---
without this convention the default would have to be inserted "manually"
since we have no mechanism to supply defaults when C code is forming a
new catalog tuple.

I'm inclined to leave the code alone.  But Alvaro is right that it'd be
good to point out the 'infinity' option in the CREATE USER and ALTER
USER man pages.  (Doc patch please?)

Alvaro Herrera
2003-03-20 20:05:32 +00:00
Bruce Momjian
0fe77d7283 The documentation for SELECT is incorrect in a sense: the syntax for a
join is defined as:

from_item [ NATURAL ] join_type from_item
    [ ON join_condition | USING ( join_column_list ) ]

However, if the join_type is an INNER or OUTER join, an ON, USING, or
NATURAL clause *must* be specified (it's not optional, as that segment
of the docs suggest).

I'm not exactly sure what the best way to fix this is, so I've attached
a patch adding a FIXME comment to the relevant section of the SGML. If
anyone has any ideas on the proper way to outline join syntax, please
speak up.

Neil Conway <neilc@samurai.com> || PGP Key ID: DB3C29FC
2003-03-20 19:00:01 +00:00
Bruce Momjian
3be6367b9f This patch creates a function named pg_get_triggerdef that takes the oid of
a trigger as its parameter.  It is basically copied from the pg_dump
code.

Christopher Kings-Lynne
2003-03-20 18:58:02 +00:00
Bruce Momjian
8819213534 Now that the CLUSTER ALL machinery is in place, the clusterdb script can
be simplified (I'd thought that it can even be removed).  This patch
does that.

Alvaro Herrera
2003-03-20 18:53:18 +00:00
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