Bruce Momjian [Tue, 22 Sep 1998 16:52:59 +0000 (16:52 +0000)]
Here are some patches to fix up the regression tests so that the union
test passes. Interestingly, the fix involves no changes or special
cases in the union test and actually removes a special case for the
numerology test. Thus, following the strategy outlined below is a
definite improvement over the previous situation.
Marc G. Fournier [Mon, 21 Sep 1998 05:52:55 +0000 (05:52 +0000)]
From: Michael Meskes <meskes@usa.net>
+ Mon Aug 31 09:40:04 CEST 1998
+
+ - Minor patch to Makefile
+ - Put pgc.l in sync with scan.l
+
+ Tue Sep 1 11:31:05 CEST 1998
+
+ - Fixed another bug in preproc.y
+
+ Thu Sep 3 12:21:16 CEST 1998
+
+ - Sync preproc.y with gram.y
+
+ Mon Sep 14 09:21:02 CEST 1998
+
+ - Sync preproc.y with gram.y yet again
+
+ Thu Sep 17 08:55:33 CEST 1998
+
+ - Synced preproc.y and gram.y one more time
+
+ Thu Sep 17 19:23:24 CEST 1998
+
+ - Added missing ´;´ in preproc.y
+ - Set version to 2.4.2
Bruce Momjian [Mon, 21 Sep 1998 01:02:04 +0000 (01:02 +0000)]
This patch covers several to-do items that I had for libpgtcl:
* It works under both Tcl 7.6 and Tcl 8.0 now. (The code claims to
work under Tcl 7.5 as well, but I have no way to test that ---
if anyone still cares, please check it with 7.5.)
* pg_listen suppresses extra LISTEN commands and correctly sends an
UNLISTEN when the last listen request for a relation is cancelled.
(Note this means it will not work with pre-6.4 backends, but that
was true already because it depends on the current libpq, which
only speaks protocol 2.0.)
* Added -error option to pg_result so that there's some way to find
out what you did wrong ;-)
* Miscellaneous cleanups of code comments and overenthusiastic #includes.
BTW, I bumped the package version number from 1.2 to 1.3. Is this
premature? Does someone run around and do that routinely before
each pgsql release?
Bruce Momjian [Sun, 20 Sep 1998 03:18:43 +0000 (03:18 +0000)]
I also noticed that pg_dump contains a copy of the same
prompt_for_password code that psql does. We fixed psql a month or
two back to permit usernames and passwords longer than 8 characters.
I propagated the same fix into pg_dump.
Consolidate Jan's rules test into one file.
Remove dependency on a specific Postgres user name in the results
(Check result against CURRENT_USER with a boolean instead).
Support specifying PRIMARY KEY for the SERIAL type.
Change DEFAULT NULL to send back a NULL pointer
rather than a string "NULL". This seems to work, where sending
the string led to type conversion problems (and probably the wrong
thing anyway).
Support specifying PRIMARY KEY for the SERIAL type.
Check for a constraint if is_sequence is set and omit making
a UNIQUE index if so, since the primary key will cover that for us.
Use oper_select_candidate() for unary operators
rather than func_select_candidate().
Fix oper_select_candidate() to work with a single operator argument.
Repair left operator checking for null return from candidate list.
Marc G. Fournier [Mon, 14 Sep 1998 04:17:40 +0000 (04:17 +0000)]
Change order of install...installing interfaces is the last to be done,
as, if not installing as root (which nobody *should* be doing, of course),
the perl install fails, which means that both bin and man directories
are not installed :(
This way, only thing that doesn't get installed is perl interface...
Bruce Momjian [Sat, 12 Sep 1998 16:04:35 +0000 (16:04 +0000)]
The pg_atoi() function uses strtol() to convert the string to numbers. Some
implementations of strtol() treat empty strings ("") as invalid arguments
while others convert this (erroneously, IHMO) to zero (0). Assuming that the
expected behaviour of pg_atoi() is to return 0 if it is passed an empty
string, I am supplying the following patch to explictly check for an empty
string in pg_atoi() and return 0 if the string is empty. The patch will also
trap a NULL character pointer being passed to pg_atoi() and will use elog() to
print out an error message if the input char pointer is NULL.
Bruce Momjian [Fri, 11 Sep 1998 16:56:24 +0000 (16:56 +0000)]
The attached patches fix the following problems:
1. The UnixWare tas macro was reformatted (by indent or it like?) which caused
it to break. The asm macro construct is very particular about the %mem
construct -- it has to start in column 1.
2. When compiling libpq++, g++ was used even if configure found the C++ com-
piler to be CC.
3. When compiling libpq++, '-Wno-error' was added to CXXFLAGS, even if the
compiler wasn't g++.
Bruce Momjian [Wed, 9 Sep 1998 18:32:05 +0000 (18:32 +0000)]
>
> Open portability issues:
>
> /usr/local should be searched for lib and include for all ports if
present
> (currently not working, I have libreadline there)
>
> the stream functions on AIX need a size_t for addrlen's in
fe-connect.c and pqcomm.c.
>
> lock.c still has an incompatible TPRINTF(flags, args...) definition
Bruce Momjian [Wed, 9 Sep 1998 18:16:36 +0000 (18:16 +0000)]
Hi patchers/hackers.
Here's a patch for initdb that does two things.
1) Encloses the created rulenames in quotes to preserve case
in the creation step. (stores _RETpg... instead of _retpg...)
I believe _RET is standard for views.
2) Renames pg_view to pg_views and pg_rule to pg_rules.
I believe Jan and myself agreed this would be a "good idea"
Very minor formatting fixup in the refentry id field to remove
the trailing "-1". This makes a cleaner html output file name.
Clean up a few refpurpose fields.
I put some extra checks to make sure a query was a good candidate for
rewrite into a UNION. Besides the existing checks:
1. Make sure the AND/OR tree was rectangular. ( i.e. 3 X 4 or 10 X
3)
2. Only one table.
3. Must have an AND dimension.
4. At least 9 OP expressions total
Bruce Momjian [Thu, 3 Sep 1998 02:14:39 +0000 (02:14 +0000)]
O2. Seems tas() for PPC (storage/buffer/s_lock.c) never works if
compiled with -O0. Included are patches that should fix the problem
(of course I have confirmed -O2 works with this patch).
BTW, here is a platforms/regression test failure(serious one--backend
death) matrix.