Commit Graph

25360 Commits

Author SHA1 Message Date
Tom Lane
43b0c9182f Fix aboriginal mistake in lazy VACUUM's code for truncating away
no-longer-needed pages at the end of a table.  We thought we could throw away
pages containing HEAPTUPLE_DEAD tuples; but this is not so, because such
tuples very likely have index entries pointing at them, and we wouldn't have
removed the index entries.  The problem only emerges in a somewhat unlikely
race condition: the dead tuples have to have been inserted by a transaction
that later aborted, and this has to have happened between VACUUM's initial
scan of the page and then rechecking it for empty in count_nondeletable_pages.
But that timespan will include an index-cleaning pass, so it's not all that
hard to hit.  This seems to explain a couple of previously unsolved bug
reports.
2007-09-16 02:37:46 +00:00
Bruce Momjian
9a36a09f2e Update Japanese FAQ.
Jun Kuwamura
2007-09-15 00:58:19 +00:00
Bruce Momjian
c16ffbc677 Add:
>
> 	o Prevent long-lived temporary tables from causing frozen-xid
> 	  advancement starvation
>
> 	  http://archives.postgresql.org/pgsql-general/2007-06/msg01645.php
2007-09-14 19:02:46 +00:00
Bruce Momjian
dc8a8a0463 Add:
>
> * Make it possible to use RETURNING together with conditional DO INSTEAD
>   rules, such as for partitioning setups
>
>   http://archives.postgresql.org/pgsql-hackers/2007-09/msg00577.php
2007-09-14 18:50:48 +00:00
Bruce Momjian
18cad61e67 Fix markup. 2007-09-14 18:39:58 +00:00
Bruce Momjian
637878cd85 Update pronunciation FAQ item. 2007-09-14 18:38:44 +00:00
Bruce Momjian
23221f4eea Update to mention alternate project name is "Postgres". 2007-09-14 18:29:59 +00:00
Bruce Momjian
63490ddf1e Remove GIN interface section, which is now documented in SGML.
Heikki Linnakangas
2007-09-14 16:28:17 +00:00
Tom Lane
b2acd633e4 Fix markup that doesn't work in back branches. 2007-09-14 16:15:35 +00:00
Bruce Momjian
7f9de5407a Fix GSS API pointer checking.
Kris Jurka
2007-09-14 15:58:02 +00:00
Bruce Momjian
12afe7bc76 Document atan2() as y/x, rather than x/y, to conform to general usage.
Andrew Maclean
2007-09-14 15:53:48 +00:00
Tom Lane
9b2afa90bf Minor editorialization on release notes. 2007-09-14 15:50:51 +00:00
Bruce Momjian
4b836d8312 Add some links for escape strings.
Brendan Jurd

Fix markup in previous commit.
2007-09-14 14:54:25 +00:00
Bruce Momjian
f6a168e2c3 Add LDAP URL documentation.
Albe Laurenz
2007-09-14 14:31:22 +00:00
Bruce Momjian
13e26073bd Update documentation to mention that autovacuum also does analyze so we
don't need to recommend nightly analyzes anymore unless autovacuum is off.
2007-09-14 13:43:03 +00:00
Bruce Momjian
fc79628641 Clarify tar documentation about return error codes.
Backpatch to 8.2.X.
2007-09-14 13:26:22 +00:00
Bruce Momjian
ae36e0d589 Update tsearch include location in example.
Oleg.
2007-09-14 13:21:30 +00:00
Bruce Momjian
17aae41afd Add tsearch tab completion support:
* adds a few missing words to some commands (like adding GIN as a valid
index type or OWNED BY for ALTER SEQUENCE,...)

* support for ALTER TABLE foo ENABLE/DISABLE REPLICA TRIGGER/RULE

* autocomplete CREATE DATABASE foo TEMPLATE (mostly done to prevent
conflicts with the TEMPLATE keyword for text search)

* support for ALTER/CREATE/DROP TEXT SEARCH as well as COMMENT ON TEXT
SEARCH and the corresponding psql backslash commands.
This proved a little more difficult than expected due to the fact that
words_after_create[] is used for two purposes - one is to provide a list
of words that follow immediatly after CREATE (or DROP) and the other
purpose is to use it for autocompleting anywhere in the statement if the
word in that struct is found with a query.
Since TEXT SEARCH CONFIGURATION|DICTIONARY|TEMPLATE|PARSER results in 3
words instead of one (as all the other words in that list are) I added a
flag to the struct to tell create_command_generator() to skip that entry
 for autocompleting immediatly after CREATE which feels like a dirty
hack (but that holds true for a lot of code in tab-complete.c).


Stefan Kaltenbrunner
2007-09-14 04:25:24 +00:00
Bruce Momjian
c0f2b109bc This is small patch fixes a spi example (PG_MODULE_MAGIC is required as
of PostgreSQL 8.2) and provides a link to compiling and linking section.

Euler Taveira de Oliveira
2007-09-14 04:18:27 +00:00
Bruce Momjian
edc18429bd Update GNU tar error code documentation.
Backpatch to 8.2.X.
2007-09-14 04:15:50 +00:00
Bruce Momjian
6c9e4d7e08 Mentino that PAM doesn't work for Unix system authentication because of
the problems non-root reading /etc/shadow.
2007-09-14 03:53:54 +00:00
Tom Lane
2d6cb170d4 Remove ill-considered (not to mention undocumented) attempt to make
contrib/intarray's GIN opclass override the built-in default.  Per bug #3048
and other complaints.
2007-09-14 03:25:31 +00:00
Bruce Momjian
aa33bdd783 Update documented error text.
Fujii Masao
2007-09-14 02:43:18 +00:00
Bruce Momjian
dfe2e3f7a5 Clarify age() 'months' calculation documentation. 2007-09-14 00:52:45 +00:00
Bruce Momjian
f307fe4c9b Update documentation to emphasize autovacuum rather than
administrator-scheduled vacuums.
2007-09-13 23:43:35 +00:00
Teodor Sigaev
3e805fdcf7 Fix typo in typecasting.
patch from  ITAGAKI Takahiro <itagaki.takahiro@oss.ntt.co.jp>
2007-09-13 06:54:35 +00:00
Bruce Momjian
e8e2bd799f Update Japanese FAQ, backpatch.
Jun Kuwamura
2007-09-13 03:34:11 +00:00
Alvaro Herrera
945ba50dc3 Fix a memory leak in the autovacuum launcher code. Noted by Darcy Buskermolen,
who reported it privately to me.
2007-09-12 22:14:59 +00:00
Tom Lane
6889303531 Redefine the lp_flags field of item pointers as having four states, rather
than two independent bits (one of which was never used in heap pages anyway,
or at least hadn't been in a very long time).  This gives us flexibility to
add the HOT notions of redirected and dead item pointers without requiring
anything so klugy as magic values of lp_off and lp_len.  The state values
are chosen so that for the states currently in use (pre-HOT) there is no
change in the physical representation.
2007-09-12 22:10:26 +00:00
Andrew Dunstan
eb0a7735ba Perform post-escaping encoding validity checks on SQL literals and COPY input
so that invalidly encoded data cannot enter the database by these means.
2007-09-12 20:49:27 +00:00
Bruce Momjian
22b613ebd9 Whitespace improvement. 2007-09-12 19:27:16 +00:00
Tom Lane
e435bddb9c Revert ill-starred change to ICC anti-aliasing switches. Per
Jeremy Drake.
2007-09-12 14:28:55 +00:00
Magnus Hagander
6ee3b2dfe4 Install dictionary sample files.
Per buildfarm and Teodor.
2007-09-12 13:58:23 +00:00
Bruce Momjian
1e0eeab155 Document an efficient way to create documentation for back branches. 2007-09-12 03:21:20 +00:00
Bruce Momjian
8049626ee2 Update Japanese FAQ to current release number. 2007-09-12 03:11:42 +00:00
Alvaro Herrera
9588e1bd65 Add a CHECK_FOR_INTERRUPTS call in the site where the vacuum delay point
was removed.
2007-09-12 02:05:48 +00:00
Tom Lane
861f7357b9 Give ICC its preferred, documented form of the no-strict-aliasing
switch, viz '-fno-alias'.  Since we have a separate code path here
anyway, it's just as easy to cooperate.
2007-09-11 19:50:25 +00:00
Tom Lane
16f8a9e4e1 Sync timezone data with 2007g zic release. 2007-09-11 17:43:27 +00:00
Bruce Momjian
0735264aab Upcoming most recent release will be 8.2.5. 2007-09-11 17:34:12 +00:00
Bruce Momjian
da7192d1d4 Stamp 2007-09-11 17:19:49 +00:00
Tom Lane
f181f9e1e4 Make sure that open hash table scans are cleaned up when bgwriter tries to
recover from elog(ERROR).  Problem was created by introduction of hash seq
search tracking awhile back, and affects all branches that have bgwriter;
in HEAD the disease has snuck into autovacuum and walwriter too.  (Not sure
that the latter two use hash_seq_search at the moment, but surely they might
someday.)  Per report from Sergey Koposov.
2007-09-11 17:15:33 +00:00
Tom Lane
5cf785a4de Include hash table name in all the internal-error elog messages in
dynahash.c.  Sergey Koposov's current open problem shows the possible
usefulness of this, and it doesn't add much code.
2007-09-11 16:17:46 +00:00
Teodor Sigaev
476045a21b Remove QueryOperand->istrue flag, it was used only in cover ranking
(ts_rank_cd). Use palloc'ed array in ranking instead of flag.
2007-09-11 16:01:40 +00:00
Teodor Sigaev
13553cbbff Fix header's size of structs defines in ispell.
Backpatch is needed for contrib version.
2007-09-11 12:57:05 +00:00
Teodor Sigaev
64def09592 Add regression tests for ispell, synonym and thesaurus dictionaries.
Rename synonym.syn.sample and thesaurs.ths.sample to
synonym_sample.syn and thesaurs_sample.ths accordingly to be able to use they
in regression test.

Ispell dictionary uses synthetic simple dictionary files.
2007-09-11 11:54:42 +00:00
Teodor Sigaev
c4b2b2960a Fix ts_debug function to prevent unneeded calls of ts_lexize().
It will be mush better to reimplement ts_debug in C (instead of SQL as now),
but it's planned for the future.
2007-09-11 08:51:22 +00:00
Teodor Sigaev
57cafe7982 Refactor from Heikki Linnakangas <heikki@enterprisedb.com>:
* Defined new struct WordEntryPosVector that holds a uint16 length and a
variable size array of WordEntries. This replaces the previous
convention of a variable size uint16 array, with the first element
implying the length. WordEntryPosVector has the same layout in memory,
but is more readable in source code. The POSDATAPTR and POSDATALEN
macros are still used, though it would now be more readable to access
the fields in WordEntryPosVector directly.

* Removed needfree field from DocRepresentation. It was always set to false.

* Miscellaneous other commenting and refactoring
2007-09-11 08:46:29 +00:00
Tom Lane
ef4d38c86c Rename recently-added pg_stat_activity column from txn_start to xact_start,
for consistency with other column names such as in pg_stat_database.
2007-09-11 03:28:05 +00:00
Tom Lane
82a47982f3 Arrange for SET LOCAL's effects to persist until the end of the current top
transaction, unless rolled back or overridden by a SET clause for the same
variable attached to a surrounding function call.  Per discussion, these
seem the best semantics.  Note that this is an INCOMPATIBLE CHANGE: in 8.0
through 8.2, SET LOCAL's effects disappeared at subtransaction commit
(leading to behavior that made little sense at the SQL level).

I took advantage of the opportunity to rewrite and simplify the GUC variable
save/restore logic a little bit.  The old idea of a "tentative" value is gone;
it was a hangover from before we had a stack.  Also, we no longer need a stack
entry for every nesting level, but only for those in which a variable's value
actually changed.
2007-09-11 00:06:42 +00:00
Alvaro Herrera
b366562e43 Make CLUSTER and REINDEX silently skip remote temp tables in their
database-wide editions.

Per report from bitsandbytes88 <at> hotmail.com and subsequent discussion.
2007-09-10 21:59:37 +00:00