Commit Graph

24676 Commits

Author SHA1 Message Date
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
Tom Lane 995ba280c1 Rearrange mdsync() looping logic to avoid the problem that a sufficiently
fast flow of new fsync requests can prevent mdsync() from ever completing.
This was an unforeseen consequence of a patch added in Mar 2006 to prevent
the fsync request queue from overflowing.  Problem identified by Heikki
Linnakangas and independently by ITAGAKI Takahiro; fix based on ideas from
Takahiro-san, Heikki, and Tom.

Back-patch as far as 8.1 because a previous back-patch introduced the problem
into 8.1 ...
2007-04-12 17:10:55 +00:00
Tom Lane ebb6bae539 Cancel pending fsync requests during WAL replay of DROP DATABASE, per bug
report from David Darville.  Back-patch as far as 8.1, which may or may not
have the problem but it seems a safe change anyway.
2007-04-12 15:04:35 +00:00
Magnus Hagander b60ddffa93 Install debugger symbols (in their own directory) 2007-04-12 12:46:20 +00:00
Magnus Hagander 4dd3365086 Enable IPV6 when building with MSVC. 2007-04-12 07:03:00 +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
Tom Lane 226a100568 Code review for btree page split WAL reduction patch. Make it actually work
(original code *always* created a full-page image for the left page, thus
leaving the intended savings unrealized), avoid risk of not having enough room
on the page during xlog restore, squeeze out another couple bytes in the xlog
record, clean up neglected comments.
2007-04-11 20:47:38 +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
Tom Lane 56218fbc48 Minor tweaking of index special-space definitions so that the various
index types can be reliably distinguished by examining the special space
on an index page.  Per my earlier proposal, plus the realization that
there's no need for btree's vacuum cycle ID to cycle through every possible
16-bit value.  Restricting its range a little costs nearly nothing and
eliminates the possibility of collisions.
Memo to self: remember to make bitmap indexes play along with this scheme,
assuming that patch ever gets accepted.
2007-04-09 22:04:08 +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
Magnus Hagander 6e09df9d26 Add cancel handlers so it's possible to Ctrl-C clusterdb, reindexdb
and vacuumdb.
ITAGAKI Takahiro, with minor fixes from me.
2007-04-09 18:21:22 +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
Tom Lane 7b78474da3 Make CLUSTER MVCC-safe. Heikki Linnakangas 2007-04-08 01:26:33 +00:00
Tatsuo Ishii 2fca2c05e7 Add -F option to set fillfactor for tellers, accounts and branches.
Patch contributed by Pavan Deolasee. Along with Japanese doc
modification by Tatsuo Ishii.
2007-04-08 01:15:07 +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 b0194ab110 Add the usage count statistics to the information available in
contrib/pgbuffercache.

Greg Smith
2007-04-07 16:09:14 +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 b396df8485 Don't remove the 'alias' field from flattened rangetable entries;
there are some corner cases where this is needed by ruleutils.c for
proper display of variables during EXPLAIN.
2007-04-06 22:57:20 +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
Andrew Dunstan e1f1a5358b Only run contrib check if there is a Makefile 2007-04-06 13:44:39 +00:00
Tatsuo Ishii e574f2a029 Enhance pgbench -l option to add timestamp. Patch contributed by Greg
Smith. Along with Japanese doc updation by Tasuo Ishii.

> This patch changes the way pgbench outputs its latency log files so that
> every transaction gets a timestamp and notes which transaction type was
> executed.  It's a one-line change that just dumps some additional
> information that was already sitting in that area of code. I also made a
> couple of documentation corrections and clarifications on some of the more
> confusing features of pgbench.
>
> It's straightforward to parse log files in this format to analyze what
> happened during the test at a higher level than was possible with the
> original format.  You can find some rough sample code to convert this
> latency format into CVS files and then into graphs at
> http://www.westnet.com/~gsmith/content/postgresql/pgbench.htm which I'll
> be expanding on once I get all my little patches sent in here.
2007-04-06 09:16:16 +00:00
Tatsuo Ishii 7e96269a82 Various pgbench enhancements. Patch contributed by ITAGAKI Takahiro.
Also tweak README.pgbench/README.pgbench_jis:
  Remove history after pgbench was added to PostgreSQL contrib module.
  Those info was not only redundant since it has already been in CVS
  log, but also incomplete.
--------------------------------------------------------------------------
The attached is a patch to optimize contrib/pgbench using new 8.3 features.

- Use DROP IF EXISTS to suppress errors for initial loadings.
- Use a combination of TRUNCATE and COPY to reduce WAL on creating
  the accounts table.

Also, there are some cosmetic changes.

- Change the output of -v option from "starting full vacuum..."
  to "starting vacuum accounts..." in reflection of the fact.
- Shape duplicated error checks into executeStatement().


There is a big performance win in "COPY with no WAL" feature.
Thanks for the efforts!
--------------------------------------------------------------------------
2007-04-06 08:49:44 +00:00
Tom Lane 37a609b27f Now that core functionality is depending on autoconf's AC_C_BIGENDIAN to be
right, there seems precious little reason to have a pile of hand-maintained
endianness definitions in src/include/port/*.h.  Get rid of those, and make
the couple of places that used them depend on WORDS_BIGENDIAN instead.
2007-04-06 05:36:51 +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 d44163953c Update XML error message text for missing libxml; update regression
output to match.
2007-04-05 13:53:24 +00:00
Magnus Hagander ab94cc92e4 Continue running contrib regression tests if one fails, and exit
with errorlevel 1 is >= 1 checks failed.
2007-04-05 12:31:36 +00:00
Magnus Hagander 4c40130296 Make sure list of tests is cleared out before getting the new list
of tests. Per Andrew Dunstan.
2007-04-05 12:10:40 +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
Andrew Dunstan 618aec735c improve test headings 2007-04-04 20:53:44 +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
Andrew Dunstan e687c4c3c7 Don't install files for xml2 when building without libxml. 2007-04-04 18:45:59 +00:00
Bruce Momjian 3b93fba823 Remove plpython casts C source code casts:
It removes last remaining casts inside struct definitions.
Such usage is bad practice, as it hides problems from compiler.

Reason for the cast is popular practice in some circles
to define functions as foo(MyObj *) instead of foo(PyObject *)
thus avoiding a local variable inside functions and make
direct calling easier.  As pl/python does not use such style,
the casts were unnecessary from the start.


Marko Kreen
2007-04-04 17:28:11 +00:00
Magnus Hagander 8f296ebea7 Don't install files for sslinfo when building without openssl.
Per Andrew Dunstan.
2007-04-04 16:34:43 +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
Tom Lane 9c9b619473 Remove the CheckpointStartLock in favor of having backends show whether they
are in their commit critical sections via flags in the ProcArray.  Checkpoint
can watch the ProcArray to determine when it's safe to proceed.  This is
a considerably better solution to the original problem of race conditions
between checkpoint and transaction commit: it speeds up commit, since there's
one less lock to fool with, and it prevents the problem of checkpoint being
delayed indefinitely when there's a constant flow of commits.  Heikki, with
some kibitzing from Tom.
2007-04-03 16:34:36 +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
Bruce Momjian bfe8b89e41 Allow pl/pythonu >= version 2.3 to return boolean, rather than 1/0.
Marko Kreen
2007-04-03 15:50:58 +00:00