Implement CREATE TABLE ... AS SELECT borrowing code from SubSelect
and from SELECT ... INTO ... support code.
Allow NOT, IS NULL, IS NOT NULL in constraints.
Define unionall boolean flag in SubSelect structure.
Implement row descriptors: (a, b, c) = (x, y, z).
Change IS TRUE, IS FALSE, etc. to expressions using "=" rather than
function calls to istrue() or isfalse() to allow optimization.
Force type for TRUE and FALSE to bool.
Change variable name reference from selectClause to more appropriate unionClause.
Add a few lines of test code playing with the unique flag for unions.
Does not do much helpful yet.
Marc G. Fournier [Fri, 19 Dec 1997 22:47:00 +0000 (22:47 +0000)]
More cleanups. Move alot of the prototype definitions straight into
config.h, right beside their appropriate HAVE_ #ifdefs...one central
location that is included everywhere...
Marc G. Fournier [Fri, 19 Dec 1997 03:06:22 +0000 (03:06 +0000)]
Okay, that's it for tonight...broke a few ports, most likely, but that
is expected...a few ports don't have "ports" anymore, with most things
auto-configured by configure like it should be :)
Marc G. Fournier [Fri, 19 Dec 1997 02:09:10 +0000 (02:09 +0000)]
More cleanups. I can now compile without PORTNAME being defined n
Makefile.global.
End result, if all goes well, should allow for much easier porting, since
there will no longer be a concept of a "port". Most, if not everything,
*should* be determined by configure, or by the compiler itself. Still
work to be done though :)
Enable timespan_finite() and text_timespan() routines (was commented out).
Define an "ISO-style" timespan output format with "hh:mm:ss" fields.
Enabled by DateStyle = USE_ISO_DATES.
Marc G. Fournier [Wed, 17 Dec 1997 04:59:16 +0000 (04:59 +0000)]
First pass through, of many to come, towards making the whole source
tree "non-PORTNAME" dependent. Technically, anything that is PORTNAME
dependent should be able to be derived at compile time, through configure
or through gcc
Marc G. Fournier [Wed, 17 Dec 1997 04:44:50 +0000 (04:44 +0000)]
Makefile cleaned up
async.c: #include <port-protos.h> surrounded by an #ifdef HAVE_STRDUP
vacuum.c: #include <port-protos.h> commented out...can someone comment as
to why it was included, as it doesn't seem to have any effect
under FreeBSD so far...would like some sort of #ifdef wrapper
like async.c if possible
Marc G. Fournier [Wed, 17 Dec 1997 04:31:34 +0000 (04:31 +0000)]
Clean up the Makefiles
Essentially, this cleans things up so that if PORTNAME isn't defined (I'm
working on getting rid of it for FreeBSD, at least, to see if its possible)
none of the PORTNAME related stuff gets passed around.
Add declarations for text, bpchar, and varchar length functions.
Remove declarations in builtins.h duplicated in dt.h.
Change a few return type declarations to use "type *"
rather than "struct ...".
Allow multiple-argument functions in constraint clauses.
Formerly allowed only single arguments.
Declare column constraints using the usual list mechanism rather
than explicit itemized lists.
Remove NOTNULL from default clause syntax (retain "NOT NULL").
NOTNULL is not SQL92; eventually remove it from expressions too?
Move ISNULL, NOTNULL to Postgres-specific token declarations.
Fix up tabs and indenting on new CREATE USER commands.
Allow logging of output to syslog or /tmp/postgres.log.
Put all configurable parameters near top of file.
Remove explicit path to postmaster executable.
More comments.
I found one other change that I would like to make to the
src. It is in the function ParseACL. When I find that I
can not allocate enough memory for the ACL structure I
return an NULL instead of doing an exit_nicely(g_conn);
From: Matthew C Aycock <maycock@scuba.pcpipeline.com>
Change Constraint structure name from ConstraintDef to Constraint.
Change reference to field inside to be compatible with new definition
as a "node" structure rather than a specialty structure.