Commit Graph

7808 Commits

Author SHA1 Message Date
Tom Lane 23c8b0ccc6 Fix markup.
Security: CVE-2007-2138
2007-04-20 03:27:23 +00:00
Tom Lane aa27977fe2 Support explicit placement of the temporary-table schema within search_path.
This is needed to allow a security-definer function to set a truly secure
value of search_path.  Without it, a malicious user can use temporary objects
to execute code with the privileges of the security-definer function.  Even
pushing the temp schema to the back of the search path is not quite good
enough, because a function or operator at the back of the path might still
capture control from one nearer the front due to having a more exact datatype
match.  Hence, disable searching the temp schema altogether for functions and
operators.

Security: CVE-2007-2138
2007-04-20 02:37:38 +00:00
Bruce Momjian 7fb1a0b5f3 Release wording updates for releases 8.2.4, 8.1.9, 8.0.13, 7.4.17, 7.3.19. 2007-04-19 13:02:49 +00:00
Bruce Momjian ca3f095b98 Update FAQ for 8.2.4. 2007-04-19 03:05:10 +00:00
Bruce Momjian 3116c2f7c3 Release note updates for 8.2.4, 8.1.9, 8.0.13, 7.4.17, 7.3.19. 2007-04-19 02:47:36 +00:00
Bruce Momjian 05cd021c30 Remove tabs from SGML source files. 2007-04-18 20:44:53 +00:00
Alvaro Herrera ef23a77441 Enable configurable log of autovacuum actions. Initial patch from Simon
Riggs, additional code and docs by me.  Per discussion.
2007-04-18 16:44:18 +00:00
Magnus Hagander 432ea3cffd Enable building of 64-bit libpq using visual studio 8 and the
win32.mak file.
Enable building with kerberos support using the win32.mak file.

Hiroshi Saito + me
2007-04-18 13:50:09 +00:00
Bruce Momjian 9e53f83c75 Item not done, per Pavel:
< 		o -Add MOVE
< 		o -Add support for SCROLL cursors
> 		o Add support for MOVE and SCROLL cursors
2007-04-18 13:31:17 +00:00
Magnus Hagander 62d25256f1 Change default build to release, to be consistent with unix build.
Make it possible to set the default from builenv.bat.

Per request from Dave Page
2007-04-18 10:14:06 +00:00
Bruce Momjian c228448910 Update docs/error message for CSV quote/escape --- must be ASCII.
Backpatch doc change to 8.2.X.
2007-04-18 02:28:22 +00:00
Bruce Momjian 739425dbe3 Document that the COPY delimiter must be an ASCII byte, rather than a
multi-byte value.  It can also be a single-byte encoded character if
the client and server versions match.

Backpatch to 8.2.X.
2007-04-18 00:17:56 +00:00
Bruce Momjian f30a72dcdb Update TODO for plpgsql cursors:
< 		o -Add support for WITH HOLD and SCROLL cursors
> 		o -Add support for SCROLL cursors
> 		o Add support for WITH HOLD cursors
2007-04-17 23:54:32 +00:00
Bruce Momjian 097a200d89 Also done for PL/pgSQL:
< 		o Add support for WITH HOLD and SCROLL cursors
> 		o -Add support for WITH HOLD and SCROLL cursors
2007-04-17 21:22:51 +00:00
Bruce Momjian f672b875ae Done:
< 		o Add MOVE
> 		o -Add MOVE
2007-04-17 21:22:13 +00:00
Bruce Momjian e6facb3b95 Add warning about TODO item:
<   Currently all schemas are owned by the super-user because they are
<   copied from the template1 database.
>   Currently all schemas are owned by the super-user because they are copied
>   from the template1 database.  However, since all objects are inherited
>   from the template database, it is not clear that setting schemas to the db
>   owner is correct.
2007-04-17 20:50:34 +00:00
Bruce Momjian 6c2c6682f6 Not easy, per Alvaro:
< * %Set proper permissions on non-system schemas during db creation
> * Set proper permissions on non-system schemas during db creation
2007-04-17 20:47:55 +00:00
Tom Lane 2b99411df2 Fix erroneous column counts in some documentation tables. Brian Gough 2007-04-17 17:30:35 +00:00
Alvaro Herrera e2a186b03c Add a multi-worker capability to autovacuum. This allows multiple worker
processes to be running simultaneously.  Also, now autovacuum processes do not
count towards the max_connections limit; they are counted separately from
regular processes, and are limited by the new GUC variable
autovacuum_max_workers.

The launcher now has intelligence to launch workers on each database every
autovacuum_naptime seconds, limited only on the max amount of worker slots
available.

Also, the global worker I/O utilization is limited by the vacuum cost-based
delay feature.  Workers are "balanced" so that the total I/O consumption does
not exceed the established limit.  This part of the patch was contributed by
ITAGAKI Takahiro.

Per discussion.
2007-04-16 18:30:04 +00:00
Tom Lane f01b196597 Support scrollable cursors (ie, 'direction' clause in FETCH) in plpgsql.
Pavel Stehule, reworked a bit by Tom.
2007-04-16 17:21:24 +00:00
Tom Lane 66888f7424 Expose more cursor-related functionality in SPI: specifically, allow
access to the planner's cursor-related planning options, and provide new
FETCH/MOVE routines that allow access to the full power of those commands.
Small refactoring of planner(), pg_plan_query(), and pg_plan_queries()
APIs to make it convenient to pass the planning options down from SPI.

This is the core-code portion of Pavel Stehule's patch for scrollable
cursor support in plpgsql; I'll review and apply the plpgsql changes
separately.
2007-04-16 01:14:58 +00:00
Tatsuo Ishii 6041b92238 Make JOHAB client only encoding per discussions in pgsql-hackers
"Server-side support of all encodings" around 2007/3/26.
initdb required.
2007-04-15 10:56:30 +00:00
Bruce Momjian 1b75d634a6 Update TODO:
< 	o Consider reducing on-disk varlena length from four to two
< 	  because a heap row cannot be more than 64k in length
> 	o Consider reducing on-disk varlena length from four bytes to
> 	  two because a heap row cannot be more than 64k in length
2007-04-13 23:23:22 +00:00
Bruce Momjian 5b464e1196 Update Win32 FAQ HTML version to match corrected text version. 2007-04-13 20:00:10 +00:00
Neil Conway 85bbf01e08 Minor fixes for the EXPLAIN reference page. Mention the fact that
EXPLAIN ANALYZE can sometimes be significantly slower than running
the same query normally, and make some minor markup improvements.
2007-04-12 22:39:21 +00:00
Neil Conway 6df6d8e361 Fixes for RESET SESSION patch, per Alvaro. Fix a typo in the RESET
ref page (sorry, my fault!), and simplify the coding of
ResetTempTableNamespace().
2007-04-12 22:34:45 +00:00
Bruce Momjian c0e42e9325 Done:
> * -Add RESET SESSION command to reset all session state
2007-04-12 19:38:26 +00:00
Neil Conway d13e903bea RESET SESSION, plus related new DDL commands. Patch from Marko Kreen,
reviewed by Neil Conway. This patch adds the following DDL command
variants: RESET SESSION, RESET TEMP, RESET PLANS, CLOSE ALL, and
DEALLOCATE ALL. RESET SESSION is intended for use by connection
pool software and the like, in order to reset a client session
to something close to its initial state.

Note that while most of these command variants can be executed
inside a transaction block (but are not transaction-aware!),
RESET SESSION cannot. While this is inconsistent, it is intended
to catch programmer mistakes: RESET SESSION in an open transaction
block is probably unintended.
2007-04-12 06:53:49 +00:00
Bruce Momjian e6e47f278d Update text, per Greg Stark:
< 	o Allow single-byte header storage for arrays
> 	o Allow single-byte header storage for array elements
2007-04-11 21:02:31 +00:00
Bruce Momjian f7424b0d4b Add:
> 	o Allow single-byte header storage for arrays
2007-04-10 01:33:39 +00:00
Bruce Momjian 170fa82b1a Add:
> 	o Have WITH CONSTRAINTS also create constraint indexes
> 	  http://archives.postgresql.org/pgsql-patches/2007-04/msg00149.php
2007-04-10 01:22:12 +00:00
Bruce Momjian 485d9ca96f Add URL for:
* Simplify ability to create partitioned tables
>   http://archives.postgresql.org/pgsql-hackers/2007-04/msg00151.php
2007-04-09 21:18:29 +00:00
Bruce Momjian bbed5ba914 Done:
> 	o -Make CLUSTER preserve recently-dead tuples per MVCC requirements
2007-04-08 02:17:02 +00:00
Tom Lane e51ac1b899 Minor editorialization on CLUSTER reference page. 2007-04-08 02:07:35 +00:00
Bruce Momjian c218c0bfda Done:
> 	o -Add more logical syntax CLUSTER table USING index;
2007-04-08 00:36:08 +00:00
Bruce Momjian e55c8e36ae Support syntax "CLUSTER table USING index", which is more logical.
Holger Schurig
2007-04-08 00:26:34 +00:00
Tom Lane d7e2de6629 Add note that TRUNCATE is not MVCC-safe. 2007-04-07 17:12:15 +00:00
Bruce Momjian 5695f38f74 Slight wording improvement. 2007-04-07 04:04:56 +00:00
Neil Conway 64ee1a8a55 Fix a few typos in the docs. 2007-04-07 03:58:08 +00:00
Bruce Momjian 8e0f8630a6 Remove example of SQL-standard syntax for GRANT/REVOKE --- was causing
confusion.
2007-04-07 03:48:25 +00:00
Bruce Momjian 5f3fbe14f3 In docs, Symetric -> Symmetric.
Michael Fuhr
2007-04-07 03:34:36 +00:00
Bruce Momjian 9af03980cf Done:
> * -Allow use of indexes to search for NULLs
2007-04-07 03:08:20 +00:00
Bruce Momjian d6e3bb63cb Done:
o -Support a smaller header for short variable-length fields
2007-04-07 02:48:16 +00:00
Tom Lane f02a82b6ad Make 'col IS NULL' clauses be indexable conditions.
Teodor Sigaev, with some kibitzing from Tom Lane.
2007-04-06 22:33:43 +00:00
Tom Lane 146c83c045 Fix some now-obsolete comments about the space used by various data
types.
2007-04-06 19:22:38 +00:00
Tom Lane 3e23b68dac Support varlena fields with single-byte headers and unaligned storage.
This commit breaks any code that assumes that the mere act of forming a tuple
(without writing it to disk) does not "toast" any fields.  While all available
regression tests pass, I'm not totally sure that we've fixed every nook and
cranny, especially in contrib.

Greg Stark with some help from Tom Lane
2007-04-06 04:21:44 +00:00
Bruce Momjian bd097ccdd4 Add URL for:
* Reduce WAL traffic so only modified values are written rather than
  entire rows
>
>   http://archives.postgresql.org/pgsql-hackers/2007-03/msg01589.php
>
2007-04-05 02:08:53 +00:00
Bruce Momjian 43666e8216 Improve documentation/warning when --with-libxml is not used in the
installation.
2007-04-05 01:46:27 +00:00
Bruce Momjian 5dbd9c9c53 Re-add FAQ item 3.7 which was accidentally removed in previous commit:
<H3 id="item3.7">3.7) What computer hardware should I use?</H3>
2007-04-04 19:26:58 +00:00
Bruce Momjian cd39718446 Document how to identify an invalid index after a failed CREATE INDEX
CONCURRENTLY.

Gregory Stark
2007-04-03 22:38:35 +00:00
Bruce Momjian fb4279e99c Done:
> 		o -Allow PL/PythonU to return boolean rather than 1/0
2007-04-03 15:51:36 +00:00
Tom Lane b3005276eb Decouple the values of TOAST_TUPLE_THRESHOLD and TOAST_MAX_CHUNK_SIZE.
Add the latter to the values checked in pg_control, since it can't be changed
without invalidating toast table content.  This commit in itself shouldn't
change any behavior, but it lays some necessary groundwork for experimentation
with these toast-control numbers.

Note: while TOAST_TUPLE_THRESHOLD can now be changed without initdb, some
thought still needs to be given to needs_toast_table() in toasting.c before
unleashing random changes.
2007-04-03 04:14:26 +00:00
Bruce Momjian 4fea0ca8f3 Update:
< * Add transaction_idle_timeout GUC so locks are not held for long
> * Add idle_in_transaction_timeout GUC so locks are not held for long
2007-04-03 04:12:00 +00:00
Bruce Momjian d542bde900 Update:
< * Add idle_timeout GUC so locks are not held for log periods of time
> * Add transaction_idle_timeout GUC so locks are not held for long
>   periods of time
2007-04-03 02:17:11 +00:00
Bruce Momjian 401bc9cfcb Add:
> * Allow all data types to cast to and from TEXT
>
>   http://archives.postgresql.org/pgsql-hackers/2007-04/msg00017.php
>
>
2007-04-03 01:25:12 +00:00
Bruce Momjian f4cc73731d Add:
>
> * Add idle_timeout GUC so locks are not held for log periods of time
2007-04-03 01:21:06 +00:00
Bruce Momjian aa8fb12498 Add URL for:
o Allow UPDATE tab SET ROW (col, ...) = (SELECT...)
<
> 	  http://archives.postgresql.org/pgsql-hackers/2007-03/msg00865.php
2007-04-03 01:16:24 +00:00
Bruce Momjian 133d1d4f45 Add URL for:
o Allow commenting of variables in postgresql.conf to restore them
          to defaults
> 	  http://archives.postgresql.org/pgsql-patches/2007-03/msg00180.php
2007-04-02 23:25:20 +00:00
Bruce Momjian 5d8a23403f Add URL for:
o Allow a warm standby system to also allow read-only
statements
            [pitr]
> 	    http://archives.postgresql.org/pgsql-hackers/2007-03/msg00050.php
2007-04-02 22:50:19 +00:00
Bruce Momjian 17285959c1 Add URL for:
* Improve speed with indexes

  For large table adjustments during VACUUM FULL, it is faster to cluster
  or reindex rather than update the index.  Also, index updates can bloat
  the index.

>
>   http://archives.postgresql.org/pgsql-hackers/2007-03/msg00024.php
2007-04-02 22:49:03 +00:00
Bruce Momjian 3a7d66b48a Add:
> 	o Have timestamp subtraction not call justify_hours()?
>
> 	  http://archives.postgresql.org/pgsql-sql/2006-10/msg00059.php
>
< 	o Add overflow checking to timestamp and interval arithmetic
> 	o Add overflow checking to timestamp and interval arithmetic
2007-04-02 22:46:10 +00:00
Bruce Momjian ffb27446cc Pl/python -> Pl/PythonU:
< 		o Add table function support to pltcl, plpython
> 		o Add table function support to pltcl, plpythonu
< 		o Add PL/Python tracebacks
> 		o Add PL/PythonU tracebacks
< 		o Allow PL/Python to return boolean rather than 1/0
> 		o Allow PL/PythonU to return boolean rather than 1/0
2007-04-02 21:28:10 +00:00
Bruce Momjian 5c706f1c98 Add:
> * Fix to_date()-related functions to consistently issue errors
>
>   http://archives.postgresql.org/pgsql-hackers/2007-02/msg00915.php
>
2007-04-02 21:25:34 +00:00
Bruce Momjian ecd12df117 Add:
>
> 		o Allow PL/Python to return boolean rather than 1/0
>
> 		  http://archives.postgresql.org/pgsql-patches/2007-01/msg00596.php
>
2007-04-02 21:10:53 +00:00
Bruce Momjian d6bac1e8e9 Add item:
>
> * Consider reducing memory used for shared buffer reference count
>
>   http://archives.postgresql.org/pgsql-hackers/2007-01/msg00752.php
2007-04-02 20:43:40 +00:00
Bruce Momjian 3e8ff14506 Add URL for:
o Allow RETURN to return row or record functions

> 		o Allow RETURN to return row or record functions
> 		  http://archives.postgresql.org/pgsql-patches/2006-08/msg00397.php
> 		  http://archives.postgresql.org/pgsql-hackers/2006-09/msg00388.php
2007-04-02 20:10:16 +00:00
Bruce Momjian cac01fc038 Done:
< * Support a data type with specific enumerated values (ENUM)
<
<   http://archives.postgresql.org/pgsql-hackers/2006-08/msg00979.php
<
> * -Support a data type with specific enumerated values (ENUM)
2007-04-02 17:18:44 +00:00
Bruce Momjian bf56e8a79f > o Add PQexecf() that allows complex parameter substitution
>
> 	  http://archives.postgresql.org/pgsql-hackers/2007-03/msg01803.php
2007-04-02 17:15:39 +00:00
Peter Eisentraut 626b4416b9 Put documentation on XML data type and functions in better positions. Add
some index terms.
2007-04-02 15:27:02 +00:00
Tom Lane 57690c6803 Support enum data types. Along the way, use macros for the values of
pg_type.typtype whereever practical.  Tom Dunstan, with some kibitzing
from Tom Lane.
2007-04-02 03:49:42 +00:00
Peter Eisentraut 0b75afda92 Mapping schemas and databases to XML and XML Schema.
Refactor and document the remaining mapping code.
2007-04-01 09:00:26 +00:00
Magnus Hagander 335feca441 Add some instrumentation to the bgwriter, through the stats collector.
New view pg_stat_bgwriter, and the functions required to build it.
2007-03-30 18:34:56 +00:00
Bruce Momjian f9ce21f94c Update Japanese FAQ.
Jun Kuwamura
2007-03-30 03:46:53 +00:00
Bruce Momjian 2ebfe9a818 Update SSL description for when SSL root.crt/server.crt is required;
add link to libpq SSL does from server docs.

Backpatch to 8.2.X.
2007-03-30 03:19:02 +00:00
Bruce Momjian 31f0bacb44 Add to:
* Reduce storage space for small NUMERICs
>   http://archives.postgresql.org/pgsql-patches/2007-02/msg00505.php
2007-03-29 21:44:39 +00:00
Bruce Momjian 84045144e7 Add:
> * Reduce storage space for small NUMERICs
>
>   http://archives.postgresql.org/pgsql-hackers/2007-02/msg01331.php
>
2007-03-29 21:43:34 +00:00
Bruce Momjian 418834f60d Update:
< 	o Add more logical syntax CLUSTER table USING index;
> 	o Add more logical syntax CLUSTER table USING index;
2007-03-29 20:24:34 +00:00
Bruce Momjian 9456a60f52 Update item:
o Add more logical syntax CLUSTER table USING index;
< 	o Add more logical syntax CLUSTER table ORDER BY index;
> 	o Add more logical syntax CLUSTER table USING index;
2007-03-29 20:23:56 +00:00
Magnus Hagander 96b171903d Make ECPG regression tests use native threading instead of pthreads, now that
ecpglib supports it.
Change configure (patch from Bruce) and msvc build system to no longer require
 pthreads on win32, since all parts of postgresql can be thread-safe using the
 native platform functions.
2007-03-29 15:30:52 +00:00
Tom Lane fba8113c1b Teach CLUSTER to skip writing WAL if not needed (ie, not using archiving)
--- Simon.
Also, code review and cleanup for the previous COPY-no-WAL patches --- Tom.
2007-03-29 00:15:39 +00:00
Bruce Momjian 553c7aeebf Add URL for:
* Automatically create rules on views so they are updateable, per SQL99
>   http://archives.postgresql.org/pgsql-patches/2006-08/msg00255.php
2007-03-28 02:17:45 +00:00
Bruce Momjian 1678e16cb3 Remove item due to lack of interest:
< * %Add pg_get_acldef(), pg_get_typedefault(), pg_get_attrdef(),
<   pg_get_tabledef(), pg_get_domaindef(), pg_get_functiondef()
<
<   These would be for application use, not for use by pg_dump.
<
2007-03-27 17:27:01 +00:00
Bruce Momjian d3afd68051 Add:
>
> * Allow configuration of backend priorities via the operating system
>
>   Though backend priorities make priority inversion during lock
>   waits possible, research shows that this is not a huge problem.
>   http://archives.postgresql.org/pgsql-general/2007-02/msg00493.php
2007-03-27 15:36:40 +00:00
Bruce Momjian 06d5fddfbf Add documentation for pulling the CVS repository using rsync, and
mention cvsup last.
2007-03-27 01:45:22 +00:00
Bruce Momjian 64652e8632 Update:
* Improve dead row detection during multi-statement transactions usage
2007-03-26 23:48:43 +00:00
Bruce Momjian 997b3c1b5d Add:
> * Increase the number of rows recognized as dead during multi-statement
>   transactions
>
>   http://archives.postgresql.org/pgsql-patches/2007-03/msg00358.php
>
2007-03-26 23:47:53 +00:00
Tom Lane b581b85406 Fix seriously broken markup for libpq-envars cross-references. 2007-03-26 17:23:37 +00:00
Tom Lane 55a7cf80a0 Allow non-superuser database owners to create procedural languages.
A DBA is allowed to create a language in his database if it's marked
"tmpldbacreate" in pg_pltemplate.  The factory default is that this is set
for all standard trusted languages, but of course a superuser may adjust
the settings.  In service of this, add the long-foreseen owner column to
pg_language; renaming, dropping, and altering owner of a PL now follow
normal ownership rules instead of being superuser-only.
Jeremy Drake, with some editorialization by Tom Lane.
2007-03-26 16:58:41 +00:00
Tom Lane 287ed68dd2 Remove assertion that constraint_exclusion risks wrong answers if
table constraints are changed; this is no longer true now that we
have a plan invalidation mechanism.
2007-03-26 01:41:57 +00:00
Tom Lane bf8236526b Remove the prohibition on executing cursor commands through SPI_execute.
Vadim had included this restriction in the original design of the SPI code,
but I'm darned if I can see a reason for it.

I left the macro definition of SPI_ERROR_CURSOR in place, so as not to
needlessly break any SPI callers that are checking for it, but that code
will never actually be returned anymore.
2007-03-25 23:27:59 +00:00
Tatsuo Ishii 75c6519ff6 Add new encoding EUC_JIS_2004 and SHIFT_JIS_2004,
along with new conversions among EUC_JIS_2004, SHIFT_JIS_2004 and UTF-8.
catalog version has been bump up.
2007-03-25 11:56:04 +00:00
Bruce Momjian 7b4726e6c3 Add:
>
> * Allow BEFORE INSERT triggers on views
>
>   http://archives.postgresql.org/pgsql-general/2007-02/msg01466.php
2007-03-25 02:21:19 +00:00
Bruce Momjian b72426d351 Add:
> 	o Add more logical syntax CLUSTER table ORDER BY index;
> 	  support current syntax for backward compatibility
2007-03-24 23:12:34 +00:00
Magnus Hagander 8ca1571665 Support for installing NLS files, and update support to use gettext
from gnuwin32.
2007-03-24 22:16:49 +00:00
Bruce Momjian 36d35a14df Document that LDAP URLs should be double-quoted in pg_hba.conf because
commas are often present in the URL.

Backpatch to 8.2.X.
2007-03-24 21:46:23 +00:00
Magnus Hagander 3024b0aa94 Support for running contribcheck on msvc 2007-03-23 09:57:55 +00:00
Bruce Momjian 404c00434c Add:
>
> * Fix cases where invalid byte encodings are accepted by the database,
>   but throw an error on SELECT
>
>   http://archives.postgresql.org/pgsql-hackers/2007-03/msg00767.php
2007-03-22 20:55:19 +00:00
Bruce Momjian 760b988f9d Add to TODO:
CLUSTER:
>
> 	o %Add VERBOSE option to report tables as they are processed,
> 	  like VACUUM VERBOSE
2007-03-22 20:38:42 +00:00
Bruce Momjian c68a631ce7 Remove tabs in SGML files. 2007-03-22 15:46:56 +00:00
Bruce Momjian 183c12e0d7 Remove tabs from SGML file. 2007-03-22 15:45:56 +00:00
Bruce Momjian 2b49e5d3cb Add:
<
<
> 	o During index creation, pre-sort the tuples to improve build speed
>
> 	  http://archives.postgresql.org/pgsql-hackers/2007-03/msg01199.php
>
2007-03-21 21:25:46 +00:00
Bruce Momjian 5fc7ba76dd Remove TODO item, not wanted:
< * Add NUMERIC division operator that doesn't round?
<
<   Currently NUMERIC _rounds_ the result to the specified precision.
<   This means division can return a result that multiplied by the
<   divisor is greater than the dividend, e.g. this returns a value > 10:
<
<     SELECT (10::numeric(2,0) / 6::numeric(2,0))::numeric(2,0) * 6;
<
<   The positive modulus result returned by NUMERICs might be considered
<   inaccurate, in one sense.
<
2007-03-21 21:21:21 +00:00
Magnus Hagander 17fdd7833e Add documentation about vcregress. 2007-03-21 19:22:52 +00:00
Bruce Momjian bebbea0c1e Add URL for:
* Add locale-aware MONEY type, and support multiple currencies
  http://archives.postgresql.org/pgsql-hackers/2007-03/msg01181.php
2007-03-21 16:43:31 +00:00
Bruce Momjian 3b765dba78 Add URL for:
* Allow accurate statistics to be collected on indexes with more than
  one column or expression indexes, perhaps using per-index statistics
>   http://archives.postgresql.org/pgsql-hackers/2007-03/msg01131.php
2007-03-21 00:33:08 +00:00
Bruce Momjian c45fa5598b In FAQ, reference upgrade info via URL. 2007-03-20 17:43:57 +00:00
Bruce Momjian d89b968319 Not done, reverted:
< 	o -Allow commenting of variables in postgresql.conf to restore them
> 	o Allow commenting of variables in postgresql.conf to restore them
2007-03-20 16:36:20 +00:00
Bruce Momjian e7bb07ea13 Done:
> 	o -Allow commenting of variables in postgresql.conf to restore them
< 	  http://archives.postgresql.org/pgsql-hackers/2006-09/msg01481.php
2007-03-20 16:32:42 +00:00
Neil Conway 9eb78beeae Add three new regexp functions: regexp_matches, regexp_split_to_array,
and regexp_split_to_table. These functions provide access to the
capture groups resulting from a POSIX regular expression match,
and provide the ability to split a string on a POSIX regular
expression, respectively. Patch from Jeremy Drake; code review by
Neil Conway, additional comments and suggestions from Tom and
Peter E.

This patch bumps the catversion, adds some regression tests,
and updates the docs.
2007-03-20 05:45:00 +00:00
Jan Wieck 0fe16500d3 Changes pg_trigger and extend pg_rewrite in order to allow triggers and
rules to be defined with different, per session controllable, behaviors
for replication purposes.

This will allow replication systems like Slony-I and, as has been stated
on pgsql-hackers, other products to control the firing mechanism of
triggers and rewrite rules without modifying the system catalog directly.

The firing mechanisms are controlled by a new superuser-only GUC
variable, session_replication_role, together with a change to
pg_trigger.tgenabled and a new column pg_rewrite.ev_enabled. Both
columns are a single char data type now (tgenabled was a bool before).
The possible values in these attributes are:

     'O' - Trigger/Rule fires when session_replication_role is "origin"
           (default) or "local". This is the default behavior.

     'D' - Trigger/Rule is disabled and fires never

     'A' - Trigger/Rule fires always regardless of the setting of
           session_replication_role

     'R' - Trigger/Rule fires when session_replication_role is "replica"

The GUC variable can only be changed as long as the system does not have
any cached query plans. This will prevent changing the session role and
accidentally executing stored procedures or functions that have plans
cached that expand to the wrong query set due to differences in the rule
firing semantics.

The SQL syntax for changing a triggers/rules firing semantics is

     ALTER TABLE <tabname> <when> TRIGGER|RULE <name>;

     <when> ::= ENABLE | ENABLE ALWAYS | ENABLE REPLICA | DISABLE

psql's \d command as well as pg_dump are extended in a backward
compatible fashion.

Jan
2007-03-19 23:38:32 +00:00
Bruce Momjian e927f8f14e Remove last line of patch license, per Zeugswetter Andreas:
"If the patch is not BSD-licensed, it will be rejected."
2007-03-19 16:53:03 +00:00
Bruce Momjian 79929fff76 Add URL for:
* Simplify ability to create partitioned tables
>   http://archives.postgresql.org/pgsql-hackers/2007-03/msg00375.php
2007-03-19 15:50:48 +00:00
Bruce Momjian 00c56bb7f8 Add URL for:
* Allow sequential scans to take advantage of other concurrent
  sequential scans, also called "Synchronised Scanning"

  http://archives.postgresql.org/pgsql-hackers/2007-03/msg00415.php
2007-03-19 15:24:17 +00:00
Magnus Hagander e6e78187ef msvc build actually needs Bison 2.2 or later, not 2.1. Or 1.875 as before. 2007-03-17 17:11:41 +00:00
Magnus Hagander 15f4842d70 Add note that diff is required for regression tests. 2007-03-17 14:30:00 +00:00
Magnus Hagander 51d7741db1 Add new columns for tuple statistics on a database level to
pg_stat_database.
2007-03-16 17:57:36 +00:00
Magnus Hagander 348b621894 Show aggregate return types in psql \da output.
Greg Sabino Mullane
2007-03-16 08:28:01 +00:00
Tom Lane 95f6d2d209 Make use of plancache module for SPI plans. In particular, since plpgsql
uses SPI plans, this finally fixes the ancient gotcha that you can't
drop and recreate a temp table used by a plpgsql function.

Along the way, clean up SPI's API a little bit by declaring SPI plan
pointers as "SPIPlanPtr" instead of "void *".  This is cosmetic but
helps to forestall simple programming mistakes.  (I have changed some
but not all of the callers to match; there are still some "void *"'s
in contrib and the PL's.  This is intentional so that we can see if
anyone's compiler complains about it.)
2007-03-15 23:12:07 +00:00
Tom Lane 0169c354bf Arrange to install a "posixrules" entry in our timezone database, so that
POSIX-style timezone specs that don't exactly match any database entry will
be treated as having correct USA DST rules.  Also, document that this can
be changed if you want to use some other DST rules with a POSIX zone spec.

We could consider changing localtime.c's TZDEFRULESTRING, but since that
facility can only deal with one DST transition rule, it seems fairly useless
now; might as well just plan to override it using a "posixrules" entry.

Backpatch as far as 8.0.  There isn't much we can do in 7.x ... either your
libc gets it right, or it doesn't.
2007-03-14 17:38:06 +00:00
Tom Lane 68a6e5e877 Fix broken markup, strange tab width. 2007-03-14 00:15:26 +00:00
Magnus Hagander be40754e91 Rewrite win32 install documentation (it's not client only anymore, and it's
now complete). Update for the MSVC6/Borland support now being only libpq.
Move most of the information about full MSVC build from README file into
documentation.
2007-03-13 16:03:36 +00:00
Peter Eisentraut 02284e224c Minor edits 2007-03-06 09:59:22 +00:00
Peter Eisentraut f12f220e5a Add more information about avoiding Linux OOM killer.
by Toru SHIMOGAKI
2007-03-06 09:54:23 +00:00
Bruce Momjian a535cdf130 Revert temp_tablespaces because of coding problems, per Tom. 2007-03-06 02:06:15 +00:00
Bruce Momjian 37fc8a667e Remove timeline for 8.3 release, now on web site. 2007-03-05 18:04:03 +00:00
Bruce Momjian 0763a56501 Add lo_truncate() to backend and libpq for large object truncation.
Kris Jurka
2007-03-03 19:52:47 +00:00
Bruce Momjian e52c4a6e26 Add GUC log_lock_waits to log long wait times.
Simon Riggs
2007-03-03 18:46:40 +00:00
Bruce Momjian f52019cf80 Done:
> 	o -Allow psql \pset boolean variables to set to fixed values, rather
2007-03-03 17:24:04 +00:00
Bruce Momjian df910a52a6 Allow \pset and \x, \t to use boolean constants on/off, rather than just
toggle.

Chad Wagner
2007-03-03 17:19:11 +00:00
Bruce Momjian bb8b5b83da Update license wording in FAQ_DEV. 2007-03-03 16:12:37 +00:00
Bruce Momjian b7f73bedc8 Add URLs for:
* Add REPLACE or UPSERT command that does UPDATE, or on failure, INSERT
  [merge]
2007-03-03 03:08:46 +00:00
Tom Lane 61c3e5b248 Make log_min_error_statement put LOG level at the same priority as
log_min_messages does; and arrange to suppress the duplicative output
that would otherwise result from log_statement and log_duration messages.
Bruce Momjian and Tom Lane.
2007-03-02 23:37:23 +00:00
Bruce Momjian 1a7f6302bc HTML markup fix. 2007-03-02 21:03:55 +00:00
Bruce Momjian 4c644ed7b0 Fix HTML markup. 2007-03-02 21:03:11 +00:00
Bruce Momjian 23ef7b6cf4 in FAQ_DEV, mention we don't want non-BSD-compatible licensed patches. 2007-03-02 17:51:56 +00:00
Tom Lane 50acd427a5 Fix broken markup, improve wording. 2007-03-02 06:01:01 +00:00
Tom Lane fb276438b6 Suppress useless searches for unused line pointers in PageAddItem. To do
this, add a 16-bit "flags" field to page headers by stealing some bits from
pd_tli.  We use one flag bit as a hint to indicate whether there are any
unused line pointers; the remaining 15 are available for future use.

This is a cut-down form of an idea proposed by Hiroki Kataoka in July 2005.
At the time it was rejected because the original patch increased the size of
page headers and it wasn't clear that the benefit outweighed the distributed
cost.  The flag-bit approach gets most of the benefit without requiring an
increase in the page header size.

Heikki Linnakangas and Tom Lane
2007-03-02 00:48:44 +00:00
Bruce Momjian d1ce4f7396 Add language about rights given by posting a patch:
<li>PostgreSQL is licensed under a BSD license.  By posting a patch
    to the public PostgreSQL mailling lists, you are giving the PostgreSQL
    Global Development Group the non-revokable right to distribute your
    patch under the BSD license.  If you use code that is available under
    some other license that is BSD compatible (eg. public domain), please
    note that in your email submission.</li>
2007-02-28 17:28:09 +00:00
Tom Lane 234a02b2a8 Replace direct assignments to VARATT_SIZEP(x) with SET_VARSIZE(x, len).
Get rid of VARATT_SIZE and VARATT_DATA, which were simply redundant with
VARSIZE and VARDATA, and as a consequence almost no code was using the
longer names.  Rename the length fields of struct varlena and various
derived structures to catch anyplace that was accessing them directly;
and clean up various places so caught.  In itself this patch doesn't
change any behavior at all, but it is necessary infrastructure if we hope
to play any games with the representation of varlena headers.
Greg Stark and Tom Lane
2007-02-27 23:48:10 +00:00
Bruce Momjian 0459b591fc Update release timeline to use unnumber lists HTML. 2007-02-27 23:12:51 +00:00
Bruce Momjian a5f96f69cb Update DEV FAQ for CVS/SVN issue.
Robert Treat
2007-02-27 21:07:20 +00:00
Bruce Momjian f7780bf391 Remove Kerberos mention in Solaris FAQ. 2007-02-27 19:10:19 +00:00
Bruce Momjian 7395c76159 Update Solaris FAQ. 2007-02-23 23:22:33 +00:00
Bruce Momjian e7aa8ab2ab Spelling fix. 2007-02-23 20:37:59 +00:00
Bruce Momjian 53ec43b41b Update Solaris FAQ wording, per Peter. 2007-02-23 20:30:08 +00:00
Bruce Momjian 1449e6f981 Update upgrade FAQ info. 2007-02-23 19:06:22 +00:00
Bruce Momjian b950596ffd Update Solaris FAQ.
Zdenek Kotala
2007-02-23 18:38:19 +00:00
Bruce Momjian 7031dd6869 Add psql \prompt capability.
Chad Wagner
2007-02-23 18:20:59 +00:00
Tom Lane eab6b8b27e Turn the rangetable used by the executor into a flat list, and avoid storing
useless substructure for its RangeTblEntry nodes.  (I chose to keep using the
same struct node type and just zero out the link fields for unneeded info,
rather than making a separate ExecRangeTblEntry type --- it seemed too
fragile to have two different rangetable representations.)

Along the way, put subplans into a list in the toplevel PlannedStmt node,
and have SubPlan nodes refer to them by list index instead of direct pointers.
Vadim wanted to do that years ago, but I never understood what he was on about
until now.  It makes things a *whole* lot more robust, because we can stop
worrying about duplicate processing of subplans during expression tree
traversals.  That's been a constant source of bugs, and it's finally gone.

There are some consequent simplifications yet to be made, like not using
a separate EState for subplans in the executor, but I'll tackle that later.
2007-02-22 22:00:26 +00:00
Bruce Momjian 849000c782 Remove extra tab. 2007-02-21 23:22:42 +00:00
Bruce Momjian 7c656baf15 Remove tabs from SGML reference files, so their addition can be detected
in the future.
2007-02-21 23:21:12 +00:00
Bruce Momjian 8c98fd6e7f Update upgrade wording. 2007-02-21 22:54:11 +00:00
Bruce Momjian 526b1d6979 Update FAQ about minor updates. 2007-02-21 19:48:02 +00:00
Bruce Momjian 9bc6af8026 Update Japanese FAQ.
Jun Kuwamura
2007-02-21 17:23:49 +00:00
Bruce Momjian bded8fdd8d Update URL in German FAQ for bug form, per Schima, Fabian 2007-02-21 16:49:37 +00:00
Bruce Momjian 28ebe6b5d0 Update Chinese FAQs to have two versions, a traditional Chinese version (Taiwan)
and a Simplified version (China (PRC)).

Backpatch to 8.2.X.

Daojing.Zhou
2007-02-21 16:42:36 +00:00
Bruce Momjian c1958e5bd4 Fix typo, per Dave Page. 2007-02-21 16:09:01 +00:00
Bruce Momjian 3986d713ac Update minor release text. 2007-02-21 16:08:05 +00:00
Bruce Momjian 6765df9174 Add configure --enable-profiling to enable GCC profiling. Patches from
Korry Douglas and Nikhil S
2007-02-21 15:12:39 +00:00
Bruce Momjian 879caf1369 Update upgrade text. 2007-02-21 15:07:35 +00:00
Bruce Momjian f8e9fb2d87 Update URL for set-returning functions. 2007-02-21 03:50:57 +00:00
Andrew Dunstan afc7e0d848 Allow pltcl args to spi_prepare and plpython args to plpy.prepare to be standard type aliases as well as those known in pg_type. Similar to recent change in plperl. 2007-02-21 03:27:32 +00:00
Bruce Momjian 80ab3e0d34 Add URL for:
o Allow row and record variables to be set to NULL constants,
        and allow NULL tests on such variables
2007-02-21 01:08:58 +00:00
Bruce Momjian 4816b0f452 Add:
>
> * Consider decreasing the amount of memory used by PrivateRefCount
>
>   http://archives.postgresql.org/pgsql-hackers/2006-11/msg00797.php
>   http://archives.postgresql.org/pgsql-hackers/2007-01/msg00752.php
>
2007-02-20 23:39:03 +00:00
Bruce Momjian 57352df66d Fix markup. 2007-02-20 23:14:19 +00:00
Bruce Momjian a64e85eb68 Add:
> * Increase locking when DROPing objects so dependent objects cannot
>   get dropped while the DROP operation is happening
>
>   http://archives.postgresql.org/pgsql-hackers/2007-01/msg00937.php
2007-02-20 22:29:28 +00:00
Bruce Momjian 6e6dab8c87 Add URL for:
o Allow UPDATE/DELETE WHERE CURRENT OF cursor
> 	  http://archives.postgresql.org/pgsql-hackers/2007-01/msg01014.php
2007-02-20 22:23:05 +00:00
Bruce Momjian 916ecf2d5d Add:
>
> * Add missing operators for geometric data types
>
>   Some geometric types do not have the full suite of geometric operators,
>   e.g. box @> point
>
2007-02-20 21:22:35 +00:00
Bruce Momjian b92767d525 Update "encode" documentation to mention that 'escape' only changes null
bytes and backslashes, remove "ASCII" mention.  Backpatch to 8.2.X.
2007-02-20 19:59:04 +00:00
Bruce Momjian 298de77d51 Update pgpass Win32 wording. 2007-02-20 19:35:17 +00:00
Bruce Momjian 8e1ccad519 Update information_schema documentation to match system tables.
Backpatch to 8.2.X.
2007-02-20 18:47:25 +00:00
Bruce Momjian ddd8817f45 Wording improvement. 2007-02-20 18:18:05 +00:00
Bruce Momjian 571df93cff More clearly document that most PostgreSQL utilities support libpq
environment variables.  Backpatch to 8.2.X.
2007-02-20 18:10:59 +00:00
Tom Lane ecba519d4e Adjust user-facing documentation to explain why we don't check pgpass
file permissions on Windows.
2007-02-20 17:47:04 +00:00
Bruce Momjian 71b0cf2f6b Remove, item not needed for Win32:
< 	o Check .pgpass file permissions
>
2007-02-20 15:21:42 +00:00
Bruce Momjian b16dab66a7 Remove "History" sections for pg_dump and pg_restore. I don't think
anyone cares because the last history change was for PostgreSQL 7.1.
2007-02-20 15:01:17 +00:00
Bruce Momjian ff0d71e263 Spell check on array patch. 2007-02-20 14:54:47 +00:00
Bruce Momjian bfc53d7da4 Add for WIN32:
<
> 	o Check .pgpass file permissions
2007-02-20 14:48:47 +00:00
Bruce Momjian 1b52359d90 Update array slice documentation to be clearer. 2007-02-20 14:34:25 +00:00
Bruce Momjian 265124e7e0 Add:
> * Fix IS OF so it matches the ISO specification, and add documentation
>
>   http://archives.postgresql.org/pgsql-patches/2003-08/msg00060.php
>   http://archives.postgresql.org/pgsql-hackers/2007-02/msg00060.php
2007-02-20 14:17:24 +00:00
Bruce Momjian 8272fc3f7b Comment-out documentation for IS OF because it doesn't conform to the
ISO SQL behavior. Backpatch removal to 8.2.X.
2007-02-20 14:04:50 +00:00
Bruce Momjian 2673961659 Remove item:
< 	o ARRAY[[1,2],[3,4]])[1] should return the same values as
< 	  ARRAY[[1,2],[3,4]])[1:1];
<
2007-02-20 03:47:03 +00:00
Bruce Momjian 6126d3e70b Document IS [NOT] OF, which was added in 7.3. 2007-02-20 00:25:05 +00:00
Bruce Momjian 077d753a57 Add FAQ text about Makefile.custom:
<P><I>src/Makefile.custom</I> can be used to set environment variables,
    like <I>CUSTOM_COPT</I>, that are used for every compile.
2007-02-19 23:45:38 +00:00
Bruce Momjian c62de15bec Document that to_char('J'/Julian) is midnight-based, per report that
Julian technically is noon to noon.
2007-02-19 22:51:44 +00:00
Bruce Momjian 9772e0007c Wording improvement. 2007-02-19 22:10:52 +00:00
Bruce Momjian e3285f32e8 Update PQfree() documentation to be clearer, backpatch to 8.2.X. 2007-02-19 22:06:23 +00:00
Bruce Momjian 4acc4aa871 Update wording:
< * Consider allowing configuration of TOAST thresholds
> * Allow user configuration of TOAST thresholds
2007-02-19 21:08:48 +00:00
Bruce Momjian bba9ec141f Add:
> * Consider allowing configuration of TOAST thresholds
>
>   http://archives.postgresql.org/pgsql-hackers/2007-02/msg00213.php
>
2007-02-19 21:07:25 +00:00
Bruce Momjian 6042bb498c Add newlines. 2007-02-19 20:42:33 +00:00
Bruce Momjian 5855d2b593 Add:
> * Allow UPDATEs on only non-referential integrity columns not to conflict
>   with referential integrity locks
>
>   http://archives.postgresql.org/pgsql-hackers/2007-02/msg00073.php
2007-02-19 20:41:40 +00:00
Bruce Momjian c7116a4112 Add:
> * Allow INSERT/UPDATE ... RETURNING inside a SELECT 'FROM' clause
>
>   http://archives.postgresql.org/pgsql-general/2006-09/msg00803.php
>   http://archives.postgresql.org/pgsql-hackers/2006-10/msg00693.php
>
2007-02-19 20:06:56 +00:00
Bruce Momjian 11fa6f59da Clarify documentation that initdb -A or editing pg_hba.conf is required
if you do not trust local users.
2007-02-19 18:57:18 +00:00
Bruce Momjian 70007b4dd5 Clarify documentation for "day of the week" handling for to_char() and
EXTRACT().
2007-02-19 18:20:06 +00:00
Bruce Momjian 107062e008 Done:
> * -Add ISO day of week format 'ID' to to_char() where Monday = 1
2007-02-19 17:58:32 +00:00
Bruce Momjian 3e803f7273 Add "isodow" option to EXTRACT() and date_part() where Sunday = 7. 2007-02-19 17:41:39 +00:00
Bruce Momjian 27d6ee04b8 Done:
> * -Add a field 'isoyear' to extract(), based on the ISO week
2007-02-19 17:21:24 +00:00
Bruce Momjian 68c7cb5ed5 Done:
< 	o Add long file support for binary pg_dump output
<
< 	  While Win32 supports 64-bit files, the MinGW API does not,
< 	  meaning we have to build an fseeko replacement on top of the
< 	  Win32 API, and we have to make sure MinGW handles it.  Another
< 	  option is to wait for the MinGW project to fix it, or use the
< 	  code from the LibGW32C project as a guide.
<
< 	  http://archives.postgresql.org/pgsql-hackers/2006-12/msg00551.php
<
> 	o -Add long file support for binary pg_dump output
2007-02-19 16:36:17 +00:00
Bruce Momjian aa728d5f4b Document limitation of SPI_execute() using multiple queries in a single
string.
2007-02-18 01:47:40 +00:00
Bruce Momjian 9f6ed2f47f Update wording:
<   Currently, ALTER USER and ALTER DATABASE support per-user and
>   Currently ALTER USER and ALTER DATABASE support per-user and
< 	  Currently, subtracting one date from another that crosses a
> 	  Currently subtracting one date from another that crosses a
<   Currently, SQL-language functions can only refer to parameters via $1, etc
>   Currently SQL-language functions can only refer to dollar parameters,
>   e.g. $1
<   Currently, queries prepared via the libpq API are planned on first
>   Currently queries prepared via the libpq API are planned on first
< 	  Currently, SET <tab> causes a database lookup to check all
> 	  Currently SET <tab> causes a database lookup to check all
< 	  Currently, all statement results are transferred to the libpq
> 	  Currently all statement results are transferred to the libpq
2007-02-18 01:34:35 +00:00