Commit Graph

27846 Commits

Author SHA1 Message Date
Bruce Momjian
1327a0bc06 Remove empty #ifdef block. 2009-01-14 21:18:30 +00:00
Peter Eisentraut
8ae6b4c49f Make the columns is_insertable_into and is_updatable behave uniformly
correctly.  They are supposed to examine which kinds of rules are present,
which they did in some of the info schema views but not in others.
2009-01-14 21:12:09 +00:00
Peter Eisentraut
8b583ba2d7 Make error messages match backend style. 2009-01-14 20:01:52 +00:00
Bruce Momjian
eac951d510 Check nsl library for gethostbyname_r() on all platforms (HP-UX uses it
too).
2009-01-14 18:10:21 +00:00
Bruce Momjian
62f09e92be Renable threading build for Solaris 2.5, per report from Andrew Chernow 2009-01-14 16:39:58 +00:00
Peter Eisentraut
08585dcf13 misc.o depends on pg_config_paths.h when --enable-nls is used. 2009-01-14 14:54:35 +00:00
Heikki Linnakangas
f2248478c1 Remove broken Assertions that failed if a statement executed in PL/pgSQL is
rewritten into another kind of statement, for example if an INSERT is
rewritten into an UPDATE.

Back-patch to 8.3 and 8.2. For HEAD, Tom suggested inventing a new
SPI_OK_REWRITTEN return code, but that's not a backportable solution. I'll
do that as a separate patch, this patch will do as a stopgap measure for HEAD
too in the meanwhile.
2009-01-14 09:53:51 +00:00
Peter Eisentraut
03b4fc7240 Remove useless (and insecure) temp file handling. 2009-01-13 19:32:29 +00:00
Magnus Hagander
3a819b0780 Throw an error when using -C and -1 at the same time in pg_restore.
It's not possible to do CREATE DATABASE inside a transaction, so previously
we just got a server error instead.

Backpatch to 8.2, which is where the -1 feature appeared.
2009-01-13 11:44:56 +00:00
Magnus Hagander
64580224f9 Remove special-handling of usernames with Kerberos authentication. We will
now always use the system username as the default, and not try to pick it up
from the kerberos ticket.

This fixes the spurious error messages that show up on kerberos-enabled builds
when not actually using kerberos, and puts it in line with how other authentication
methods work.
2009-01-13 10:43:21 +00:00
Bruce Momjian
afe8ac2078 Document how pglesslog can be used to reduce the storage requirements of PITR. 2009-01-13 00:54:11 +00:00
Alvaro Herrera
8ebe1e356c Simplify the writing of amoptions routines by introducing a convenience
fillRelOptions routine that stores the parsed values in the struct using a
table-based approach.  Per Tom suggestion.  Also remove the "continue"
in HANDLE_*_RELOPTION macros, which were useless and in spirit they were
assuming too much of how the macros were going to be used.  (Note that these
macros are now unused, but the intention is to introduce some usage in a
future autovacuum patch, which is why they weren't completely removed.)

Also, do not call the string validation routine when not validating.  It seems
less error-prone this way, per commentary on the amoptions SGML docs.
2009-01-12 21:02:15 +00:00
Tom Lane
8a4505013d Tweak order of operations in BitmapHeapNext() to avoid the case of prefetching
the same page we are nanoseconds away from reading for real.  There should be
something left to do on the current page before we consider issuing a prefetch.
2009-01-12 16:00:41 +00:00
Peter Eisentraut
405728f669 Add some minimal documentation that the SQL standard requires parentheses
after ONLY.
2009-01-12 14:06:20 +00:00
Peter Eisentraut
bf21cdb7e7 Use qualified_name instead of relation_expr for commands that have no
business with inheritance recursion: ALTER INDEX, ALTER SEQUENCE, ALTER
TRIGGER, ALTER VIEW.  They would just silently ignore the ONLY.

ALTER TABLE has mixed behavior and cannot be dealt with this way because
of the resulting shift/reduce conflicts.
2009-01-12 09:38:30 +00:00
Peter Eisentraut
ca8100f9eb Add ONLY support to LOCK and TRUNCATE. By default, these commands are now
recursive.

=> Note this incompatibility in the release notes.
2009-01-12 08:54:27 +00:00
Tom Lane
b7b8f0b609 Implement prefetching via posix_fadvise() for bitmap index scans. A new
GUC variable effective_io_concurrency controls how many concurrent block
prefetch requests will be issued.

(The best way to handle this for plain index scans is still under debate,
so that part is not applied yet --- tgl)

Greg Stark
2009-01-12 05:10:45 +00:00
Tom Lane
1a37056a74 Re-enable the old code in xlog.c that tried to use posix_fadvise(), so that
we can get some buildfarm feedback about whether that function is still
problematic.  (Note that the planned async-preread patch will not really
prove anything one way or the other in buildfarm testing, since it will
be inactive with default GUC settings.)
2009-01-11 18:02:17 +00:00
Peter Eisentraut
a5d67a0a05 Make tests pass with or without locale. 2009-01-11 09:41:45 +00:00
Tom Lane
43a57cf365 Revise the TIDBitmap API to support multiple concurrent iterations over a
bitmap.  This is extracted from Greg Stark's posix_fadvise patch; it seems
worth committing separately, since it's potentially useful independently of
posix_fadvise.
2009-01-10 21:08:36 +00:00
Bruce Momjian
3b34e98242 Modify libpq environment variable documentation to point to the relevant
connection options documentation section, per idea from Magnus.
2009-01-10 20:14:30 +00:00
Bruce Momjian
2f90d9ff04 Update link guidelines. 2009-01-10 16:58:39 +00:00
Bruce Momjian
feba07f838 Add guidelines section. 2009-01-10 16:03:15 +00:00
Bruce Momjian
908e2c7fd1 Add file to explain SGML linking options, for use by SGML document
writers.
2009-01-10 04:40:08 +00:00
Tom Lane
ccb51c0842 A further attempt at clarifying the \distv business. 2009-01-09 19:27:14 +00:00
Tom Lane
d25ada4d78 Fix libpq so that it reports PGRES_EMPTY_QUERY not PGRES_COMMAND_OK when an
empty query string is passed to PQexecParams and related functions.  Its
handling of the NoData response to Describe messages was subtly incorrect.
Per my report of yesterday.

Although I consider this a bug, it's a behavioral change that might affect
applications, so not back-patched.

In passing fix a second issue in the same code: it didn't react well to an
out-of-memory failure while trying to make the PGresult object.
2009-01-09 18:50:03 +00:00
Tom Lane
d04db37072 Arrange for function default arguments to be processed properly in expressions
that are set up for execution with ExecPrepareExpr rather than going through
the full planner process.  By introducing an explicit notion of "expression
planning", this patch also lays a bit of groundwork for maybe someday
allowing sub-selects in standalone expressions.
2009-01-09 15:46:11 +00:00
Bruce Momjian
d3706cb6d2 Remove tabs from SGML docs. 2009-01-09 15:02:22 +00:00
Peter Eisentraut
8ebf1a3d5c Remove fairly useless mixed-case identifier test that causes locale
dependencies.
2009-01-09 14:50:00 +00:00
Magnus Hagander
8d320b6356 Code review of strftime patch, per comments from Tom:
* Use correct buffer size MAX_L10N_DATA
* Use strlcpy instead of StrNCpy
2009-01-09 14:07:00 +00:00
Peter Eisentraut
f8e5b79368 Change chapter titles thus:
III. Server Administration
15. Installation from Source Code
16. Installation from Source Code on Windows
17. Server Setup and Operation

to give users of binary installations a better idea where to start reading.

suggested by Nikolay Samokhvalov
2009-01-09 13:37:18 +00:00
Magnus Hagander
0709c0017f Fix strftime usage on Win32 when trying to fetch the locale-aware
parts of a time string so it properly handles different encodings.

Original patch by Hiroshi Saito, heavily reworked by me and
ITAGAKI Takahiro.
2009-01-09 13:03:55 +00:00
Peter Eisentraut
58a81baa3c More portable use of "find". 2009-01-09 12:37:37 +00:00
Peter Eisentraut
26dc14b6b2 Rewrite update-po target, so that it works less like a shell script and more
like a makefile with real dependencies.

Instead of overwriting the old po file, write the new one to .po.new.  This is
less annoying and integrates better with the NLS web site.

Also, we can now merge languages that don't have a po file yet, by merging
against all other po files of that language, to pick up recurring translations
automatically.  This previously only worked when a po file already existed.
2009-01-09 10:54:08 +00:00
Magnus Hagander
1b4e729eaa Make krb_realm and krb_server_hostname be pg_hba options only, and remove
their GUCs.

In passing, noted that the pg_hba options for krb5 authentication weren't
listed at all - so add this.
2009-01-09 10:13:19 +00:00
Andrew Dunstan
32e1265dd9 Document values for pg_constraint confupdtype, confdeltype and confmatchtype columns. 2009-01-09 01:53:10 +00:00
Bruce Momjian
32c34aab1d Update release notes for 8.3.5, 8.2.11, and 8.1.15 to mention the need
to reindex GiST indexes:

	If you were running a previous 8.X.X release, REINDEX all GiST
	indexes after the upgrade.
2009-01-09 01:47:02 +00:00
Bruce Momjian
9bdf216f9c Fix memory leak for file name if expect file name contains a dot, per
report from dvice_null@yahoo.com.
2009-01-08 20:09:06 +00:00
Alvaro Herrera
b813c8daca A couple further reloptions improvements, per KaiGai Kohei: add a validation
function to the string type and add a couple of macros for string handling.

In passing, fix an off-by-one bug of mine.
2009-01-08 19:34:41 +00:00
Bruce Momjian
eb0d7e243a Document that txid_visible_in_snapshot() cannot be used with
subtransaction ids.
2009-01-08 14:46:50 +00:00
Tom Lane
2e9650cbcf Defend against null input in analyze_requires_snapshot(), per report
from Rushabh Lathia.
2009-01-08 13:42:33 +00:00
Peter Eisentraut
3467f02957 Add note that not all SQL commands support ONLY in the same way. 2009-01-08 12:47:58 +00:00
Bruce Momjian
af96c82019 Document current_query() as being the _client_ query. 2009-01-08 00:44:18 +00:00
Bruce Momjian
1c175cd76a Revert current_query() change to use debug_query_string again; add comment. 2009-01-08 00:13:22 +00:00
Bruce Momjian
ae3c075221 Add comment about why BETWEEN uses operator strings and not opclasses,
with URL pointing to email discussion.
2009-01-07 22:54:45 +00:00
Tom Lane
445ce15702 Create a third option named "partition" for constraint_exclusion, and make it
the default.  This setting enables constraint exclusion checks only for
appendrel members (ie, inheritance children and UNION ALL arms), which are
the cases in which constraint exclusion is most likely to be useful.  Avoiding
the overhead for simple queries that are unlikely to benefit should bring
the cost down to the point where this is a reasonable default setting.
Per today's discussion.
2009-01-07 22:40:49 +00:00
Bruce Momjian
12dcf7bb75 Have current_query() use ActivePortal->sourceText rather than
debug_query_string;  this allows current_query() to be more accurate;
docs updated;  per idea from Tom
2009-01-07 21:48:15 +00:00
Tom Lane
deac9488d3 Insert conditional SPI_push/SPI_pop calls into InputFunctionCall,
OutputFunctionCall, and friends.  This allows SPI-using functions to invoke
datatype I/O without concern for the possibility that a SPI-using function
will be called (which could be either the I/O function itself, or a function
used in a domain check constraint).  It's a tad ugly, but not nearly as ugly
as what'd be needed to make this work via retail insertion of push/pop
operations in all the PLs.

This reverts my patch of 2007-01-30 that inserted some retail SPI_push/pop
calls into plpgsql; that approach only fixed plpgsql, and not any other PLs.
But the other PLs have the issue too, as illustrated by a recent gripe from
Christian Schröder.

Back-patch to 8.2, which is as far back as this solution will work.  It's
also as far back as we need to worry about the domain-constraint case, since
earlier versions did not attempt to check domain constraints within datatype
input.  I'm not aware of any old I/O functions that use SPI themselves, so
this should be sufficient for a back-patch.
2009-01-07 20:38:56 +00:00
Bruce Momjian
6b88393058 Add comment that it is difficult to access the more accurate
'query_string' from current_query().
2009-01-07 19:51:21 +00:00
Bruce Momjian
8faffe6a52 Update comment associated with 'debug_query_string'. 2009-01-07 19:35:43 +00:00