Commit Graph

26665 Commits

Author SHA1 Message Date
Bruce Momjian 00b1827ae1 Update wording:
< * Allow functions to control the transaction state
> * Allow calling of a procedure outside a SELECT that can control the
>   transaction state
2008-04-11 19:50:40 +00:00
Bruce Momjian accbddc9bd Changed TODO wording:
< * Support procedures, which return no value
> * Allow functions to control the transaction state
2008-04-11 19:36:07 +00:00
Bruce Momjian 942550575f Add TODO:
> * Support procedures, which return no value
>
>   http://archives.postgresql.org/pgsql-hackers/2007-10/msg01375.php
2008-04-11 19:16:47 +00:00
Bruce Momjian a464dc07fe Update URLs for dead space map. 2008-04-11 19:14:57 +00:00
Bruce Momjian 3fa352da28 Fix main README typo.
Brendan Jurd
2008-04-11 16:09:33 +00:00
Tom Lane 4e82a95476 Replace "amgetmulti" AM functions with "amgetbitmap", in which the whole
indexscan always occurs in one call, and the results are returned in a
TIDBitmap instead of a limited-size array of TIDs.  This should improve
speed a little by reducing AM entry/exit overhead, and it is necessary
infrastructure if we are ever to support bitmap indexes.

In an only slightly related change, add support for TIDBitmaps to preserve
(somewhat lossily) the knowledge that particular TIDs reported by an index
need to have their quals rechecked when the heap is visited.  This facility
is not really used yet; we'll need to extend the forced-recheck feature to
plain indexscans before it's useful, and that hasn't been coded yet.
The intent is to use it to clean up 8.3's horrid @@@ kluge for text search
with weighted queries.  There might be other uses in future, but that one
alone is sufficient reason.

Heikki Linnakangas, with some adjustments by me.
2008-04-10 22:25:26 +00:00
Bruce Momjian f260edb144 Add TODO URLs moved from open items queue:
>   http://archives.postgresql.org/pgsql-hackers/2007-03/msg00265.php
>   http://archives.postgresql.org/pgsql-hackers/2007-03/msg01214.php
>   http://archives.postgresql.org/pgsql-patches/2007-05/msg00013.php
>   http://archives.postgresql.org/pgsql-hackers/2007-07/msg00741.php
>   http://archives.postgresql.org/pgsql-hackers/2007-08/msg00014.php
>   http://archives.postgresql.org/pgsql-hackers/2007-08/msg00487.php
> * Allow index scans to return matching index keys
>
>   http://archives.postgresql.org/pgsql-hackers/2007-03/msg01079.php
>
>   http://archives.postgresql.org/pgsql-patches/2007-10/msg00166.php
>   http://archives.postgresql.org/pgsql-patches/2008-01/msg00049.php
2008-04-10 18:58:15 +00:00
Magnus Hagander 47a19a495d Create wrapper pgwin32_safestat() and redefine stat() to it
on win32, because the stat() function in the runtime cannot
be trusted to always update the st_size field.

Per report and research by Sergey Zubkovsky.
2008-04-10 16:58:51 +00:00
Magnus Hagander a57a1e61a1 Make parameters in implementation have same const:ness as the ones in
the prototype. Silences msvc build warning.
2008-04-10 15:20:52 +00:00
Alvaro Herrera e863951a59 Remove mention of DBD::PgSPI, which is unmaintained and generally unnecessary. 2008-04-10 15:16:46 +00:00
Alvaro Herrera 66782364a1 Mention pg_backend_pid() in the system information section in addition
to the monitoring section.

Jim Nasby
2008-04-10 13:34:33 +00:00
Michael Meskes 02b2bc7907 PGTYPEStimestamp_sub should use the values and not the pointers to substract. 2008-04-10 10:43:35 +00:00
Bruce Momjian d44523638a Document that continuous archiving backup can be used for cases where
you can't get a simultaneous snapshot.
2008-04-09 02:52:04 +00:00
Bruce Momjian 2662e03b64 Update text FAQ. 2008-04-09 01:04:08 +00:00
Bruce Momjian 91509e6a87 Small wording improvements for source code READMEs. 2008-04-09 01:00:46 +00:00
Bruce Momjian 4d048b7b8b Revert README cleanups. 2008-04-09 00:59:24 +00:00
Bruce Momjian 8cb3ad9f52 Revert sentence removal from nickname in FAQ. 2008-04-09 00:55:30 +00:00
Bruce Momjian 20c5542c8b Remove mention of the Berkeley origins of the alias "Postgres" ---
seems unnecessary to mention in the FAQ, per discussion on IRC.
2008-04-09 00:44:07 +00:00
Tom Lane 635aaab278 Fix tsvector_update_trigger() to be domain-friendly: it needs to allow all
the columns it works with to be domains over the expected type, not just
exactly the expected type.  In passing, fix ts_stat() the same way.
Per report from Markus Wollny.
2008-04-08 18:20:29 +00:00
Peter Eisentraut db5f60cb18 On cygwin and win32, don't override the shlib name when building a module.
Should fix regression test failures on those platforms.
2008-04-08 09:50:29 +00:00
Magnus Hagander bb6f1eb9df Make integer_datetimes the default on msvc as well, to have the same
default as other platforms.
2008-04-08 07:50:41 +00:00
Peter Eisentraut 64e31b4f82 Always define stlib, since some platforms need it for building modules.
Should fix build failures on AIX.
2008-04-07 23:08:15 +00:00
Peter Eisentraut 46e76373ec Implement a few changes to how shared libraries and dynamically loadable
modules are built.  Foremost, it creates a solid distinction between these two
types of targets based on what had already been implemented and duplicated in
ad hoc ways before.  Specifically,

- Dynamically loadable modules no longer get a soname.  The numbers previously
set in the makefiles were dummy numbers anyway, and the presence of a soname
upset a few packaging tools, so it is nicer not to have one.

- The cumbersome detour taken on installation (build a libfoo.so.0.0.0 and
then override the rule to install foo.so instead) is removed.

- Lots of duplicated code simplified.
2008-04-07 14:15:58 +00:00
Bruce Momjian 8deafd6fdf Add to TODO:
>
> 	o Add ability to obfuscate function bodies
>
> 	  http://archives.postgresql.org/pgsql-patches/2008-01/msg00125.php
2008-04-07 02:14:14 +00:00
Bruce Momjian a84171b078 Add documentation clarification for IS [NOT] NULL and row-valued
expressions.
2008-04-07 00:51:27 +00:00
Tom Lane 347dd6a1cf Make plpgsql support FOR over a query specified by a cursor declaration,
for improved compatibility with Oracle.

Pavel Stehule, with some fixes by me.
2008-04-06 23:43:29 +00:00
Tom Lane 2604359251 Improve hash_any() to use word-wide fetches when hashing suitably aligned
data.  This makes for a significant speedup at the cost that the results
now vary between little-endian and big-endian machines; which forces us
to add explicit ORDER BYs in a couple of regression tests to preserve
machine-independent comparison results.  Also, force initdb by bumping
catversion, since the contents of hash indexes will change (at least on
big-endian machines).

Kenneth Marshall and Tom Lane, based on work from Bob Jenkins.  This commit
does not adopt Bob's new faster mix() algorithm, however, since we still need
to convince ourselves that that doesn't degrade the quality of the hashing.
2008-04-06 16:54:49 +00:00
Tom Lane d785b39fbf A small visit from the portability and localization police. 2008-04-05 03:40:15 +00:00
Bruce Momjian 470b2dc35d Make dblink_current_query() reference pg_catalog.current_query(), per Tom. 2008-04-05 02:44:42 +00:00
Bruce Momjian 67fe107554 Re-add dblink_current_query() for backward compatibility. 2008-04-05 02:26:14 +00:00
Tom Lane ceb5db69d4 Defend against JOINs having more than 32K columns altogether. We cannot
currently support this because we must be able to build Vars referencing
join columns, and varattno is only 16 bits wide.  Perhaps this should be
improved in future, but considering that it never came up before, I'm not
sure the problem is worth much effort.  Per bug #4070 from Marcello
Ceschia.

The problem seems largely academic in 8.0 and 7.4, because they have
(different) O(N^2) performance issues with such wide joins, but
back-patch all the way anyway.
2008-04-05 01:58:20 +00:00
Bruce Momjian 2a1cf97c22 Have pg_stop_backup() wait for all archive files to be sent, rather than
returing right away.  This guarantees that when pg_stop_backup()
returns, you have a valid backup.

Simon Riggs
2008-04-05 01:34:06 +00:00
Tom Lane a0fad9762a Re-implement division for numeric values using the traditional "schoolbook"
algorithm.  This is a good deal slower than our old roundoff-error-prone
code for long inputs, so we keep the old code for use in the transcendental
functions, where everything is approximate anyway.  Also create a
user-accessible function div(numeric, numeric) to provide access to the
exact result of trunc(x/y) --- since the regular numeric / operator will
round off its result, simply computing that expression in SQL doesn't
reliably give the desired answer.  This fixes bug #3387 and various related
corner cases, and improves the usefulness of PG for high-precision integer
arithmetic.
2008-04-04 18:45:36 +00:00
Bruce Momjian b6f0ad4b0e Have psql command 'help' suggest the use of \?, updated version.
Greg Sabino Mullane
2008-04-04 18:00:25 +00:00
Bruce Momjian dc565af454 Allow 'help' in psql to show \? help, for novice assistance.
Greg Sabino Mullane
2008-04-04 17:42:43 +00:00
Tom Lane a051ab0a80 Remove no-longer-used function assign_backslash_quote() 2008-04-04 17:25:23 +00:00
Bruce Momjian 4f22db501e Remove unneed #include now that current_query() has moved to the backend. 2008-04-04 17:02:56 +00:00
Bruce Momjian f96928fde9 Implement current_query(), that shows the currently executing query.
At the same time remove dblink/dblink_current_query() as it is no longer
necessary
*BACKWARD COMPATIBILITY ISSUE* for dblink

Tomas Doran
2008-04-04 16:57:21 +00:00
Magnus Hagander cfaf8b6b67 Oops, change should go in scan.l to survive a clean checkout and not just
a make clean...
2008-04-04 12:44:36 +00:00
Magnus Hagander 2288d646a6 Convert backslash_quote guc to use enum. 2008-04-04 11:47:19 +00:00
Magnus Hagander d672ea6ffa Turn xmlbinary and xmloption GUC variables into enumsTurn xmlbinary and
xmloption GUC variables into enums..
2008-04-04 08:33:15 +00:00
Tom Lane 55f6e5f689 Add a variant of the Levenshtein string-distance function that lets the user
specify the cost values to use, instead of always using 1's.
Volkan Yazici

In passing, remove fuzzystrmatch.h, which contained a bunch of stuff that had
no business being in a .h file; fold it into its only user, fuzzystrmatch.c.
2008-04-03 21:13:07 +00:00
Bruce Momjian bbe48195ab Add Wiki URLs for:
< * Allow encoding on a per-column basis optionally using the ICU library

>   http://wiki.postgresql.org/wiki/Todo:Collate
>   http://wiki.postgresql.org/wiki/Todo:ICU
2008-04-03 18:14:02 +00:00
Tom Lane b03271590e Remove heap_release_fetch, which is no longer used anywhere; this simplifies
heap_fetch a little.
2008-04-03 17:12:27 +00:00
Bruce Momjian d3bf8c7097 Add to TODO:
> * Improve how ANALYZE computes in-doubt tuples
>
>   http://archives.postgresql.org/pgsql-hackers/2007-11/msg00771.php
>
2008-04-03 16:37:07 +00:00
Tom Lane 51e1445f10 Teach ANALYZE to distinguish dead and in-doubt tuples, which it formerly
classed all as "dead"; also get it to count DEAD item pointers as dead rows,
instead of ignoring them as before.  Also improve matters so that tuples
previously inserted or deleted by our own transaction are handled nicely:
the stats collector's live-tuple and dead-tuple counts will end up correct
after our transaction ends, regardless of whether we end in commit or abort.

While there's more work that could be done to improve the counting of in-doubt
tuples in both VACUUM and ANALYZE, this commit is enough to alleviate some
known bad behaviors in 8.3; and the other stuff that's been discussed seems
like research projects anyway.

Pavan Deolasee and Tom Lane
2008-04-03 16:27:25 +00:00
Magnus Hagander f1e0d5a8ca Oops, add proper #ifdef for systems without support for syslog.
Per buildfarm member mastodon.
2008-04-03 13:25:02 +00:00
Peter Eisentraut ec0be6073a Remove -C from rsync call, because it omits directories named "core". 2008-04-03 09:52:03 +00:00
Magnus Hagander 409e386be0 Convert syslog_facility guc to enum type. 2008-04-03 09:21:15 +00:00
Bruce Momjian b011c5ff6a Add URLs for:
* Add SQL:2003 WITH RECURSIVE (hierarchical) queries to SELECT

>   http://archives.postgresql.org/pgsql-patches/2008-01/msg00105.php
>   http://archives.postgresql.org/pgsql-patches/2008-03/msg00327.php
2008-04-03 01:56:04 +00:00