Tom Lane [Tue, 27 Sep 2005 17:43:31 +0000 (17:43 +0000)]
Some marginal tweaks to make 'make installcheck' mostly work when
building contrib with USE_PGXS. To make it work all the way, the
pg_regress script would need to be included in the installation tree.
Tom Lane [Tue, 27 Sep 2005 17:39:35 +0000 (17:39 +0000)]
Fix problems with PGXS builds against an installation tree that was
relocated after installation. We can't trust the installation paths
inserted into Makefile.global by configure, so instead we must get the
paths from pg_config. This requires extending pg_config to support all
the separately-configurable path names, but that was on TODO anyway.
Tom Lane [Tue, 27 Sep 2005 04:53:23 +0000 (04:53 +0000)]
Fix our version of strdup() to adhere to the standard semantics for
out-of-memory --- that is, return NULL rather than dumping core.
Noted by Qingqing Zhou.
Bruce Momjian [Mon, 26 Sep 2005 02:44:28 +0000 (02:44 +0000)]
Add:
> * Allow protocol-level BIND parameter values to be logged
> * Allow protocol-level EXECUTE that is actually a fetch to appear
> in the logs as a fetch rather than another execute
Tom Lane [Sun, 25 Sep 2005 19:37:35 +0000 (19:37 +0000)]
The original patch to avoid building a hash join's hashtable when the
outer relation is empty did not work, per test case from Patrick Welche.
It tried to use nodeHashjoin.c's high-level mechanisms for fetching an
outer-relation tuple, but that code expected the hash table to be filled
already. As patched, the code failed in corner cases such as having no
outer-relation tuples for the first hash batch. Revert and rewrite.
Tom Lane [Sat, 24 Sep 2005 15:34:07 +0000 (15:34 +0000)]
In a machine where INT64_IS_BUSTED, we can only support 32-bit values
for int8 and related types. However we might be talking to a client
that has working int64; so pq_getmsgint64 really needs to check the
incoming value and throw an overflow error if we can't represent it
accurately.
Bruce Momjian [Fri, 23 Sep 2005 20:32:49 +0000 (20:32 +0000)]
Add:
>
> o Display IN, INOUT, and OUT parameters in \df+
>
> It probably requires psql to output newlines in the proper
> column, which is already on the TODO list.
Tom Lane [Thu, 22 Sep 2005 23:25:07 +0000 (23:25 +0000)]
Fix bug introduced into indexable_outerrelids() by an ill-considered
"optimization". When we find a potentially useful joinclause, we
have to add all its other required_relids to the result, not only the
other clause_relids. They are different in the case of a joinclause
whose applicability has to be postponed due to outer join. We have
to include the extra rels because otherwise, after best_inner_indexscan
masks the join rels with index_outer_relids, it will always fail to
find the joinclause as applicable. Per report from Husam Tomeh.
Tom Lane [Thu, 22 Sep 2005 17:32:58 +0000 (17:32 +0000)]
Take exclusive buffer lock in scan_heap() to eliminate some corner cases
in which invalid page data could be transiently written to disk by
concurrent bgwriter activity. There doesn't seem any risk of loss of
actual user data, but an empty page could possibly be left corrupt if a
crash occurs before the correct data gets written out. Pointed out by
Alvaro Herrera.
Tom Lane [Wed, 21 Sep 2005 20:33:34 +0000 (20:33 +0000)]
Fix postgresql.conf lexer to accept doubled single quotes in literal
strings. This is consistent with SQL conventions, and since Bruce
already changed initdb in a way that assumed it worked like this, seems
we'd better make it work like this.
Bruce Momjian [Tue, 20 Sep 2005 20:51:30 +0000 (20:51 +0000)]
Merge items:
< This would be beneficial when there are few distinct values.
> This would be beneficial when there are few distinct values. This is
> already used by GROUP BY. 946d946
< * Allow DISTINCT to use hashing like GROUP BY
Bruce Momjian [Fri, 16 Sep 2005 16:46:09 +0000 (16:46 +0000)]
Update wording:
< 390d388
< 453c451
< removed or have its heap and index files truncated. One
> be removed or have its heap and index files truncated. One
< * Use a phantom command counter for nested subtransactions to reduce
< per-tuple overhead
Neil Conway [Fri, 16 Sep 2005 05:35:41 +0000 (05:35 +0000)]
Rename pg_complete_relation_size() to pg_total_relation_size(), for the
sake of brevity and clarity.
Make pg_reload_conf(), pg_rotate_logfile(), and pg_cancel_backend()
return a boolean rather than an integer to indicate success or failure.
Along the way, make some minor cleanups to dbsize.c -- in particular,
use elog() rather than ereport() for "shouldn't happen" error
conditions, and remove some of the more flagrant violations of the
Postgres indentation conventions.
Tom Lane [Fri, 16 Sep 2005 00:30:05 +0000 (00:30 +0000)]
Force the size and alignment of LWLock array entries to be either 16 or 32
bytes. This shouldn't make any difference on x86 machines, where the size
happened to be 16 bytes anyway, but on 64-bit machines and machines with
slock_t int or wider, it will speed array indexing and hopefully reduce
SMP cache contention effects. Per recent experimentation.