Commit Graph

19030 Commits

Author SHA1 Message Date
Tom Lane
37d693033d Minor adjustment of message style. 2004-11-17 16:26:59 +00:00
Neil Conway
2fa36d7e41 Win32 build cleanups, from Andrew Dunstan. 2004-11-17 08:30:11 +00:00
Neil Conway
ffe130f52e Remove debugging printf from #ifdef WIN32 section. 2004-11-17 04:05:42 +00:00
Neil Conway
5d1dd2bc55 Micro-optimization of markpos() and restrpos() in btree and hash indexes.
Rather than using ReadBuffer() to increment the reference count on an
already-pinned buffer, we should use IncrBufferRefCount() as it is
faster and does not require acquiring the BufMgrLock.
2004-11-17 03:13:38 +00:00
Neil Conway
a51e54cf5b Document a limitation of COPY's new CSV mode. Doc patch from Andrew
Dunstan, editorializing by Neil Conway.
2004-11-17 02:50:06 +00:00
Neil Conway
b25d23e1e6 Don't allow pg_start_backup() to be invoked if archive_command has not
been defined. Patch from Gavin Sherry, editorializing by Neil Conway.
2004-11-17 02:22:54 +00:00
Tom Lane
0021ae06be Fix Win32 problems with signals and sockets, by making the forkexec code
even uglier than it was already :-(.  Also, on Windows only, use temporary
shared memory segments instead of ordinary files to pass over critical
variable values from postmaster to child processes.  Magnus Hagander
2004-11-17 00:14:14 +00:00
Neil Conway
e1bf6527f6 Prevent a backend crash when processing CREATE TABLE commands with
more than 65K columns, or when the created table has more than 65K columns
due to adding inherited columns from parent relations. Fix a similar
crash when processing SELECT queries with more than 65K target list
entries. In all three cases we would eventually detect the error and
elog, but the check was being made too late.
2004-11-16 23:34:26 +00:00
Peter Eisentraut
8a1821ab5b Translation update 2004-11-16 22:58:44 +00:00
Tom Lane
4a0bee976c Adjust safety restrictions for plperl functions. Andrew Dunstan's
patch, but allow srand and disallow sprintf as per subsequent discussion.
2004-11-16 22:05:22 +00:00
Tom Lane
bb85f1b9b1 Suppress duplicate rules for lib$(NAME).a on WIN32 and Cygwin.
Andrew Dunstan
2004-11-16 21:51:13 +00:00
Tom Lane
6beb6fa495 Use dynamically-sized buffers in pgwin32_is_service().
Magnus Hagander
2004-11-16 19:52:22 +00:00
Tom Lane
7efa8411cc Rethink plpgsql's way of handling SPI execution during an exception block.
We don't really want to start a new SPI connection, just keep using the old
one; otherwise we have memory management problems as illustrated by
John Kennedy's bug report of today.  This requires a bit of a hack to
ensure the SPI stack state is properly restored, but then again what we
were doing before was a hack too, strictly speaking.  Add a regression
test to cover this case.
2004-11-16 18:10:16 +00:00
Tom Lane
2bb3bcfcf9 Trivial wording improvement. 2004-11-16 15:00:36 +00:00
Neil Conway
23185085b9 Add index entries for all GUC configuration parameters. 2004-11-16 05:33:14 +00:00
Tom Lane
3d1e269e7e Don't quote the value of EDITOR on Unix, only on Windows. Per discussion. 2004-11-15 23:15:12 +00:00
Neil Conway
ec7a6bd9a2 Replace "--" and "---" with "—" as appropriate, for better-looking
output.
2004-11-15 06:32:15 +00:00
Neil Conway
db1531f6d8 Fix typo, other minor improvements. 2004-11-15 04:35:57 +00:00
Tom Lane
f6474586ea Use English-style quotes in error messages, per Serguei Mokhov. 2004-11-14 23:36:53 +00:00
Bruce Momjian
3c1a8661eb Remove replicaiton FAQ item. 2004-11-14 21:33:10 +00:00
Tom Lane
ea23ec82c2 Remove GUC USERLIMIT variable category, making the affected variables
plain SUSET instead.  Also delay processing of options received in
client connection request until after we know if the user is a superuser,
so that SUSET values can be set that way by legitimate superusers.
Per recent discussion.
2004-11-14 19:35:35 +00:00
Neil Conway
1c7a47cea4 Improvements to the PITR docs. Initial patch from Gavin Sherry, additional
improvements by Neil Conway.
2004-11-14 06:10:12 +00:00
Neil Conway
a236dd9536 There is no need for ReadBuffer() call sites to check that the returned
buffer is valid, as ReadBuffer() will elog on error. Most of the call
sites of ReadBuffer() got this right, but this patch fixes those call
sites that did not.
2004-11-14 02:04:14 +00:00
Bruce Momjian
1c5125adf3 Not entirely sure when this broke, but libpq's VC++ build is currently
lacking pqsignal which is now required. This was found and fixed for
VC++ by Shachar Shemesh, I simply duplicated the fix for the Borland
makefile (untested, as I don't have that compiler).

Dave Page
2004-11-13 03:18:50 +00:00
Bruce Momjian
3c57e0b93f Update:
< * Eliminate WAL logging for CREATE INDEX/REINDEX/CREATE TABLE AS when
<   not doing WAL archiving
> * Eliminate WAL logging for CREATE TABLE AS when not doing WAL archiving
2004-11-12 23:26:37 +00:00
Tom Lane
cf956d512d Remove now-redundant description of Postgres file layout, in favor of
referencing the Database File Layout chapter I just added to the main
documentation.
2004-11-12 21:55:01 +00:00
Tom Lane
7f4b5a003b Add some real documentation about the overall filesystem layout used by
a Postgres database.  Update page.sgml to match 8.0 tuple header layout.
2004-11-12 21:50:53 +00:00
Tom Lane
c7866f6645 Fix obsolete comments. 2004-11-12 20:08:40 +00:00
Bruce Momjian
1b87c3f77a Add:
> * Eliminate WAL logging for CREATE INDEX/REINDEX/CREATE TABLE AS when
>   not doing WAL archiving
2004-11-12 18:12:12 +00:00
Bruce Momjian
03b12ef987 > I think in addition the system global name "sharemem.1" should be made more
> pg specific, like "PostgreSQL.1". I have not done this since a new compile
> would not detect a running old beta. But now would be the time (or never).

Zeugswetter Andreas
2004-11-12 17:59:42 +00:00
Tom Lane
5666485aa8 Remember to close the file on failure (pretty much redundant, really,
since this path will lead to postmaster exit anyway...)
2004-11-12 00:08:23 +00:00
Tom Lane
664f93ce18 Un-break custom_variable_classes kluge ... mea culpa. 2004-11-11 23:45:13 +00:00
Bruce Momjian
fc402fdf2d pg_restore --help improvements, from Tom Lane:
!       printf(_("  -d, --dbname=NAME        connect to database name\n"));

!       printf(_("  -C, --create             create the target database\n"));
2004-11-11 17:06:46 +00:00
Bruce Momjian
85eda8e7d4 Cleanup:
>
284d284
<
286a287
>
405a407
>
415a418
>
431a435
>
440a445
>
452a458
>
520c526
< * ECPG (?)
> * ECPG
846a853
>
857a865
>
2004-11-11 04:36:55 +00:00
Neil Conway
b4cd3b3829 Fix a handful of typos in the release notes introduced by Bruce's recent
commit. Per Gavin Sherry.
2004-11-11 04:11:07 +00:00
Bruce Momjian
6cd67c931a Cleaups:
< * Allow GRANT/REVOKE permissions to be given to all schema objects with one
> * Allow GRANT/REVOKE permissions to be applied to all schema objects with one
60c60
<   specifications.  This is because new databases are created by copying
>   specifications.  This is because new databases are created by copying
63c63
<   directory would create a new database with tables that had incorrect
>   directory would create a new database with tables that had incorrect
72c72
<
>
85c85
<   By not showing commented-out variables, we discourage people from
>   By not showing commented-out variables, we discourage people from
91c91
< * Allow point-in-time recovery to archive partially filled write-ahead
> * Allow point-in-time recovery to archive partially filled write-ahead
102c102
<   Currently all schemas are owned by the super-user because they are
>   Currently all schemas are owned by the super-user because they are
128c128
< * Allow INET subnet tests with non-constants to be indexed
> * Allow INET subnet tests using non-constants to be indexed
143,144c143,144
< * Allow to_char to print localized month names
< * Allow functions to have a search path specified at creation time
> * Allow to_char() to print localized month names
> * Allow functions to have a schema search path specified at creation time
146c146
< * Add GUC variable to allow output of interval values in ISO8601 format
> * Add a GUC variable to allow output of interval values in ISO8601 format
154,155c154,155
< * Prevent inet cast to cidr if the unmasked bits are not zero, or
<   zero bits
> * Prevent INET cast to CIDR if the unmasked bits are not zero, or
>   zero the bits
158c158
< 	o Allow nulls in arrays
> 	o Allow NULLs in arrays
160,161c160,161
< 	o Delay resolution of array expression type so assignment coercion
< 	  can be performed on empty array expressions
> 	o Delay resolution of array expression's data type so assignment
> 	  coercion can be performed on empty array expressions
218,219c218,219
<   key, foreign key  [inheritance]
< * UNIQUE INDEX on base column not honored on inserts/updates from
>   key, foreign key
> * UNIQUE INDEX on base column not honored on INSERTs/UPDATEs from
221c221
<   (dup) should fail [inheritance]
>   (dup) should fail
246c246
< * Fetch heap pages matching index entries in sequential order [performance]
> * Fetch heap pages matching index entries in sequential order
307c307
<   functionality in DELETE.  It's been agreed that the keyword should
>   functionality in DELETE.  It's been agreed that the keyword should
318c318
< * Allow PREPARE to automatically determine parameter types based on the SQL
> * Allow PREPARE to automatically determine parameter types based on the SQL
340,342d339
< * Allow CREATE TABLE foo (f1 INT CHECK (f1 > 0) CHECK (f1 < 10)) to work
<   by searching for non-conflicting constraint names, and prefix with
<   table name?
347c344
<   new database.
>   a new database.
350,351d346
< * Ignore temporary tables from other sessions when processing
<   inheritance?
354,355c349,351
< * Add a session mode to warn about non-standard SQL usage in queries
< * Add MERGE command that does UPDATE/DELETE, or on failure, INSERT (rules, triggers?)
> * Add a GUC variable to warn about non-standard SQL usage in queries
> * Add MERGE command that does UPDATE/DELETE, or on failure, INSERT (rules,
>   triggers?)
357,359c353,356
< * Add NOVICE output level for helpful messages like automatic sequence/index creation
< * Add COMMENT ON for all cluster global objects (users, groups,
<   databases and tablespaces)
> * Add NOVICE output level for helpful messages like automatic sequence/index
>   creation
> * Add COMMENT ON for all cluster global objects (users, groups, databases
>   and tablespaces)
363c360
<   When enabled, this would allow errors in multi-statement transactions
>   When enabled, this would allow errors in multi-statement transactions
417c414
< 	o Allow COPY to optionally include column headings as the first line
> 	o Allow COPY to optionally include column headings in the first line
450c447
<
>
462c459
< 	o Handle references to temporary tables that are created, destroyed,
> 	o Handle references to temporary tables that are created, destroyed,
464c461
<
>
469d465
< 	o Improve PL/PgSQL exception handling using savepoints
488c484
<
>
503d498
<
518c513
< 	o Add pg_dumpall custom format dumps.
> 	o Add pg_dumpall custom format dumps.
520c515
< 	  This is probably best done by combining pg_dump and pg_dumpall
> 	  This is probably best done by combining pg_dump and pg_dumpall
532d526
< 	o Improve error handling (?)
555c549
<   Adding shared locks requires recording the table/rows numbers in a
>   Adding shared locks requires recording the table/rows numbers in a
643c637
<   Posix_fadvise() can control both sequential/random file caching and
>   Posix_fadvise() can control both sequential/random file caching and
703c697
<   from distributted.net, http://www1.distributed.net/source,
>   from distributted.net, http://www1.distributed.net/source,
729c723
< * Add connection pooling [pool]
> * Add connection pooling
755d748
<
759c752
<
>
768c761
<   so an abrupt operating system restart might lose a few seconds of
>   so an abrupt operating system restart might lose a few seconds of
785c778
< * Add utility to compute accurate random_page_cost value
> * Create utility to compute accurate random_page_cost value
787,789d779
< * Allow sorting, temp files, temp tables to use multiple work directories
<
<   This allows the I/O load to be spread across multiple disk drives.
795a786
>
808,809c799,800
<
< * Use mmap() rather than SYSV shared memory or to write WAL files (?) [mmap]
>
> * Use mmap() rather than SYSV shared memory or to write WAL files (?)
812,813c803,804
<   portability issues. Anonymous mmap (or mmap to /dev/zero) is required
<   to prevent I/O overhead.
>   portability issues. Anonymous mmap (or mmap to /dev/zero) is required
>   to prevent I/O overhead.
817,819c808,810
<   Doing I/O to large tables would consume a lot of address space or
<   require frequent mapping/unmapping.  Extending the file also causes
<   mapping problems that might require mapping only individual pages,
>   Doing I/O to large tables would consume a lot of address space or
>   require frequent mapping/unmapping.  Extending the file also causes
>   mapping problems that might require mapping only individual pages,
821c812
<   way to _prevent_ I/O to disk from the dirty shared buffers so changes
>   way to _prevent_ I/O to disk from the dirty shared buffers so changes
826c817
<   tuple overhead
>   per-tuple overhead
829,831c820,822
<   This would involve using multiple threads or processes to do optimization,
<   sorting, or execution of single query.  The major advantage of such a
<   feature would be to allow multiple CPUs to work together to process a
>   This would involve using multiple threads or processes to do optimization,
>   sorting, or execution of single query.  The major advantage of such a
>   feature would be to allow multiple CPUs to work together to process a
834c825
< * Research the use of larger pages sizes
> * Research the use of larger page sizes
842a834
> * Move some /contrib modules out to their own project sites
845d836
< * Improve access-permissions check on data directory in Cygwin (Tom)
847,848c838
< * Clarify use of 'application' and 'command' tags in SGML docs
< * Better document ability to build only certain interfaces (Marc)
> * Improve documentation to build only interfaces (Marc)
852,853d841
< * Research interaction of setitimer() and sleep() used by statement_timeout
< * Rename /scripts directory because they are all C programs now
856,857d843
< * Allow binaries to be statically linked so they are more easily relocated
< * Move some /contrib modules out to their own project sites
862c848
< 	o Remove per-backend parameter file and move into shared memory?
> 	o Remove per-backend parameter file and move into shared memory
877,878c863,864
< 	o Update clients to use data types, typmod, schema.table.column names of
< 	  result sets using new query protocol
> 	o Update clients to use data types, typmod, schema.table.column names
> 	  of result sets using new query protocol
900d885
< * Kris is Kris Jurka
910c895
< * Simon is Simon Riggs
> * Simon is Simon Riggs <simon@2ndquadrant.com>
913d897
< * Teodor is
2004-11-11 03:59:14 +00:00
Neil Conway
4d0f669f3c Remove obsolete comment from btbuild() and hashbuild(): we no longer use
a global variable to control building indexes.
2004-11-11 00:32:50 +00:00
Peter Eisentraut
5bf218d2eb Add character set declaration to HTML files, so they have a chance to
validate and display correctly.
2004-11-10 23:01:47 +00:00
Peter Eisentraut
979a530dde Fix some spacing problems. 2004-11-10 21:54:23 +00:00
Bruce Momjian
45ecebc415 Add SGML markup to 8.0 release notes. 2004-11-10 21:43:50 +00:00
Michael Meskes
67e1ae9b03 List VALUE as a keyword. 2004-11-10 13:48:10 +00:00
Bruce Momjian
1688848204 Fix sgml markup tags. 2004-11-10 06:13:12 +00:00
Bruce Momjian
a3704c6cb1 Update release notes to match CVS. 2004-11-10 06:09:59 +00:00
Bruce Momjian
883fbbe04c Done:
<
< * psql tab completion
<
< 	o Provide a list of conversions after ALTER CONVERSION?
< 	o Support for ALTER SEQUENCE clauses
< 	o Add RENAME TO to ALTER TRIGGER
< 	o Support for ALTER USER
< 	o Fix ALTER (GROUP|DOMAIN|...) <sth> DROP
< 	o Support for ALTER LANGUAGE <sth> RENAME TO
< 	o Improve support for COPY
< 	o Improve support for ALTER TABLE
2004-11-10 05:47:07 +00:00
Bruce Momjian
242fca7591 Remove performance TODO.detail. In TODO. 2004-11-10 02:48:59 +00:00
Bruce Momjian
056d7e3a18 Add bitmap info:
<   heap page to find matching rows.
>   heap page to find matching rows, or perhaps use a mixed solution where
>   tids are recorded for pages with only a few matches and per-page bitmaps
>   are used for more dense pages.  Another idea is to use a 32-bit bitmap
>   for every page and set a bit based on the item number mod(32).
2004-11-10 02:48:41 +00:00
Tom Lane
9a633cbb6c Allow planner to fold "stable" functions to constants when forming
selectivity estimates, per recent discussion.
2004-11-09 21:42:53 +00:00
Tom Lane
8f6278d907 Put in place some defenses against being fooled by accidental match of
shared memory segment ID.  If we can't access the existing shmem segment,
it must not be relevant to our data directory.  If we can access it,
then attach to it and check for an actual match to the data directory.
This should avoid some cases of failure-to-restart-after-boot without
introducing any significant risk of failing to detect a still-running
old backend.
2004-11-09 21:30:18 +00:00
Bruce Momjian
58825b8cd6 Add:
>
> * Research the use of larger pages sizes
2004-11-09 16:50:59 +00:00
Peter Eisentraut
e9c05281b5 Get rid of perror(), substitute some better phrased error messages.
malloc() doesn't set errno, so most uses were buggy anyway.
2004-11-09 15:57:57 +00:00