Tom Lane [Fri, 31 Mar 2000 05:11:13 +0000 (05:11 +0000)]
Update horology-solaris-1947.out per results from SL Baur. These are
actually from an alpha-dec-osf machine, but as far as can be told the
two platforms have the same ideas about past DST rules.
Tom Lane [Fri, 31 Mar 2000 05:03:39 +0000 (05:03 +0000)]
Update alpha templates as suggested by SL Baur and Adriaan Joubert.
Make similar changes to hpux templates. Might want to do the same for
other foo_cc and foo_gcc pairs, but will desist until I hear from
someone who uses those platforms.
Tom Lane [Fri, 31 Mar 2000 05:00:36 +0000 (05:00 +0000)]
Use the CXXFLAGS exported by configure (amazingly, we weren't before!)
and do not arbitrarily pull in CFLAGS instead. This caters to platforms
where the C++ compiler does not like all the same switches the C compiler
wants.
Tom Lane [Fri, 31 Mar 2000 02:43:31 +0000 (02:43 +0000)]
Get rid of SetBufferWriteMode(), which was an accident waiting to happen.
In the event of an elog() while the mode was set to immediate write,
there was no way for it to be set back to the normal delayed write.
The mechanism was a waste of space and cycles anyway, since the only user
was varsup.c, which could perfectly well call FlushBuffer directly.
Now it does just that, and the notion of a write mode is gone.
Accumulated fixups.
Add some chapters on new topics.
Change to referencing OASIS/Docbook v3.1 rather than Davenport/Docbook v3.0
Grepped for and fixed apparent tag mangling from emacs
"Normalize" operation. Should be the last of those.
Split off language-specific docs to their own chapters.
Add PL/perl docs from Mark Hollomon.
Put language-specific docs into the User's Guide, and move the rest
to the Programmer's Guide.
Enable more flexible syntax for the SET command. Now allows single floats,
single integers, and lists of names, without surrounding them with quotes.
Remove all tokens which are defined as operators from ColID and ColLabel
to avoid precedence confusion. Thanks to Tom Lane for catching this.
Tom Lane [Thu, 30 Mar 2000 00:53:30 +0000 (00:53 +0000)]
Tweak indexscan cost estimation: round estimated # of tuples visited up
to next integer. Previously, if selectivity was small, we could compute
very tiny scan cost on the basis of estimating that only 0.001 tuple
would be fetched, which is silly. This naturally led to some rather
silly plans...
Change rules for interpreting date/time input to disallow 1 and 3 character
years. Rejects dates like '0.085', which were accepted previously.
Minor mods of ODBC markup.
Add mention of join syntax to release notes, and reformat a few lines.
Update porting info. Still need a lot of platforms tested.
Fix small errors in markup.
Tom Lane [Tue, 28 Mar 2000 02:53:02 +0000 (02:53 +0000)]
Clean up major bogosity in description of creating a new index operator
class. This chapter was apparently sewed together from several
inconsistent examples... and perhaps from old docs that no longer
apply at all.
Start updating for the v7.0 release.
Use "generic functions" for math and other routines.
Use SQL92 "type 'literal'" syntax rather than Postgres "'literal'::type".
Allow full type names in CREATE FUNCTION arguments and return type.
Move CREATE FUNCTION/WITH clause to end of statement to get around
shift/reduce conflicts with type names containing "WITH".
Add lots of tokens as allowed ColId's and/or ColLabel's,
so this should be a complete set for the v7.0 release.
Change form of query which used "DISTINCT ON" to help support primary keys.
We still have an internal limit in the ODBC code of 8 columns per key,
but this should lay the groundwork for resolving that.
Includes reformulated query from Tom Lane.
Tom Lane [Sun, 26 Mar 2000 19:43:58 +0000 (19:43 +0000)]
nodeAgg has always been willing to accept an aggregate with a finalFunc
and only one transition state, but the CREATE AGGREGATE code rejected
this combination.
Tom Lane [Sun, 26 Mar 2000 07:03:38 +0000 (07:03 +0000)]
Rearrange steps in recommended install procedure to something more
reasonable, ie configure and build first, then optionally run regress
tests using new parallel (non-installed) test method, and only then
backup and kill old installation.
Bruce Momjian [Sun, 26 Mar 2000 00:18:57 +0000 (00:18 +0000)]
Attached is the regression diff for geometry, RedHat 6.1 on a Pentium
200 MMX. I was going through my e-mail, cleaning out my 1000+ message
inbox, and found this one. Sorry.
Tom Lane [Sat, 25 Mar 2000 19:26:49 +0000 (19:26 +0000)]
Remove bogus complexity from build/install of plperl. This stuff was
apparently copied from the makefile for the perl5 interface module,
which needs it for reasons explained in src/interfaces/Makefile.
But none of those reasons apply to plperl.
Tom Lane [Fri, 24 Mar 2000 23:34:19 +0000 (23:34 +0000)]
transformCreateStmt should put Ident nodes, not ColumnDef nodes, into
keys lists of Constraint nodes. This eliminates a type pun that would
probably have caused trouble someday, and eliminates circular references
in the parsetree that were causing trouble now.
Also, change parser's uses of strcasecmp() to strcmp(). Since scan.l
has downcased any unquoted identifier, it is never correct to check an
identifier with strcasecmp() in the parser. For example,
CREATE TABLE FOO (f1 int, UNIQUE("F1"));
was accepted, which is wrong, and xlateSqlFunc did more than it should:
select datetime();
ERROR: Function 'timestamp()' does not exist
(good)
select "DateTime"();
ERROR: Function 'timestamp()' does not exist
(bad)
Tom Lane [Fri, 24 Mar 2000 02:41:46 +0000 (02:41 +0000)]
Rename bytea functions to not have upper-case letters in their names.
Clean up grotty coding in them, too. AFAICS from the CVS logs, these
have been broken since Postgres95, so I'm not going to insist on an
initdb to fix them now...
Tom Lane [Fri, 24 Mar 2000 01:39:55 +0000 (01:39 +0000)]
Fold PQsetenv working state into PGconn, rather than trying to maintain
it in a separate object. There's no value in keeping the state separate,
and it creates dangling-pointer problems. Also, remove PQsetenv routines
from public API, until and unless they are redesigned to have a safer
interface. Since they were never part of the documented API before 7.0,
it's unlikely that anyone is calling them.
Tom Lane [Thu, 23 Mar 2000 23:35:47 +0000 (23:35 +0000)]
A little further tweaking of the range-query selectivity logic:
to avoid undue sensitivity to roundoff error, believe that a zero
or slightly negative range estimate should represent a small
positive selectivity, rather than falling back on a generic default
estimate.
Bruce Momjian [Thu, 23 Mar 2000 21:38:58 +0000 (21:38 +0000)]
Hmm, absolute pathnames for the copy makes sense. I'll whip up that
patch in a second. Should be sufficent to just make sure the first
character is a '/', right?
Bruce Momjian [Thu, 23 Mar 2000 17:27:36 +0000 (17:27 +0000)]
Some points for portability improvements:
1. C++ style comments in C source for ecpg ( // comment )
2. compiler finds wrong include file extern.h in ecpg/lib/descriptor.c
from
include path instead of workdir (rename it ?)
3. fe-connect getsockopt takes a socklen_t as fifth arg not int (use
SOCKET_SIZE_TYPE instead)
4. char vs unsigned char in psql calls to libpq
5. empty define that results in an empty but terminated line ( ; )
Now for all but point 3 I can supply changes to the
compiler flags, to make the compiler less pedantic.
Or is someone interested in the complications ?
in the meantime can someone apply the attached patch ?
Bruce Momjian [Thu, 23 Mar 2000 15:00:11 +0000 (15:00 +0000)]
Please apply the attached patch to interfaces/libpq/libpq-fe.h. This would
allow to write applications which do not have a link to postgres_ext.h in
their source directory.
Tom Lane [Thu, 23 Mar 2000 07:42:13 +0000 (07:42 +0000)]
subselect regress test was kind of silly; it claimed to test correlation
cases but actually did no such thing. Make it test some more cases than
before (including things that didn't work in 6.5).