Peter Eisentraut [Sun, 23 Jan 2000 01:27:39 +0000 (01:27 +0000)]
updated install file
updated date/time types doc
fixed small psql bug
removed libpq code that lower-cased db names
make notice when long identifier is truncated
Tom Lane [Sat, 22 Jan 2000 23:50:30 +0000 (23:50 +0000)]
Revise handling of index-type-specific indexscan cost estimation, per
pghackers discussion of 5-Jan-2000. The amopselect and amopnpages
estimators are gone, and in their place is a per-AM amcostestimate
procedure (linked to from pg_am, not pg_amop).
Tom Lane [Fri, 21 Jan 2000 23:32:36 +0000 (23:32 +0000)]
Fix tab-complete so it works with old versions of readline that don't
have the rl_completion_append_character variable. The tab completion
behavior doesn't seem to be quite perfect in that situation, but it's
better than failing to build at all...
Tom Lane [Fri, 21 Jan 2000 04:21:12 +0000 (04:21 +0000)]
Fix handleCopyIn's response to EOF seen mid-line, that is, input file
does not end with a newline. I don't think this explains the recent
complaints, since this bug existed in 6.5 (and probably long before).
But might as well fix it now that I see it.
Bruce Momjian [Thu, 20 Jan 2000 15:21:23 +0000 (15:21 +0000)]
I have noticed that the geometry test's output for hppa1 and hppa2 are in
fact the same, so I suggest they could be the same file say
geometry-positive-zeros.out, as the main difference seems to be not printing
eg. (0,-0). In src/test/regress/expected, I propose
and the following patch to resultmap. I have only tested the netbsd results
on i386, but think that in all probability the differences will be the same
for other ports. If it turns out not to be the case, at least we might find
out.
Bruce Momjian [Thu, 20 Jan 2000 15:13:19 +0000 (15:13 +0000)]
Bruce,
Attached is a small fix for a stupid mistake I made in comment.c
- an attempt to drop a non-existent comment would dump core :-(.
Sometimes, I'm as sharp as a marble.
Tom Lane [Thu, 20 Jan 2000 05:23:26 +0000 (05:23 +0000)]
ecpg shouldn't depend on parser/gramparse.h. Also, eliminate some
compiler warnings caused by lack of extern declarations in extern.h.
I believe the remaining gcc warnings here would go away if the ecpg
grammar could be tweaked so it doesn't use REJECT ...
Tom Lane [Thu, 20 Jan 2000 02:24:50 +0000 (02:24 +0000)]
Assign a typmod of -1 to unadorned CHAR and NUMERIC type specs. This
allows casts without specific length requirements to continue to work
as they did before; that is, x::char will not truncate the value of x,
whereas x::char(1) will. Likewise for NUMERIC precision/scale.
The column length defaults of char(1) and numeric(30,6) are now inserted
in analyze.c's processing of CREATE TABLE.
Tom Lane [Thu, 20 Jan 2000 02:21:44 +0000 (02:21 +0000)]
Fix bugs in NUMERIC ceil() and floor() functions. ceil(0) returned 1,
and both would insert random junk digits if given an input that was an
exact multiple of 10.
Tom Lane [Wed, 19 Jan 2000 23:55:03 +0000 (23:55 +0000)]
Fix handling of NULL constraint conditions: per SQL92 spec, a NULL result
from a constraint condition does not violate the constraint (cf. discussion
on pghackers 12/9/99). Implemented by adding a parameter to ExecQual,
specifying whether to return TRUE or FALSE when the qual result is
really NULL in three-valued boolean logic. Currently, ExecRelCheck is
the only caller that asks for TRUE, but if we find any other places that
have the wrong response to NULL, it'll be easy to fix them.
Bruce Momjian [Tue, 18 Jan 2000 19:05:31 +0000 (19:05 +0000)]
Hi!
Here is a patch to bring both libpq and psql to a state where it compiles on
win32 (native) again. A lot of things have changed, and I have not been able
to keep up with them all, so it has been broken for quite a while.
After this patch, at least it compiles. It also talks "basic talk" to the
server, but I have not yet tested all things. Sending queries, and using
e.g. \d or \dt works fine. The rest will have to be tested further.
It also bumps the version on libpq.dll to 7.0.
Everything should be enclosed in #ifdef WIN32, unless I have missed
something. Except for one or maybe two places where I have moved a #include
that should not be used on win32 from the "global area" into a "#ifndef
WIN32 area".
Bruce Momjian [Tue, 18 Jan 2000 18:09:02 +0000 (18:09 +0000)]
Bruce,
Attached is a patch which patches cleanly against the Sunday afternoon
snapshot. It modifies pg_dump to dump COMMENT ON statements for
user-definable descriptions. In addition, it also modifies comment.c so
that the operator behavior is as Peter E. would like: a comment on an
operator is applied to the underlying function.
Tom Lane [Tue, 18 Jan 2000 03:44:41 +0000 (03:44 +0000)]
numeric_in accepts exponents; numeric to int4 rounds; float4/8 to numeric
is considerably more robust and accurate than it used to be.
Also, get rid of numeric's private allocation freelist, which is no longer
a win since Jan rewrote palloc.
Tom Lane [Mon, 17 Jan 2000 23:57:48 +0000 (23:57 +0000)]
setheapoverride() is history. Uses replaced with CommandCounterIncrement()
where necessary --- several of them didn't really need it, though.
tqual-checking macros simplified accordingly.
Tom Lane [Mon, 17 Jan 2000 02:59:46 +0000 (02:59 +0000)]
Modify libpq's pqexpbuffer to eliminate length restriction on how much
data can be formatted per call. This requires relying on vsnprintf().
On machines that haven't got vsnprintf, link in the version from
backend/port/.
Tom Lane [Mon, 17 Jan 2000 02:04:16 +0000 (02:04 +0000)]
Pass atttypmod to CoerceTargetExpr, so that it can pass it on to
coerce_type, so that the right things happen when coercing a previously-
unknown constant to a destination data type.
Tom Lane [Mon, 17 Jan 2000 01:29:07 +0000 (01:29 +0000)]
Hmm, numeric array type was missing too. Added.
Of the standard types, only 'timestamp' seems not to have an array type;
should it be added, or are we going to remove that type for 7.0 anyway?
Tom Lane [Mon, 17 Jan 2000 00:14:49 +0000 (00:14 +0000)]
Create a new parsetree node type, TypeCast, so that transformation of
SQL cast constructs can be performed during expression transformation
instead of during parsing. This allows constructs like x::numeric(9,2)
and x::int2::float8 to behave as one would expect.
Tom Lane [Sun, 16 Jan 2000 21:37:50 +0000 (21:37 +0000)]
Rearrange coding in COPY so that expansible string buffer for data being
read is reused for successive attributes, instead of being deleted and
recreated from scratch for each value read in. This reduces palloc/pfree
overhead a lot. COPY IN still seems to be noticeably slower than it was
in 6.5 --- we need to figure out why. This change takes care of the only
major performance loss I can see in copy.c itself, so the performance
problem is at a lower level somewhere.
Tom Lane [Sun, 16 Jan 2000 21:18:52 +0000 (21:18 +0000)]
Sigh, I'm an idiot ... I broke the async startup logic a couple days ago,
by creating a race condition. It wasn't waiting for select() to say
write-ready immediately after connect, which meant that you might get
an unhelpful 'broken pipe' error message if connect failed, rather than
the intended error message.
Tom Lane [Sun, 16 Jan 2000 19:57:00 +0000 (19:57 +0000)]
Repair breakage of inherited constraint expressions --- needed a
CommandCounterIncrement to make new relation visible before trying to
parse/deparse the expressions. Also, eliminate unnecessary
setheapoverride calls in AddNewAttributeTuples.
Tom Lane [Sun, 16 Jan 2000 03:54:58 +0000 (03:54 +0000)]
Clean up pg_dump coredumps caused by change of output formatting for
oidvector/int2vector. pg_dump code was assuming that it would see
exactly FUNC_MAX_ARGS integers in the string returned by the backend.
That's no longer true. (Perhaps that change wasn't such a good idea
after all --- will it break any other applications??)
Tom Lane [Sat, 15 Jan 2000 23:42:49 +0000 (23:42 +0000)]
Clean up problems with rounding/overflow code in NUMERIC, particularly
the case wherein zero was rejected for a field like NUMERIC(4,4).
Miscellaneous other code beautification efforts.
Tom Lane [Sat, 15 Jan 2000 22:43:25 +0000 (22:43 +0000)]
Fix a passel of problems with incorrect calls to typinput and typoutput
functions, which would lead to trouble with datatypes that paid attention
to the typelem or typmod parameters to these functions. In particular,
incorrect code in pg_aggregate.c explains the platform-specific failures
that have been reported in NUMERIC avg().
Tom Lane [Sat, 15 Jan 2000 19:18:24 +0000 (19:18 +0000)]
Now that new psql is fflush()'ing properly, it emerges that several
regress test expected outputs were committed with NOTICEs appearing out
of order. Update to correct results.
Peter Eisentraut [Sat, 15 Jan 2000 18:30:35 +0000 (18:30 +0000)]
- Allow array on int8
- Prevent permissions on indexes
- Instituted --enable-multibyte option and tweaked the MB build process where necessary
- initdb prompts for superuser password