Tom Lane [Sun, 14 Feb 1999 22:24:25 +0000 (22:24 +0000)]
Fix optimizer coredump with unary-operator WHERE clauses.
A test case is:
create table linetab (x line);
select * from linetab where ?| x;
which coredumps in 6.4.2 and current sources.
Change #if FALSE to #if NOT_USED to avoid port problems.
Fix problem with date_part() for timespan (had an offset of one)
when given decade, century, and millenium as arguments.
Reported by Ricardo J.C.Coelho.
Add routines to convert between int8 and text/varchar types.
Change #if FALSE to #if NOT_USED to avoid port problems.
Fix up pg_indent weirdness with function argument declarations.
Describe the date/time parsing rules.
Include specific information on the supported time zones.
It's a really big table, so maybe it should go into an appendix instead.
Substitute great info from Stefan Simkovics' Master's Thesis.
Still need to add some acknowledgements at the top of the doc;
already have full info in the bibliography but since the original is
being spread across the existing docs we should also mention things
locally.
Jan Wieck [Mon, 8 Feb 1999 01:39:46 +0000 (01:39 +0000)]
Revert some changes from the INTERSECT/EXPECT patch that broke
rule system semantics by having Var nodes referenced across multiple
parsetrees when rules split them.
Added more tests to the rules regression test.
The code in question resulted from v6.3 based development and was
a little careless applied to the v6.5 source tree.
Jan Wieck [Sun, 7 Feb 1999 16:17:14 +0000 (16:17 +0000)]
Changed ExecConstraints() and ExecRelCheck() to cache the constraints
qualification expression trees in the execution state. Prevents from
memory exhaustion on INSERT, UPDATE or COPY to tables that have CHECK
constraints. Speedup against the variant using freeObject() is more than
factor 2.
Tom Lane [Sun, 7 Feb 1999 00:52:12 +0000 (00:52 +0000)]
Add equality checking for T_Query so that we don't get
complaints in UNION regress test. Probably still need some more node
types to be handled here, but I'm done for the day...
Bruce Momjian [Wed, 3 Feb 1999 20:19:10 +0000 (20:19 +0000)]
The libpq function PQfnumber does not handle case-insensitive
comparisons correctly. The psql monitor converts all table and field
names to lower case. If the PQfnumber function is called with a mixed
case name, it will always return -1.
Tom Lane [Wed, 3 Feb 1999 00:18:53 +0000 (00:18 +0000)]
Modify int8 to not depend on sscanf(), and fix configure's test
for int8 support. configure now checks only snprintf() for int8 support,
not sprintf and sscanf as it used to. The reason for doing this is that
if we are supplying our own snprintf code (which does handle long long int),
we now only need working long long support in the compiler not in the
platform's C library. I have verified that int8 now passes regression test
on HPUX 9, and I think it should work on SunOS 4.1.* and other older
platforms if gcc is used.
Bruce Momjian [Tue, 2 Feb 1999 19:20:54 +0000 (19:20 +0000)]
OK I found it,
I search in the planner for the '\xFF' appending.
Finally I found in MakeIndexable() in gram.y
Attach a patch which removes the "<=" test in USE_LOCALE,
might make some queries a bit slower for us "locale-heads",
BUT correct result is more important.
Tom Lane [Mon, 1 Feb 1999 04:20:50 +0000 (04:20 +0000)]
Tighten coding in samekeys(). Pretty braindead change,
but it saves almost 10% of the runtime in Charles Hornberger's optimizer
example, so what the heck ...
Marc G. Fournier [Sun, 31 Jan 1999 19:56:28 +0000 (19:56 +0000)]
From: Michael Meskes <Michael.Meskes@usa.net>
+
+ Wed Jan 27 12:42:22 CET 1999
+
+ - Fixed bug that caused ecpg to lose 'goto' information.
+ - Set ecpg version to 2.4.7
+
+ Fri Jan 29 18:03:52 CET 1999
+
+ - Fixed bug that caused 'enum' to be rejected in pure C code.
+ - Fixed bug that caused function names to be translated to lower case.
+ - Set ecpg version to 2.4.8
+
Marc G. Fournier [Sun, 31 Jan 1999 05:04:25 +0000 (05:04 +0000)]
From: D'Arcy J.M. Cain <darcy@druid.net>
The following patch does two things.
- Clarifies what the effect of allowing users to add new users (Thet
become super-users.)
- Makes the default database for the new user if they are not allowed
to and the user agrees to create it.
Vadim B. Mikheev [Fri, 29 Jan 1999 11:56:01 +0000 (11:56 +0000)]
Hope that execMain.c good merged.
Fix for BEFORE ROW UPDATE triggers: result tuple may be different
(due to concurrent update) from one initially produced by top level plan.