Commit Graph

6446 Commits

Author SHA1 Message Date
Bruce Momjian
a8020a78ec Back out odbc changes until 7.1. 2000-05-17 15:36:37 +00:00
Michael Meskes
e39a118694 *** empty log message *** 2000-05-17 06:03:14 +00:00
Bruce Momjian
a47e20b049 Several compilation and run-time problems occur when building on SGI
IRIX systems using the native compilers.  A summary is:
- Various files use "//" as a comment delimiter in c files.
- Problems caused by assuming "char" is signed.
  cash.in: building -signed the rules regression test fails as described
    in FAQ_QNX4.  If CHAR_MAX is "255U" then ((signed char)CHAR_MAX) is -1.
  postmaster.c: random number regression test failed without this change.
- Some generic build issues and warning message cleanup.

David Kaelbling
2000-05-16 20:48:52 +00:00
Tom Lane
6dd06737ba Remove configure check for how to abbreviate 'tr A-Z a-z', and instead
just use the portable form,
tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz
There were a bunch of places that weren't paying attention to configure's
result anyway (including configure itself!?); clean them up too.
2000-05-16 02:14:15 +00:00
Peter Mount
33bb1aee91 Fixed the message Makefile produces after compiling. It still said
about the old Driver class, not the new package. Spotted by
Joseph Shraibman <jks@p1.selectacast.net>
2000-05-15 21:32:51 +00:00
Bruce Momjian
6cb0fff31d cleanup 2000-05-15 16:20:45 +00:00
Bruce Momjian
dcec5ae2cd cleanup 2000-05-15 16:16:23 +00:00
Bruce Momjian
52831da26c Fix createlang -l dbname so it works, update sgml. 2000-05-15 16:12:39 +00:00
Michael Meskes
ce2a9f372d *** empty log message *** 2000-05-15 09:36:06 +00:00
Peter Eisentraut
d64aa21570 That psql option should be --no-readline (as it used to be), not --noreadline. 2000-05-14 18:05:05 +00:00
Bruce Momjian
bdeeb4fe8a Finally fix LISTEN problem. 2000-05-14 03:18:35 +00:00
Bruce Momjian
6dedc79b1e Fix create user for pgaccess. 2000-05-14 00:50:16 +00:00
Tom Lane
e8e7b6305a Tweak selectivity for area-based operators. Still a crock... 2000-05-13 06:04:46 +00:00
Bruce Momjian
2cfb14e8ea Fix the off by one errors in ResultSet from 6.5.3, and more.
I'm including a diff of
postgresql-7.0/src/interfaces/jdbc/org/postgresql/jdbc2/ResultSet.java.
I've clearly marked all the fixes I did. Would *someone* who has access
to the cvs please put this in?

Joseph Shraibman
2000-05-12 20:54:22 +00:00
Bruce Momjian
a28f117790 This is the second time I've answered this exact same problem in two
days.  It seems to be a FAQ, and I think I know why. When creating a 'c'
language function, CREATE FUNCTION is fed the shared object filename,
and seems to succeed. Only when trying to use the function is an error
thrown, by which time the coder thinks something's wrong with executing
the code, not with loading it.

I think I once saw it proposed to load shared objects at function creation
time, but that idea was shot down on the grounds of resident memory bloat,
ISTR. Here's a patch for a compromise: all it does is stat() the file,
just like the loader code does, so that the errors caused by non existent
files, and no directory 'x' permissions (the most common ones, it seems),
get caught while the developer is still thinking about code loading. It
doesn't catch all errors (like the code not being readable by the postgres
user) but seems to catch the most common, without actually opening the file.

What do you think?

Ross
2000-05-12 18:51:59 +00:00
Bruce Momjian
40c992c7dd Back out -\?. Didn't look good to Peter. 2000-05-12 16:28:31 +00:00
Peter Eisentraut
9d31e3a991 /home/peter/commit-msg 2000-05-12 16:13:44 +00:00
Tom Lane
475cb157b9 Squash some more CLUSTER bugs. Never has worked on multiple-column
indexes, apparently, nor on functional indexes with more than one input
column (force of natts = 1 was in the wrong branch of IF statement).
Coredumped if source relation contained any uncommitted tuples, due to
failure to test for success return from heap_fetch.  Fetched tuple
was passed directly to heap_insert, which clobbers the TID and commit
status in the tuple header it's given, which meant that the source
relation's tuples all got trashed as the copy proceeded.  Abort partway
through, and you're left with a lot of missing tuples.
I wonder what else is lurking here ...
2000-05-12 16:10:09 +00:00
Marc G. Fournier
be4ae8f4b2 this fixes the bug where setting the entry in he process table no longer works
under FreeBSD ... basically, if setproctitle() exists, use it ...

the draw back right now is the PS_SET_STATUS stuff doesn't work, but am looking
into that one right now ... at lesat now you can see who is connecting where
and from where ...
2000-05-12 14:33:08 +00:00
Marc G. Fournier
3383e8b828 Add two checks ... one for setproctitle and one for -lutil ...
Don't do anything with them at this time, but am working on that ...
2000-05-12 13:58:25 +00:00
Tom Lane
01911c98db Repair list-vs-node confusion that resulted in failure for INNER JOIN ON.
Make it behave correctly when there are more than two tables being
joined, also.  Update regression test expected outputs.
2000-05-12 01:33:56 +00:00
Bruce Momjian
4624b84cf2 Small cleanup of file. 2000-05-12 00:54:53 +00:00
Bruce Momjian
7da0f5d7de More psql help cleanup 2000-05-11 18:41:00 +00:00
Bruce Momjian
8101d0c571 Makefile CFLAGS cleanups. 2000-05-11 17:46:35 +00:00
Bruce Momjian
992e7dd4e3 Oops, plpgsql didn't have the datetime->timestamp and timespan->interval
mappings.  In fact, it had them backward because it was using the 6.5.*
code.  Copied them from parser/gram.y, so it is fixed now.  Looks like
our first 7.0.1 fix.  Oops, seems Tom has beat me to it as I was typing
this.
2000-05-11 04:00:00 +00:00
Tom Lane
37c652f89b Fix CLUSTER ... or at least undo the bit-rot it's suffered since 6.5.
It's still pretty fundamentally bogus :-(.
Freebie side benefit: ALTER TABLE RENAME works on indexes now.
2000-05-11 03:54:18 +00:00
Bruce Momjian
e10c5597b7 Display -? as -\? under unix for psql. 2000-05-11 03:14:19 +00:00
Bruce Momjian
0fbde5d928 Add options and cleanup psql \? and -? help displays 2000-05-11 01:37:54 +00:00
Bruce Momjian
5a75ad5573 Update psql \? to show file rather than "fname". 2000-05-09 19:08:36 +00:00
Tom Lane
b45f3a6e5b Forgot that dumpall's output script should 'delete from pg_group' before
loading new data, for consistency with its handling of pg_shadow.
2000-05-05 17:50:38 +00:00
Peter Eisentraut
5e4d8be18b psql: suppress warnings about too many arguments if the command is not valid in the first place 2000-05-05 09:38:40 +00:00
Peter Eisentraut
8322072188 Spello SERIALIZED -> SERIALIZABLE in psql tab completion 2000-05-05 08:44:27 +00:00
Peter Mount
02faee5eaa ImageViewer transaction fixes 2000-05-05 07:35:29 +00:00
Tom Lane
c0337ec2a9 Force initdb because of pg_group index fix. 2000-05-05 03:10:24 +00:00
Tom Lane
3bd03b3803 Make the indexes on pg_group be shared system relations. 2000-05-05 03:09:43 +00:00
Tom Lane
3a69c316cc Accept pg_group as well as pg_shadow data from dumpall script.
Rearrange handling of VACUUMs so that they are certain to be executed
as superuser not some random user; also, do not forget to vacuum
template1 itself.
2000-05-05 03:08:20 +00:00
Tom Lane
3d1461802e Dump contents of pg_group along with pg_shadow. 2000-05-05 03:04:00 +00:00
Tom Lane
570a58f427 Don't leak a file descriptor when updating pg_pwd file. Also, check for
failure of rename() call.
2000-05-04 20:06:07 +00:00
Tom Lane
de13d88146 Do not try to build libpq++ if class 'string' is not defined in the
available C++ header files.
2000-05-03 18:30:17 +00:00
Peter Mount
86b8bd0748 Minor fixes ready for 7.0 2000-05-03 15:58:09 +00:00
Bruce Momjian
7ef29a26cb Update SCO FAQ. Billy G. Allie 2000-05-02 10:57:11 +00:00
Tatsuo Ishii
832877e95a Modify getdatabaseencoding(), pg_encoding_to_char()
pg_char_to_encoding() in multibyte disbaled case so that it does not
throw an error, rather return HARD CODED default value (currently SQL_ASCII).
This would solve the "non-mb backend vs. mb-enabled frontend" problem.
2000-05-02 08:13:08 +00:00
Tom Lane
f6a3b87c7b Reset CurrentMemoryContext to TopMemoryContext at the beginning of error
cleanup, ie, as soon as we have caught the longjmp.  This ensures that
current context will be a valid context throughout error cleanup.  Before
it was possible that current context was pointing at a context that would
get deleted during cleanup, leaving any subsequent pallocs in deep
trouble.  I was able to provoke an Assert failure when compiled with
asserts + -DCLOBBER_FREED_MEMORY, if I did something that would cause
an error to be reported by the backend large-object code, because indeed
that code operates in a context that gets deleted partway through xact
abort --- and CurrentMemoryContext was still pointing at it!  Boo hiss.
2000-04-30 21:29:23 +00:00
Tom Lane
e0095c6c42 Remove bogus 'xid loop detected' check, which actually wasn't detecting
loops, but just arbitrarily failing at 1000 locks.
2000-04-30 21:23:31 +00:00
Bruce Momjian
2f19d11fc8 Clean up ecpg test files. 2000-04-29 03:25:24 +00:00
Bruce Momjian
0ccf3c8877 Update pgeasy examples 2000-04-28 22:49:25 +00:00
Bruce Momjian
0e69b81d25 Update libpgeasy define. 2000-04-28 17:19:42 +00:00
Bruce Momjian
7aa443d01e Change libpgeasy to take dbname at end like all other interfaces. 2000-04-28 14:58:51 +00:00
Tom Lane
a90dc572ed Setting statistic options from SET PG_OPTIONS caused a backend crash
because StatFp never got set in that case.  Set it immediately before
use to eliminate such problems.
2000-04-28 05:07:34 +00:00
Tom Lane
45cc0e9b27 plpgsql RAISE statement was careless about the possibility of a NULL
field value being displayed; produced coredump instead of the expected
<NULL> display.
2000-04-28 00:12:44 +00:00
Tom Lane
f106779263 Except_Intersect_Rewrite() failed to ignore resjunk targetlist entries,
thus causing failure if one sub-select had resjunk entries that the other
did not (cf. bug report from Espinosa 4/27/00).
2000-04-27 20:32:41 +00:00
Bruce Momjian
fb7318a632 Update libpgeasy e-mail address 2000-04-27 18:45:43 +00:00
Tom Lane
d6eac08f11 Repair problem noted by Elphick: make_rels_by_joins failed to handle
cases where joinclauses were present but some joins have to be made
by cartesian-product join anyway.  An example is
SELECT * FROM a,b,c WHERE (a.f1 + b.f2 + c.f3) = 0;
Even though all the rels have joinclauses, we must join two of them
in cartesian style before we can use the join clause...
2000-04-27 18:35:04 +00:00
Tom Lane
85a5303877 -D switch to postmaster should override any PGDATA environment variable
that might be hanging about.  Now it does ... amazing nobody noticed
this before ...
2000-04-27 02:59:17 +00:00
Tom Lane
1b4f150541 Tweak outUnique to include uniqColIdx[] field in the printout. This does
not cause any compatibility problems because stored rules don't contain
plan nodes --- in fact, we don't even have a readfunc for Unique nodes.
2000-04-26 23:39:10 +00:00
Tom Lane
6a4fa7eccb On HPUX, shl_load should be called with options BIND_IMMEDIATE rather
than BIND_DEFERRED.  That way, if the loaded library has unresolved
references, shl_load fails cleanly.  As we had it, shl_load would
succeed and then the dynlinker would call abort() when we try to call
into the loaded library.  abort()ing a backend is uncool.
2000-04-26 23:35:34 +00:00
Bruce Momjian
00645eb1fd Fix include "" to <> 2000-04-26 22:51:14 +00:00
Bruce Momjian
f839762e0b Remove DriverClass.java. It is generated by the compile. 2000-04-26 17:54:28 +00:00
Bruce Momjian
0b65e1436e Add res clear to example 2000-04-26 17:51:03 +00:00
Bruce Momjian
3c0685e423 Install Peter's Makefile. 2000-04-26 14:19:29 +00:00
Jan Wieck
9d56aff7bc Reinstalled revision 1.36 (looks Peter Mount installed
a new JDBC Makefile here by accident)

Jan
2000-04-26 09:03:10 +00:00
Peter Mount
dbd8d38fa5 third attempt 2000-04-26 05:50:18 +00:00
Peter Mount
4fc3690238 Attempt III 2000-04-26 05:39:32 +00:00
Peter Mount
39116bfbfc Another attempt 2000-04-26 05:32:01 +00:00
Bruce Momjian
1b266fbcca Update libpgeasy readme. 2000-04-26 00:53:11 +00:00
Bruce Momjian
a0551e8afa Make c++ examples return 0 from main(). 2000-04-25 21:00:29 +00:00
Bruce Momjian
1234981836 Fix libpq example return values 2000-04-25 16:39:07 +00:00
Hiroshi Inoue
56e09ddf0c change reindex ERROR/NOTICE message 2000-04-25 10:38:38 +00:00
Peter Eisentraut
282861ad75 initdb didn't always remove temp file 2000-04-25 08:29:02 +00:00
Tom Lane
f46c1f1e33 Check that user-specified opclass in CREATE INDEX corresponds to operators
that will actually work on the column datatype.
2000-04-25 02:45:54 +00:00
Tatsuo Ishii
e308786889 Update pg_ctl so that it does not redirect outputs from postmaster
to a temp file.
2000-04-25 01:07:23 +00:00
Bruce Momjian
297e7f3ef4 Fix \h to not go past array bounds 2000-04-24 22:41:43 +00:00
Bruce Momjian
11ae8ba7ea Add mention of int in variable. 2000-04-23 11:42:51 +00:00
Bruce Momjian
bc4e6db44c Add mention of int for variable in examples 2000-04-23 11:39:08 +00:00
Tom Lane
cfc0e015a1 Our test to see if we had permission to install into Perl5 install area
always failed if Perl makefile's INSTALLSITELIB variable was specified
in terms of another variable.  Fix by adding an echo-installdir target
to the Perl makefile, which the upper-level Makefile can invoke.
2000-04-23 04:26:32 +00:00
Tom Lane
97f0521d8e Produce an appropriate error message when opclass is not supported by
specified index access method.  Clean up wording of some existing error
messages, too.
2000-04-23 01:44:55 +00:00
Tom Lane
8994662a0b 7.0 buffer manager can support different backends running with different
fsync settings, so the -F option no longer needs to be treated as secure.
2000-04-23 00:13:16 +00:00
Tom Lane
290978fff0 Remove broken tracing code (which would be dangerous if it did work...)
libpq++.h contained copies of the class declarations in the other libpq++
include files, which was bogus enough, but the declarations were not
completely in step with the real declarations.  Remove these in favor
of including the headers with #include.  Make PgConnection destructor
virtual (not absolutely necessary, but seems like a real good idea
considering the number of subclasses derived from it).  Give all classes
declared private copy constructors and assignment operators, to prevent
compiler from thinking it can copy these objects safely.
2000-04-22 22:39:15 +00:00
Tom Lane
51c92941c6 Update example: PgLargeObject constructor now takes a conninfo string,
not a bare database name.
2000-04-22 22:15:48 +00:00
Tom Lane
3ddeba7403 pltcl didn't work well at all when Tcl had been built with a different
compiler than the one selected to build Postgres with.  It was trying
to feed Postgres-compiler switches to Tcl's compiler.  (Seen this before
with the perl5 interface...) Fix to use only CFLAGS taken from Tcl's
configure information, plus -I which is pretty universal.
2000-04-21 03:28:17 +00:00
Tom Lane
ef6c33f3b9 Finally figured out that HP's cpp won't do ANSI preprocessing constructs
unless you feed it -Aa or -Ae switch.  Autoconf does not know about this,
but we can fix it in the hpux_cc template file.  I knew templates were
good for something ;-)
2000-04-21 03:07:51 +00:00
Tom Lane
f084cc4939 Fix still more static-declaration-vs-nonstatic-definition glitches.
gcc doesn't think these are a problem, but somewhere out there is a
compiler that will spit up.
2000-04-21 03:01:54 +00:00
Tom Lane
87e701b8d5 Clean up const-vs-not-const compiler warning in MULTIBYTE code.
'Twas my fault, I think.
2000-04-20 22:40:18 +00:00
Bruce Momjian
a2b5fac8ca Allow libpq++ compile failure to stop entire compile. 2000-04-20 17:21:46 +00:00
Tom Lane
a95eec6792 Add a regress test case for SELECT count(*) FROM view, so that we'll
know if that case ever breaks again...
2000-04-20 00:32:57 +00:00
Tom Lane
7c22d2e5f0 Correct error in rewriter that caused SELECT count(*) FROM view
to give wrong results: it should be looking at inJoinSet not inFromCl.
Also, make 'modified' flag be local to ApplyRetrieveRule: we should
append a rule's quals to the query iff that particular rule applies,
not if we have fired any previously-considered rule for the query!
2000-04-20 00:31:49 +00:00
Bruce Momjian
fe922de3f7 Security fix for plperl. 2000-04-18 15:04:02 +00:00
Tom Lane
b90e3e4cbb linux_alpha pattern should allow for more-detailed machine type such
as 'alphaev5', cf report from Stepanov 13-Apr-00.
2000-04-18 05:57:45 +00:00
Tom Lane
32e192d712 Repair coredump seen when a view refers to an inheritance group
(SELECT FROM table*).  Cause was reference to 'eref' field of an RTE,
which is null in an RTE loaded from a stored rule parsetree.  There
wasn't any good reason to be touching the refname anyway...
2000-04-18 05:52:35 +00:00
Tom Lane
25442d8d2f Correct oversight in hashjoin cost estimation: nodeHash sizes its hash
table for an average of NTUP_PER_BUCKET tuples/bucket, but cost_hashjoin
was assuming a target load of one tuple/bucket.  This was causing a
noticeable underestimate of hashjoin costs.
2000-04-18 05:43:02 +00:00
Thomas G. Lockhart
24864d048e Include information for armv4l from Mark Knox <segfault@hardline.org>. 2000-04-18 05:35:38 +00:00
Tom Lane
609f93a436 Revert no-longer-needed relaxation of compiler errors. 2000-04-18 00:27:34 +00:00
Tom Lane
6216e84df6 Make ECPGraise's str parameter const to suppress warnings from gcc
and errors from pickier compilers.
2000-04-18 00:24:30 +00:00
Bruce Momjian
3b192c232d Add comment for -qhalt=w removal so it can be re-added later 2000-04-17 22:21:07 +00:00
Peter Mount
25dadc8514 Another attempt at 7.0 2000-04-17 20:07:56 +00:00
Bruce Momjian
aafff4af16 Aix additions 2000-04-17 18:11:43 +00:00
Bruce Momjian
ae16968051 Remove -qhalt=w flag from aix42. 2000-04-17 15:50:18 +00:00
Tom Lane
94728d1085 Add code to test for non-shared libperl and fail gracefully.
Not a big step forward, but it's something...
2000-04-17 00:49:58 +00:00
Peter Eisentraut
3d62fbc4eb squished \dS+ bug pointed out by Mike Mascari 2000-04-16 20:04:51 +00:00
Tom Lane
ea46ddcfa6 Tweak create_help.pl so it will work under either perl 4.* or perl 5.*.
Remove knowledge of path to documentation source directory from perl
script, instead have Makefile pass it to script.
2000-04-16 18:07:22 +00:00
Peter Eisentraut
aae70b2dca more psql bug squashing:
\copy without arguments failed
commands with too many arguments were too silent
2000-04-16 15:46:40 +00:00
Tom Lane
82849df6c6 Add new selectivity estimation functions for pattern-matching operators
(LIKE and regexp matches).  These are not yet referenced in pg_operator,
so by default the system will continue to use eqsel/neqsel.
Also, tweak convert_to_scalar() logic so that common prefixes of strings
are stripped off, allowing better accuracy when all strings in a table
share a common prefix.
2000-04-16 04:41:03 +00:00
Tom Lane
8c3b52e7b2 Allow COPY WITH OIDS to system OID values --- rely on unique indexes to
prevent duplicate OIDs from being added.  Clean up redundant error
messages.
2000-04-16 04:27:52 +00:00
Tom Lane
a6acf1a06a Show failing OID in 'cache lookup failed' messages. 2000-04-16 04:25:42 +00:00
Tom Lane
215c60dc21 Show failing OID in 'cache lookup failed' messages;
print OIDs as %u not %d.
2000-04-16 04:19:41 +00:00
Tom Lane
1460dd0eff Show failing OID in 'cache lookup failed' messages. 2000-04-16 04:16:55 +00:00
Tatsuo Ishii
88a30e68f6 Change postmaster.opts.default.sample. remove -S option.
With the default option, pg_ctl can show messages from
postmaster upon its failure.
2000-04-16 03:50:00 +00:00
Tom Lane
8064a49f6f get_relattval() should treat a NULL constant as a non-constant expression,
since it has no way to indicate to its caller that the constant is
actually NULL.  This prevents coredump in cases like
  WHERE textfield < null::text;
2000-04-16 01:55:45 +00:00
Tom Lane
4ca7d148cb elog(NOTICE) during COPY incorrectly reset lineno to 0, causing any
subsequent elogs() in the same COPY operation to display the wrong
line number.  Fix is to clear lineno only when elog level is such
that we will not return to caller.
2000-04-15 19:13:08 +00:00
Peter Eisentraut
ffc9812451 fixed another psql \e bug (handle newlines as whitespace)
repaired psql option scanning bug (special treatment to \g |pipe)
fixed ipcclean makefile
made configure look for Perl to handle psql help build gracefully
2000-04-14 23:43:44 +00:00
Thomas G. Lockhart
9edb0f7ec2 Fix spelling of "millennium".
Thanks to Mika Nystrom <mika@camembert.cs.caltech.edu> for spotting this.
2000-04-14 15:22:22 +00:00
Thomas G. Lockhart
d221e149b4 Fix (well, add) support for ISO "week" in date_part(). Needed for ODBC.
Fix spelling of "millennium".
 Thanks to Mika Nystrom <mika@camembert.cs.caltech.edu> for spotting this.
2000-04-14 15:22:10 +00:00
Tom Lane
8eafe40571 Fix silly definition order in config.h --- we had prototypes like
extern int  inet_aton(const char *cp, struct in_addr * addr);
appearing before the optional #define for const, which was certain
to fail on a machine with neither const nor inet_aton().
2000-04-14 03:05:35 +00:00
Tom Lane
07d2c3e0a0 Another static-vs-not-static error. 2000-04-14 01:34:24 +00:00
Tom Lane
a7f2dd347b Remove bogus extern for 'descriptors' variable, which is in fact static.
Some compilers object to seeing extern and later static ...
2000-04-14 01:26:49 +00:00
Tom Lane
87ca3bd294 #undef const, inline, signed, volatile, on the expectation that a C++
compiler will understand them.  configure may have #define'd them to
empty because the local C compiler doesn't understand them, but this
may very well cause a C++ compilation to fail, so don't do it in C++.
2000-04-14 01:00:16 +00:00
Tom Lane
07672d4e0a Skip setsockopt(SO_REUSEADDR) for the Unix-domain postmaster socket on
all platforms, not just SCO.  The operation is undefined for Unix-domain
sockets anyway.  It seems SCO is not the only platform that complains
instead of treating the call as a no-op.
2000-04-14 00:51:58 +00:00
Tom Lane
bf00aec8d0 If configure finds that inet_aton() is not present on this platform,
include the version from backend/port into libpq.
There is a second-rate implementation of inet_aton() already present
in fe-connect.c, #ifdef'd WIN32.  That ought to be removed in favor
of using the better version from port/.  However, since I'm not in a
position to test the WIN32 code, I will leave well enough alone for
this release...
2000-04-14 00:42:06 +00:00
Tom Lane
977fad3f17 Revert inclusion of postgres_ext.h to use "..." instead of <...>, per
request from XEmacs people.
2000-04-14 00:24:52 +00:00
Tom Lane
9d91db4fde Repair bug reported by Wickstrom: backend would crash if WHERE clause
contained a sub-SELECT nested within an AND/OR tree that cnfify()
thought it should rearrange.  Same physical sub-SELECT node could
end up linked into multiple places in resulting expression tree.
This is harmless for most node types, but not for SubLink.
Repair bug by making physical copies of subexpressions that get
logically duplicated by cnfify().  Also, tweak the heuristic that
decides whether it's a good idea to do cnfify() --- we don't really
want that to happen when it would cause multiple copies of a subselect
to be generated, I think.
2000-04-14 00:19:17 +00:00
Jan Wieck
3e00c9db4a Fixed CREATE TYPE to recognize changed parsenodes
Jan
2000-04-13 11:51:07 +00:00
Bruce Momjian
97580f6993 A few more macro cleanups 2000-04-12 20:33:37 +00:00
Bruce Momjian
52f77df613 Ye-old pgindent run. Same 4-space tabs. 2000-04-12 17:17:23 +00:00
Bruce Momjian
db4518729d Reverse out macro fix for the time being. 2000-04-12 05:29:10 +00:00
Bruce Momjian
8758985c3a Prevent drop database failure from showing. 2000-04-12 05:24:51 +00:00
Bruce Momjian
37e7c7dfcb Fix assert with missing semicolon 2000-04-12 04:58:09 +00:00
Bruce Momjian
398bb1fcb6 Update pgindent 2000-04-12 01:01:49 +00:00
Bruce Momjian
83a57694d1 Update pgindent 2000-04-11 22:15:08 +00:00
Bruce Momjian
862d677682 Update pgindent for 7.0 release 2000-04-11 19:09:04 +00:00
Bruce Momjian
b68a56a5e9 Thomas pointed out this bug in my non-blocking stuff.
Alfred Perlstein
2000-04-11 19:00:31 +00:00
Bruce Momjian
ea81522034 Allow libpq++ compile to fail 2000-04-11 18:58:18 +00:00
Bruce Momjian
b09a3b8cab disable plperl 2000-04-11 17:42:28 +00:00
Bruce Momjian
354a39bc44 Clean up temp files from \e. 2000-04-11 17:35:50 +00:00
Tom Lane
2692d329eb Tweak smgrblindwrt per advice from Vadim: add parameter indicating
whether to do fsync or not, and if so (which should be seldom) just
do the fsync immediately.  This way we need not build data structures
in md.c/fd.c for blind writes.
2000-04-10 23:41:52 +00:00
Bruce Momjian
a447ae2221 The constant in backend/utils/misc/trace.c, line 32 limits the length of
logged queries to 1024, truncating longer queries.  That is about half of
the size I need (I have a union that is 2K long).  Can someone consider
bumping it to 4K or so?  Patch attached...

Regards,
Ed Loehr
2000-04-10 19:25:29 +00:00
Hiroshi Inoue
8a5851880e Fix an Assert bug(was my fault) pointed out by Tom Lane. 2000-04-10 00:45:42 +00:00
Tom Lane
1f6d8b90b8 Buffer manager modifications to keep a local buffer-dirtied bit as well
as a shared dirtybit for each shared buffer.  The shared dirtybit still
controls writing the buffer, but the local bit controls whether we need
to fsync the buffer's file.  This arrangement fixes a bug that allowed
some required fsyncs to be missed, and should improve performance as well.
For more info see my post of same date on pghackers.
2000-04-09 04:43:20 +00:00
Tom Lane
9c38a8d296 Further tweaking of indexscan cost estimates. 2000-04-09 04:31:37 +00:00
Bruce Momjian
9b7ba2002d Add new pg_options.sample file. 2000-04-08 19:38:00 +00:00
Tom Lane
bb7e5dc2c0 Tweak TypeCategory to treat new BIT types as of STRING category, rather
than not knowing what they are at all.  Perhaps they should have their own
type category?  Hard to say.  In the meantime, doing it this way allows
SELECT 'unknown' || 'unknown' to continue being resolved as textcat,
instead of spitting out an ambiguous-operator error.
2000-04-08 19:29:40 +00:00
Tom Lane
b64e768595 I think we want machine pattern i.86 not i386 --- looks like config.guess
could output several different high digits on most PC Unixen.
2000-04-08 19:20:10 +00:00
Bruce Momjian
949e8a662d Add colo to display at end of initdb. 2000-04-08 18:35:30 +00:00
Michael Meskes
d78feff973 *** empty log message *** 2000-04-08 12:20:27 +00:00
Tom Lane
ed845c7374 Fix relcache refcount leakage when inv_drop is applied
to a non-LO relation.
2000-04-08 04:37:07 +00:00
Thomas G. Lockhart
0337938fbf Add zpbit and varbit data types from Adrian Joubert
<a.joubert@albourne.com>.
2000-04-08 02:13:11 +00:00
Tom Lane
6a2d926933 Update for to_char change. 2000-04-08 02:02:26 +00:00
Tom Lane
fd0df5058a Tweak parallel test script so that command line options for postmaster
can be set via environment variable PMOPTIONS.  Default is -o -F.
2000-04-08 01:54:47 +00:00
Tom Lane
dc070fdea6 Add copyObject logic for TruncateStmt and a few other utility-statement
parse node types.  This allows these statements to be placed in a plpgsql
function.  Also, see to it that statement types not handled by the copy
logic will draw an appropriate elog(ERROR), instead of leaving a null
pointer that will cause coredump later on.  More utility statements could
be added if anyone felt like turning the crank.
2000-04-08 00:21:15 +00:00
Bruce Momjian
28fb1c196b Update create_rule manual page. 2000-04-07 19:17:51 +00:00
Marc G. Fournier
dce53f0dd5 resultmap additions for solaris x86 ... 2000-04-07 19:00:44 +00:00
Tom Lane
8dce894870 Use initdb --noclean so that test database is available for examination
if initdb fails.
2000-04-07 17:51:13 +00:00
Thomas G. Lockhart
a349733bbb Add transcendental math functions (sine, cosine, etc)
Add a random number generator and seed setter (random(), SET SEED)
Fix up the interval*float8 math to carry partial months
 into the time field.
Add float8*interval so we have symmetry in the available math.
Fix the parser and define.c to accept SQL92 types as field arguments.
Fix the parser to accept SQL92 types for CREATE TYPE, etc. This is
 necessary to allow...
Bit/varbit support in contrib/bit cleaned up to compile and load
 cleanly. Still needs some work before final release.
Implement the "SOME" keyword as a synonym for "ANY" per SQL92.
Implement ascii(text), ichar(int4), repeat(text,int4) to help
 support the ODBC driver.
Enable the TRUNCATE() function mapping in the ODBC driver.
2000-04-07 13:40:45 +00:00
Vadim B. Mikheev
71b4790b6d Commebts & one check in EndEvalPlanQual(). 2000-04-07 07:24:47 +00:00
Tom Lane
e4d8d43c52 Fix (I hope) resource leakage in EvalPlanQual: open subplans must be
properly shut down in EndPlan, else we fail to free buffers and so forth
that they hold.
2000-04-07 00:59:17 +00:00
Tom Lane
891039c15f Partial fix for EvalPlanQual bugs reported by Magnus Hagander, 3-Apr.
Ensure that outer tuple link needed for inner indexscan qual evaluation
gets set in the EvalPlanQual case.  This stops coredump, but we still
have resource leaks due to failure to clean up EvalPlanQual properly...
2000-04-07 00:30:41 +00:00
Bruce Momjian
a25a490718 Update initdb display of postmaster startup 2000-04-06 18:27:01 +00:00
Bruce Momjian
65ea4f677f Allow vacuum of temporary tables 2000-04-06 18:12:07 +00:00
Bruce Momjian
6929459279 Add POLLUTE to interfaces/Makefile 2000-04-06 03:34:55 +00:00
Tom Lane
eace269b47 Repair assert failure in tuple-chain-moving logic (introduced by yours
truly, I'm afraid).
2000-04-06 00:29:51 +00:00
Michael Meskes
a7b1ff6619 *** empty log message *** 2000-04-05 15:51:28 +00:00
Bruce Momjian
6995c5fbad Please forget all I said about gcc and AIX in my previous mail.
It does work with the following patch applied and gcc 2.95.2 .

Use --with-template=aix_gcc to compile the whole lot with gcc.

The geometry regression test produces different precision.
With optimization I run into regression failures starting at oidjoins,
thus no -O2. Anybody else try gcc 2.95.2 and -O2 on beta4 ?

This is an important patch, since recent versions of the IBM compiler
are not for free, and thus most questions I get concern gcc.

Andreas

PS.: I am testing with beta4
2000-04-05 14:47:21 +00:00
Peter Eisentraut
15942b823a Solaris geometry results were out of sync with the input file 2000-04-05 11:02:28 +00:00
Michael Meskes
9fb20f105f *** empty log message *** 2000-04-05 09:05:40 +00:00
Bruce Momjian
5f39ba8142 Rename geometry.*bsdi to geo.*bsd. for Freebsd. 2000-04-05 02:36:41 +00:00
Marc G. Fournier
059f448766 freebsd 4.0 is like bsdi for geometry test ... 2000-04-05 02:25:11 +00:00
Marc G. Fournier
97db19c91c freebsd has *-freebsd and *-freebsdelf ... float8 passes with this 2000-04-05 02:08:29 +00:00
Tom Lane
5240c76729 Actually, that still wasn't quite right. If we skip a query because of
xact abort state in pg_exec_query_dest, we should continue scanning the
querytree list, on the off chance that one of the later queries in the
string is COMMIT or ROLLBACK.
2000-04-04 23:52:50 +00:00
Tom Lane
708f82f191 Fix bug noted by Bruce: FETCH in an already-aborted transaction block
would crash, due to premature invocation of SetQuerySnapshot().  Clean
up problems with handling of multiple queries by splitting
pg_parse_and_plan into two routines.  The old code would not, for
example, do the right thing with END; SELECT... submitted in one query
string when it had been in transaction abort state, because it'd decide
to skip planning the SELECT before it had executed the END.  New
arrangement is simpler and doesn't force caller to plan if only
parse+rewrite is needed.
2000-04-04 21:44:40 +00:00
Bruce Momjian
0d26b45618 No ID file needed. 2000-04-04 13:51:38 +00:00
Bruce Momjian
9e7a4ccfd0 Update QNX FAQ 2000-04-04 13:49:30 +00:00
Tom Lane
c84ba6638e Add a check to pg_dump to see whether backend is same version as pg_dump.
If not, abort by default.  Abort can be prevented by using -i or
--ignore-version switch.
2000-04-04 05:22:46 +00:00
Bruce Momjian
edd4131e6e Update regression for bsdi. 2000-04-04 04:07:53 +00:00
Tom Lane
3f94bc19d6 Correct off-by-one error in strncat() usage. 2000-04-04 03:00:16 +00:00
Tom Lane
7fbf0af22b When rewriting an aggregate introduced into WHERE, allow agg argument to
be an expression not just a simple Var, so long as only one table is
referenced (so that code isn't really any more difficult than before).
This whole thing is still fundamentally bogus, but at least we can accept
a few more cases than before.
2000-04-04 02:30:52 +00:00
Tom Lane
2ae6e86302 For no good reason at all, libplpgsql was getting linked with libpq.
Since plpgsql is a backend extension, it doesn't need libpq...
2000-04-04 01:47:59 +00:00
Tom Lane
1c72a8a37a Fix extremely nasty little bug observed when a sub-SELECT appears in
WHERE in a place where it can be part of a nestloop inner indexqual.
As the code stood, it put the same physical sub-Plan node into both
indxqual and indxqualorig of the IndexScan plan node.  That confused
later processing in the optimizer (which expected that tracing the
subPlan list would visit each subplan node exactly once), and would
probably have blown up in the executor if the planner hadn't choked first.
Fix by making the 'fixed' indexqual be a complete deep copy of the
original indexqual, rather than trying to share nodes below the topmost
operator node.  This had further ramifications though, because we were
making the aforesaid list of sub-Plan nodes during SS_process_sublinks
which is run before construction of the 'fixed' indexqual, meaning that
the copy of the sub-Plan didn't show up in that list.  Fix by rearranging
logic so that the sub-Plan list is built by the final set_plan_references
pass, not in SS_process_sublinks.  This may sound like a mess, but it's
actually a good deal cleaner now than it was before, because we are no
longer dependent on the assumption that planning will never make a copy
of a sub-Plan node.
2000-04-04 01:21:48 +00:00
Thomas G. Lockhart
8cdabf0741 Augment the function call map logic with code from Tom Lane.
Should be more robust to overflows.
 Pass through an unmapped function unchanged, rather than rejecting it.
Add a few more functions, but comment out those which can go through as-is.
Can be used with contrib/odbc/ package, though that isn't committed yet.
2000-04-04 01:07:54 +00:00
Bruce Momjian
51cfdae50f Hi,
here is an updated version of the bit type with a bugfix and all the necessa
ry
SQL functions defined. This should replace what is currently in contrib. I'd
appreciate any comments on what is there.

Kind regards,

Adriaan
2000-04-03 20:56:40 +00:00
Michael Meskes
5454b37921 *** empty log message *** 2000-04-03 19:34:26 +00:00
Tom Lane
c4ef93dbc6 Looks like Peter forgot to commit configure with configure.in. 2000-04-03 00:33:54 +00:00
Michael Meskes
4aefba9077 *** empty log message *** 2000-04-02 08:51:44 +00:00
Peter Eisentraut
c1bfc9d7fa Adjusted for new (again!) config.guess output under QNX 2000-03-31 22:03:52 +00:00
Tom Lane
14bc951d30 Fix low-probability bug in relcache startup: write_irels wrote the
pg_internal.init file in-place, which meant that if another backend
started at about the same time, it might read the incomplete file.
init_irels tries to guard against that, but I have now seen a crash
due to reading bad data from a partly-written file.  (This may indicate
a kernel bug on my platform?  Not sure.)  Anyway, clearly the safest
course is to write the new pg_internal.init file under a unique temporary
filename, and rename it into place only after it's all written.
2000-03-31 19:39:22 +00:00
Bruce Momjian
ac70c3547b I have tested the beta3 on WinNT and here are the results:
- I was unable to compile ecpg due to the ":=" instead of "=" in defining
LIBPQDIR and some other variables in Makefile.global.in
- pg_id (and also pg_encoding) executable was not removed during "make
clean" - there was no $(X) appended to the executable name for rm
- I have added result for int2, int4, float8 and geometry regression tests
        - int2, int2 - yet another message for too large numbers ;-)
        - float8 - it is problably a bug in the newlib C library - it has no
error message for numbers with exponent -400
        - geometry - differences in precision of float numbers
- I have added appropriate lines into resultmap file
- I have modified the script regress.sh to use "case" statement when testing
the hostname. For cygwin the script is called with "i686-pc-cygwin" (on my
machine) as a parameter and this was not catched with the "if" statement.
The check was done for PORTNAME (win) and not HOSTNAME (i.86-pc-cygwin*).

The patch for described modifications is included.

All this modifications can be applied to "current" tree too.
The compilation was done on CygwinB20.1 with gcc 2.95, cygipc library 1.05.
The binaries were able to run also on the newest development snapshot
(2000-03-25).

                        Dan
2000-03-31 14:14:36 +00:00
Bruce Momjian
51bacfd44b Fix pgaccess __wish__ thing. 2000-03-31 14:05:07 +00:00
Tatsuo Ishii
95a31a8fea Regenerate configure (for configure.in version 1.305) 2000-03-31 13:07:03 +00:00
Tatsuo Ishii
82e6e8c74e Fix configure.in. Remove SJIS, BIG5, WIN1250 from the selection list of
multibyte encodings. These cannot be used as a backend/database encoding
(OK to use as a client encoding).
2000-03-31 13:04:31 +00:00
Bruce Momjian
472c5196f4 Add new pgaccess languages. 2000-03-31 11:30:10 +00:00
Bruce Momjian
a34ce62fdf Update pgaccess to 0.98.5 2000-03-31 11:22:36 +00:00
Tom Lane
418cf04987 Update from Andreas Kardos. 2000-03-31 05:36:54 +00:00
Tom Lane
0c90431d7b Add expected output for netbsd, per report from Patrick Welche. 2000-03-31 05:30:31 +00:00
Tom Lane
50f7b0b1b0 Add resultmap entries for datetime-related tests on alpha-dec-osf. 2000-03-31 05:13:39 +00:00
Tom Lane
220bf7880f 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.
2000-03-31 05:11:13 +00:00
Tom Lane
fa02af8f8b 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.
2000-03-31 05:03:39 +00:00
Tom Lane
fb75e39800 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.
2000-03-31 05:00:36 +00:00
Tom Lane
ca05ba2a9d 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.
2000-03-31 02:43:31 +00:00
Tom Lane
5717dcb8a7 New coding for SET provoked a 'var might be used uninitialized' warning
from gcc.  Which wasn't actually a code bug, but I don't like warnings.
2000-03-31 02:11:03 +00:00
Bruce Momjian
be1d9fea15 Update make_mkid for mkid version 4.0. 2000-03-31 01:41:27 +00:00
Michael Meskes
c9576ca1e0 *** empty log message *** 2000-03-30 11:41:46 +00:00
Tom Lane
92008a22c3 alpha-dec-osf host pattern must become alpha.*-dec-osf to match
newer Alpha platforms.
2000-03-30 07:49:39 +00:00
Tom Lane
007f812579 Update alternate float8 output files to match current float8.sql. 2000-03-30 07:46:00 +00:00
Tom Lane
738a9ca5e7 Update numeric_big regress test for 7.0. This has apparently been
broken almost since the word go ... I guess no one ever ran it ...
2000-03-30 07:13:20 +00:00
Thomas G. Lockhart
362575b782 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.
2000-03-30 06:02:36 +00:00
Tom Lane
b68d9c4c41 Makefile should not pre-empt user's decision about whether
to use -g ... especially not when this can cause real problems on some
platforms ...
2000-03-30 05:57:30 +00:00
Tom Lane
0517c3204e Unixware fix for new config.guess output,
from Bill.Allie@mug.org.
2000-03-30 05:49:47 +00:00
Tom Lane
0a5a0b8dfd Make use of configure symbols for unportable constructs. Make
inclusions of system headers more consistent.
2000-03-30 05:30:42 +00:00
Tom Lane
67cee15367 Autoconf. 2000-03-30 05:29:44 +00:00
Tom Lane
0a1ed443f8 Add configure checks to see if 'using namespace std' and
'#include <string>' work in the local C++ compiler.
2000-03-30 05:29:21 +00:00
Tom Lane
835d78d589 Remove extraneous semicolon. 2000-03-30 02:59:14 +00:00
Tom Lane
e55985d3be 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...
2000-03-30 00:53:30 +00:00
Peter Eisentraut
341dc91820 Added latest config.guess and config.sub 2000-03-29 16:12:31 +00:00
Thomas G. Lockhart
1b113a23e5 Change rules for interpreting date/time input to disallow 1 and 3 character
years. Rejects dates like '0.085', which were accepted previously.
2000-03-29 03:57:18 +00:00
Tom Lane
1f7ba1ebaf Fix some bogosity in the tutorial examples. 2000-03-28 02:49:19 +00:00
Bruce Momjian
081cba45e6 Allow compile to finish even if plperl fails, which it does now. 2000-03-27 22:39:13 +00:00
Peter Eisentraut
a9f37f16d2 Fixed bug with repeated \e in psql (failed to clear buffers correctly) 2000-03-27 21:11:37 +00:00
Thomas G. Lockhart
2dabd2cd1f 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.
2000-03-27 17:12:06 +00:00
Thomas G. Lockhart
2c8223f14b Fix up comments where had been uglified by the automated reformatter. 2000-03-27 17:07:48 +00:00
Thomas G. Lockhart
0b96c6f4ae 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.
2000-03-27 17:04:47 +00:00
Tatsuo Ishii
a92ab528ef Enhance pg_ctl so that it prints error messages from postmaster
if it fails to start up it (this is only vaild if -w is given).
2000-03-27 02:12:03 +00:00
Tom Lane
0a27641c1a 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.
2000-03-26 19:43:58 +00:00
Peter Eisentraut
4579e68db2 Updated user's guide to match new psql's output format
Fixed bug in createdb/alternative location
2000-03-26 18:32:30 +00:00
Tatsuo Ishii
d7959b5c71 Change resultmap:
powerpc-unknown-linux-gnu --> powerpc-unknown-linux-gnulibc1
this is because for new config.guess.
2000-03-26 02:35:01 +00:00
Tatsuo Ishii
f3160a6530 New platform specific geometry regression expected file for
powerpc-linux-gnulibc1.
2000-03-26 02:28:07 +00:00
Tatsuo Ishii
5363144d37 Remove some results from int4-not-representable.out
This is due to the changes made to int4.sql.

< SELECT dsqrt(float8 '64') AS eight;
<  eight
< -------
<      8
< (1 row)
<
< SELECT |/float8 '64' AS eight;
<  eight
< -------
<      8
< (1 row)
<
< SELECT ||/float8 '27' AS three;
<  three
< -------
<      3
< (1 row)
<
2000-03-26 02:25:34 +00:00
Tom Lane
bccac99e97 Make configure --help produce slightly more useful and consistently-
formatted descriptions of --with options.
2000-03-26 01:29:25 +00:00
Bruce Momjian
d2684ea712 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.

--
Lamar Owen
2000-03-26 00:18:57 +00:00
Tom Lane
0abebf0e7b 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.
2000-03-25 19:26:49 +00:00
Tom Lane
e4739e7029 Old patch from Mark Hollomon to add plperl to createlang's repertoire.
Seems to have slipped through the cracks.
2000-03-25 19:10:27 +00:00
Tom Lane
cfc0ba8c04 Another fix for old shells. 2000-03-25 19:01:48 +00:00
Tom Lane
c446802b22 Fix syntax error reported by old shells ("if ! command..." is a
neologism, apparently).
2000-03-25 18:46:17 +00:00
Bruce Momjian
1aecb8d2ff More >&1 cleanups 2000-03-25 14:44:42 +00:00
Bruce Momjian
3df65f8499 More changes of >& to 2>&1 2000-03-25 14:36:58 +00:00
Bruce Momjian
6e801bd8db Remove >& and make it 2>&1 2000-03-25 14:32:50 +00:00
Bruce Momjian
0dd9558ed7 Add POLLUTE=1 to perl Makefile.PL creations. 2000-03-25 14:25:31 +00:00
Tom Lane
5c462baebc 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)
2000-03-24 23:34:19 +00:00
Tom Lane
8f50f7a291 Improve comment. 2000-03-24 23:26:45 +00:00
Tom Lane
8cbeb5f131 Save a few cycles in simple cases: no need to call cost_sort() when there
is no presorted path to compare with.
2000-03-24 21:40:43 +00:00
Bruce Momjian
c07118b3b3 Remove -O2 for aix. 2000-03-24 14:39:07 +00:00
Tom Lane
39cd6e2e91 outfuncs.c was missing a print routine for Material plan nodes, leading
to trouble when trying to EXPLAIN VERBOSE a plan containing one.
2000-03-24 02:58:25 +00:00
Tom Lane
eca02fee2c 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...
2000-03-24 02:41:46 +00:00
Tom Lane
0edcee3459 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.
2000-03-24 01:39:55 +00:00
Tom Lane
7177bbac29 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.
2000-03-23 23:35:47 +00:00
Bruce Momjian
6d79d6027c >> 5. empty define that results in an empty but terminated line ( ; )
easy (maybe dumb) fix for 5 in attachment define.patch

greetings, Andreas
2000-03-23 23:16:49 +00:00
Bruce Momjian
f8645018bc Back out // compiler flag. 2000-03-23 22:25:36 +00:00
Bruce Momjian
4ddc50dffa 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?

Ross J. Reedstrom
2000-03-23 21:38:58 +00:00
Bruce Momjian
b2d867fb08 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 ?

Andreas
2000-03-23 17:27:36 +00:00
Bruce Momjian
2f839c58e2 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.

Andreas Kardos
2000-03-23 15:00:11 +00:00
Michael Meskes
ac3884e2a9 *** empty log message *** 2000-03-23 07:53:48 +00:00
Tom Lane
3097788f66 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).
2000-03-23 07:42:13 +00:00
Tom Lane
5c63975504 Float-to-int conversion functions should return NULL when given NULL
input, not throw a gratuitous elog().
2000-03-23 07:40:00 +00:00
Tom Lane
37ab088770 Remove no-longer-necessary restriction against uplevel correlation vars
outside WHERE clause.  Fix a couple of places that didn't handle uplevel
refs cleanly.
2000-03-23 07:38:30 +00:00
Tom Lane
dadb14fa60 Hack parse_coerce so it won't try to constant-fold the dummy Const
nodes introduced by make_subplan().  It'd be better if we used a
different node type for subplan result placeholders, but for now...
2000-03-23 07:36:03 +00:00
Tom Lane
9da6d2c0e7 ExecSubPlan needs to be able to cope with RelabelType nodes atop the
Const placeholder nodes for subplan result values.
2000-03-23 07:32:58 +00:00
Bruce Momjian
b508136d81 Update HISTORY file for 7.0. 2000-03-23 06:30:58 +00:00
Tom Lane
1afaa2557a If we cannot get a real estimate for the selectivity of a range query,
use a default value that's fairly small.  We were generating a result
of about 0.1, but I think 0.01 is probably better --- want to encourage
use of an indexscan in this situation.
2000-03-23 00:58:36 +00:00
Tom Lane
cad764f349 Improve selectivity estimation involving string constants: pay attention
to more than one character, and try to do the right thing in non-ASCII
locales.
2000-03-23 00:55:42 +00:00
Tom Lane
1d5e7a6f46 Repair logic flaw in cost estimator: cost_nestloop() was estimating CPU
costs using the inner path's parent->rows count as the number of tuples
processed per inner scan iteration.  This is wrong when we are using an
inner indexscan with indexquals based on join clauses, because the rows
count in a Relation node reflects the selectivity of the restriction
clauses for that rel only.  Upshot was that if join clause was very
selective, we'd drastically overestimate the true cost of the join.
Fix is to calculate correct output-rows estimate for an inner indexscan
when the IndexPath node is created and save it in the path node.
Change of path node doesn't require initdb, since path nodes don't
appear in saved rules.
2000-03-22 22:08:35 +00:00
Bruce Momjian
d825e55c13 Update pg_dumpall again. 2000-03-22 05:25:06 +00:00
Bruce Momjian
233a52eaff Fix pg_dumpall for new psql output. 2000-03-22 05:10:22 +00:00
Tom Lane
e1a1f22f13 Forgot that odbc had its own copies of config.sub/config.guess.
Update those to latest Autoconf sources, too.
2000-03-21 06:35:22 +00:00
Thomas G. Lockhart
b688f8f034 Fix query for primary keys to reflect new DISTINCT ON () syntax.
Reported by "Tibor Laszlo" <ltibor@mail.tiszanet.hu> and fix suggested by
 "Hiroshi Inoue" <Inoue@tpf.co.jp>.
2000-03-21 06:02:22 +00:00
Thomas G. Lockhart
dcdcada7e9 Add syntax for BIT() and BIT VARYING(), but no underlying implementation
is available yet.
Remove redundant call to xlateSqlType() in the character
 type handling code.
2000-03-21 06:00:41 +00:00
Thomas G. Lockhart
3c7ca8d459 Update test for new ORDER BY clause from Tom Lane. 2000-03-21 05:59:14 +00:00
Tom Lane
3ee8f7e207 Restructure planning code so that preprocessing of targetlist and quals
to simplify constant expressions and expand SubLink nodes into SubPlans
is done in a separate routine subquery_planner() that calls union_planner().
We formerly did most of this work in query_planner(), but that's the
wrong place because it may never see the real targetlist.  Splitting
union_planner into two routines also allows us to avoid redundant work
when union_planner is invoked recursively for UNION and inheritance
cases.  Upshot is that it is now possible to do something like
select float8(count(*)) / (select count(*) from int4_tbl)  from int4_tbl
group by f1;
which has never worked before.
2000-03-21 05:12:12 +00:00
Tom Lane
aafe86d995 Correct typo in error message. 2000-03-21 04:20:45 +00:00
Bruce Momjian
2216584bcf Reverse out BYTEA type coersion. 2000-03-20 15:42:47 +00:00
Vadim B. Mikheev
df238b2c06 Turn XLOG off (do not create log file). 2000-03-20 07:25:39 +00:00
Tom Lane
3caa56fe5e Emit 'this operator is deprecated' warnings for ':' and ';'. 2000-03-20 05:20:34 +00:00
Tom Lane
72b4086711 Convert float8 regress test to use exp() and ln() instead of ':' and
';' operators.
2000-03-20 05:19:11 +00:00
Bruce Momjian
7f116a6b83 Update for BYTEAOID. 2000-03-20 04:26:01 +00:00
Bruce Momjian
0e1f485f5f Add compatiblity information for bytea. 2000-03-20 04:02:47 +00:00
Hiroshi Inoue
fe8098ed0c Add FORCE keyword to ColID 2000-03-20 00:24:37 +00:00
Tom Lane
966b5337e9 Make use of pre-existing regexp match capability to eliminate redundant
entries in template selection rules.  Also, change alpha-dec-osf pattern
to cope with version info attached to the 'alpha' part.
2000-03-19 22:48:30 +00:00
Tom Lane
42ef928327 Autoconf run 2000-03-19 22:46:56 +00:00
Tom Lane
641c368ae9 Change configure.in to note that since we are using expr(1)'s regex match
command, the entries in template/.similar can really be regular
expressions.  This isn't a new feature, just an observation of what the
code already did.
2000-03-19 22:46:22 +00:00
Tom Lane
b178865891 cash_words_out function truncated its output by 1 character due to
incorrect use of StrNCpy.
2000-03-19 22:10:52 +00:00
Tom Lane
58422dd0af Several calls to StrNCpy incorrectly subtracted 1 from the length arg,
leading to postmaster accepting args 1 shorter than it had room for.
2000-03-19 22:10:08 +00:00
Tom Lane
6a02746550 Change MemSet and StrNCpy to evaluate their arguments only once.
Fix inadequate parenthesization in several other macros.
2000-03-19 22:08:51 +00:00
Bruce Momjian
3e0321f6e9 Proper unpack de_DE.ISO-8859-1 2000-03-19 19:52:44 +00:00
Tom Lane
d6429e552d Minor code rearrangement & doc improvement in eval_const_expressions(). 2000-03-19 18:20:38 +00:00
Michael Meskes
cf6420dd94 *** empty log message *** 2000-03-19 10:04:47 +00:00
Tom Lane
a73b75615f transformExpr() did the Wrong Thing if applied to a SubLink node that
had already been transformed.  This led to failure in examples like
UPDATE table SET fld = (SELECT ...).  Repair this, and revise the
comments to explain that transformExpr has to be robust against this
condition.  Someday we might want to fix the callers so that
transformExpr is never invoked on its own output, but that someday
is not today.
2000-03-19 07:13:58 +00:00
Bruce Momjian
52d0265736 it seems in the beta2 release DBUSERID in pg_dumpall is the _name_ of the
user, so it doesn't need to be translated from the number to the name.

also ``create database ...'' does not take numbers for the encoding, so
the ENCODING variable does not need to be translated to a number, but left
as the text representation.  a patch is supplied to make the changes i
have found to work.  i was successful dumping and reloading my database
after these changes.
-

John M. Flinchbaugh
2000-03-19 02:19:43 +00:00
Tom Lane
cfa929f601 Fix incorrect implementation of log(x) for numeric, as well as
incorrect descriptions of a couple of log-related functions.
I will not force an initdb for this, but log() on a numeric won't
work until you do one...
2000-03-19 01:12:18 +00:00
Tom Lane
440b0fea3d Another go-round with resolution of ambiguous functions and operators.
In function parsing, try for an actual function of the given name and
input types before trying to interpret the function call as a type
coercion request, rather than after.  Before, a function that had the
same name as a type and operated on a binary-compatible type wouldn't
get invoked.  Also, cross-pollinate between func_select_candidates and
oper_select_candidates to ensure that they use as nearly the same
resolution rules as possible.  A few other minor code cleanups too.
2000-03-19 00:19:39 +00:00
Tom Lane
f11d253e25 In can_coerce_type, verify that a possible type-coercion function
actually returns the type it is named for.
2000-03-19 00:15:39 +00:00
Peter Eisentraut
7d392f257b Fixed psql -c "\slashcmd" 2000-03-18 22:48:29 +00:00
Bruce Momjian
f4d452c13c Update bytea type description 2000-03-18 20:50:10 +00:00
Tom Lane
d63e05a638 Improve error message wording in unary_op_error() --- suggest that
problem could be lack of parentheses.  This addresses cases like
X UserOp UserOp Y, which will be parsed as (X UserOp) UserOp Y,
whereas what likely was wanted was X UserOp (UserOp Y).
2000-03-18 19:53:54 +00:00
Tom Lane
f91dd7880f Clean up minor compiler warnings. 2000-03-18 18:57:16 +00:00
Tom Lane
f945f46193 Modify lexing of multi-char operators per pghackers discussion around
16-Mar-00: trailing + or - is not part of the operator unless the operator
also contains characters not present in SQL92-defined operators.  This
solves the 'X=-Y' problem without unduly constraining users' choice of
operator names --- in particular, no existing Postgres operator names
become invalid.

Also, remove processing of // comments, as agreed in the same thread.
2000-03-18 18:03:12 +00:00
Tom Lane
2b23e86447 Repair typos: <xb> EOF rule should be <xh>, likewise <xq> to <xd> 2000-03-18 05:44:21 +00:00
Tom Lane
15115344f0 Just noticed that the grammar actually has no provision for '+' as a
prefix operator :-(.  Bad enough that we have no implementation of
unary plus, but at least with this fix the grammar will take it.
2000-03-18 04:32:35 +00:00
Bruce Momjian
caa6fc1ba2 Add translation of timespan to interval. 2000-03-18 00:33:45 +00:00
Tom Lane
3faa9bab07 Patch possible portability problem: a few places had // style comments,
which is not ANSI C, even though some compilers will take it...
2000-03-17 23:26:36 +00:00
Tom Lane
64ef5c82de Typo correction (// -> /) 2000-03-17 23:17:23 +00:00
Tom Lane
0e314d747e Add safety check on expression nesting depth. Default value is set by
a config.h #define, and the runtime value can be controlled via SET.
2000-03-17 05:29:07 +00:00
Tom Lane
341b328b18 Fix a bunch of minor portability problems and maybe-bugs revealed by
running gcc and HP's cc with warnings cranked way up.  Signed vs unsigned
comparisons, routines declared static and then defined not-static,
that kind of thing.  Tedious, but perhaps useful...
2000-03-17 02:36:41 +00:00
Tom Lane
bc1f117094 Update config.guess and config.sub to latest versions available from
the GNU Autoconf CVS server.
2000-03-16 20:41:17 +00:00
Tom Lane
6a4b7d83f3 Tweak horology regress test to ensure platform-independent ordering of
results in conversions tests.  Update horology-no-DST-before-1970.out.
2000-03-16 17:03:41 +00:00
Bruce Momjian
a7e0ee9a0e Since it has been confirmed working on the bugs list, please apply the
attached patch.

Andreas Kardos
2000-03-16 15:35:34 +00:00
Bruce Momjian
3e4708c45c libpq++ Makefile uses -DDEBUG to turn on debugging trace to
/tmp/trace.out.
However, elog.h uses DEBUG as a log-level flag.  As a result, tracing is
turned on even if the libpq++.so is built with DEBUG commented out in
the Makefile.

This patch changes libpq++ to use DEBUGFILE instead (which is not
defined anywhere else).

Oliver Elphick
2000-03-16 15:34:36 +00:00
Thomas G. Lockhart
9e7166096e Support full POSIX-style time zone: EST+3, PST-3, etc.
We probably support a superset of the spec, but I don't have the spec
 to confirm this.
Update regression tests to include tests for this format.
2000-03-16 14:38:42 +00:00
Thomas G. Lockhart
90c4bab7ea Support full POSIX-style time zone: EST+3, PST-3, etc.
We probably support a superset of the spec, but I don't have the spec
 to confirm this.
Update regression tests to include tests for this format.
Update geometry.out with results from Linux RH 5.2 system
(for last decimal place).
2000-03-16 14:38:31 +00:00
Thomas G. Lockhart
ff0a420c92 Support full POSIX-style time zone: EST+3, PST-3, etc.
We probably support a superset of the spec, but I don't have the spec
 to confirm this.
Update regression tests to include tests for this format.
Fix single-space typo in printed message in regress.sh.
2000-03-16 14:37:33 +00:00
Tatsuo Ishii
0e1043b760 Fixes for char_length() change. 2000-03-16 11:55:43 +00:00
Tatsuo Ishii
805e0c4589 Fixes for char_length() changes. 2000-03-16 11:53:16 +00:00
Tom Lane
d14c8aab99 Turns out that Mazurkiewicz's gripe about 'function inheritance' is
actually a type-coercion problem.  If you have a function defined on
class A, and class B inherits from A, then the function ought to work
on class B as well --- but coerce_type didn't know that.  Now it does.
2000-03-16 06:35:07 +00:00
Tatsuo Ishii
d4a2c86eaf Fix for char_length() changes 2000-03-16 05:07:21 +00:00
Tom Lane
e64a331179 Fix some (more) problems with subselects in rules. Rewriter failed to
mark query as having subselects if a subselect was added from a rule
WHERE condition (as opposed to a rule action).  Also, fix adjustment
of varlevelsup so that it actually has some prospect of working when
inserting an expression containing a subselect into a subquery.
2000-03-16 03:23:18 +00:00
Bruce Momjian
4a3a1e2cf1 Hi,
small changes in formatting.c code (better memory usage ...etc.) and
better
to_char's cache (will fastly for more to_char()s in one query).

(It is probably end of to_char() development in 7.0 cycle.)

                                                Karel
2000-03-16 01:35:41 +00:00
Tom Lane
6358e654ca Update comment obsoleted by Thomas's latest fixes. 2000-03-15 23:42:14 +00:00
Tom Lane
1763a7c1ea Tweak GROUP BY so that it will still accept result-column names, but only
after trying to resolve the item as an input-column name.  This allows us
to be compliant with the SQL92 spec for queries that fall within the spec,
while still accepting the same out-of-spec queries as 6.5 did.  You'll only
lose if there is an output column name that is the same as an input
column name, but doesn't refer to the same value.  7.0 will interpret
such a GROUP BY spec differently than 6.5 did.  No way around that, because
6.5 was clearly not spec compliant.
2000-03-15 23:31:19 +00:00
Michael Meskes
8e0790519a *** empty log message *** 2000-03-15 19:09:10 +00:00
Tom Lane
77f4885393 Fix busted TRANSLATE() code --- it coredumped due to pfree()'ing the
wrong pointer.
2000-03-15 17:24:18 +00:00
Tom Lane
84b9507f78 Remove another incorrect UserAbortTransactionBlock() call. 2000-03-15 07:02:56 +00:00
Tom Lane
fe189063b8 Remove gratuitous and incorrect begin/commit transaction calls in
CREATE DB/DROP DB.  If you didn't think they were wrong, try what
happens when you compile with -DCLOBBER_FREED_MEMORY --- database
name displayed in error messages is trashed, because transaction
abort freed it.  Also, remove trailing periods in error messages,
per our prevailing style.
2000-03-15 06:50:51 +00:00
Tom Lane
c397e264db Fix a couple of missed changes in expected results. 2000-03-15 06:24:58 +00:00
Tom Lane
ce3b489b97 Add 'datetime' -> 'timestamp' conversion to xlateSqlFunc() to ease
the pain of updating apps to 7.0.  Should we also translate some of
the 'datetime_foo' functions that exist in 6.* ?
2000-03-15 05:31:55 +00:00
Tom Lane
a50f2fd76e Repair unintentional damage to MULTIBYTE code. 2000-03-14 23:59:23 +00:00
Tom Lane
34235a295b Cache fmgr lookup data for index's getnext() function in IndexScanDesc,
so that the fmgr lookup only has to happen once per index scan and not
once per tuple.  Seems to save 5% or so of CPU time for an indexscan.
2000-03-14 23:52:01 +00:00
Thomas G. Lockhart
6456810078 Implement column aliases on views "CREATE VIEW name (collist)".
Implement TIME WITH TIME ZONE type (timetz internal type).
Remap length() for character strings to CHAR_LENGTH() for SQL92
 and to remove the ambiguity with geometric length() functions.
Keep length() for character strings for backward compatibility.
Shrink stored views by removing internal column name list from visible rte.
Implement min(), max() for time and timetz data types.
Implement conversion of TIME to INTERVAL.
Implement abs(), mod(), fac() for the int8 data type.
Rename some math functions to generic names:
 round(), sqrt(), cbrt(), pow(), etc.
Rename NUMERIC power() function to pow().
Fix int2 factorial to calculate result in int4.
Enhance the Oracle compatibility function translate() to work with string
 arguments (from Edwin Ramirez).
Modify pg_proc system table to remove OID holes.
2000-03-14 23:06:59 +00:00
Tom Lane
c40a0a1b52 Marginal performance improvement in LockBuffer --- calculate address
of BufferLocks[] entry just once.  Seems to save 10% or so of the
routine's runtime, which'd not be worth worrying about if it weren't
such a hotspot.
2000-03-14 22:46:27 +00:00
Bruce Momjian
e02cde4b0a > I have improved the System V semaphore emulation of the QNX4 port.
Please
> apply the attached patch to
>
> backend/port/qnx4
>
> Andreas Kardos
>
2000-03-14 18:12:06 +00:00
Bruce Momjian
e3fb902991 > To make PostgreSQL compilable on Digital Unix I had to modify the
alpha_cc
> template file. Patch attached.
>
> Andreas Kardos
>
2000-03-14 16:00:22 +00:00
Bruce Momjian
5e3eda41db > Here is an extension of the regression test suite for Digital Unix
(Alpha).
>
> Andreas Kardos
2000-03-14 15:59:39 +00:00
Bruce Momjian
27b3f7c4e0 > Here is an extension of the regression test suite for Digital Unix
(Alpha).
>
2000-03-14 15:55:54 +00:00
Bruce Momjian
ab9b4d8086 > The snprintf stuff in interfaces/ecpg/preproc/Makefile.in is broken.
Please
> apply the attached patch.
>
> Andreas Kardos
>
>
2000-03-14 15:55:17 +00:00
Tatsuo Ishii
44a9639123 Detect postmaster being ready by calling psql -l rathern than
checking postmaster.pid. It's not enough to check the existence
of postmaster.pid since DB recovery might be running.
2000-03-14 08:34:47 +00:00
Tom Lane
6217a8c7ba Fix some bogosities in the code that deals with estimating the fraction
of tuples we are going to retrieve from a sub-SELECT.  Must have been
half asleep when I did this code the first time :-(
2000-03-14 02:23:15 +00:00
Peter Eisentraut
a1642089bf Fixed deficiency where an unterminated (no semicolon) command at end of
psql script would be dropped silently.
2000-03-13 13:46:32 +00:00
Tom Lane
e631df3c1b Extend numeric_round and numeric_trunc to accept negative scale inputs
(ie, allow rounding to occur at a digit position left of the decimal
point).  Apparently this is how Oracle handles it, and there are
precedents in other programming languages as well.
2000-03-13 02:31:13 +00:00
Tom Lane
57cf09591b Remove unnecessary limitations on lengths of bpchar and varchar constants.
Since we detect oversize tuples elsewhere, I see no reason not to allow
string constants that are 'too long' --- after all, they might never get
stored in a tuple at all.
2000-03-13 01:54:07 +00:00
Tom Lane
a84c95634e Performance improvement for lexing long strings: increase flex's
YY_READ_BUF_SIZE, which turns out to have nothing to do with buffer size.
It's just a totally arbitrary upper limit on how much data myinput() is
asked for at one time.
2000-03-13 01:52:06 +00:00
Tom Lane
7cb253ed19 Somehow, the variant NATIONAL CHAR [ VARYING ] was missing from the
set of SQL-standard type names that we accept.
2000-03-12 20:09:41 +00:00
Tom Lane
1879175b18 Fix performance bug in constant-expression simplifier. After finding
that the inputs to a given operator can be recursively simplified to
constants, it was evaluating the operator using the op's *original*
(unsimplified) arg list, so that any subexpressions had to be evaluated
again.  A constant subexpression at depth N got evaluated N times.
Probably not very important in practical situations, but it made us look
real slow in MySQL's 'crashme' test...
2000-03-12 19:32:06 +00:00
Tom Lane
ef3386affe Fix performance problem in fireRIRonSubselect: with nested subqueries,
fireRIRonSubselect was invoked twice at each subselect, leading to an
exponential amount of wasted effort.
2000-03-12 18:57:05 +00:00
Tom Lane
117fa25ae1 Clean up grammar's handling of NULL in expressions: a_expr_or_null is
gone, replaced by plain a_expr.  The few places where we needed to
distinguish NULL from a_expr are now handled by tests inside the actions
rather than by separate productions.  This allows us to accept queries
like 'SELECT 1 + NULL' without requiring parentheses around the NULL.
2000-03-12 00:39:52 +00:00
Tom Lane
e8be8ffaf0 Further tweaking of logic that decides when to materialize an uncorrelated
subplan: do it if subplan has subplans itself, and always do it if the
subplan is an indexscan.  (I originally set it to materialize an indexscan
only if the indexqual is fairly selective, but I dunno what I was
thinking ... an unselective indexscan is still expensive ...)
2000-03-11 23:53:41 +00:00
Tom Lane
bbe1ff7404 Make TypeCategory think that NAME is a member of type
category STRING.  Also, if UNKNOWNOID is passed in, return UNKNOWN_TYPE
not USER_TYPE.
2000-03-11 23:19:50 +00:00
Tom Lane
c9f287e49b Further fixes for bogus list-slinging, scribbling on input, etc in type
coercion code.  I'm beginning to wonder why we have separate candidate
selection routines for functions, operators, and aggregates --- shouldn't
this code all be unified?  But meanwhile,
	SELECT 'a' LIKE 'a';
finally works; the code for dealing with unknown input types for operators
was pretty busted.
2000-03-11 23:17:47 +00:00
Peter Eisentraut
1d75298176 Karel Zakr's revised patch to fix psql prompt for local host connections. 2000-03-11 13:56:24 +00:00
Tom Lane
73f5b0847b exec_simple_check_plan() must not allow a plan having initPlans or
subPlans to be considered 'simple'.  This fixes reported problem with
'return exists (select 1 from foo);' in plpgsql function.
2000-03-11 06:19:00 +00:00
Tom Lane
f3a9d75ebd Finish cleaning up backend's handling of /* ... */ and -- comments,
per pghackers discussion around 20-Feb.  Also add specific error messages
for unterminated comments and unterminated quoted strings.  These things
are nonissues for input coming from psql, but they do matter for input
coming from other front ends.
2000-03-11 05:14:06 +00:00
Tom Lane
a71daab4b4 Change PQconndefaults() to return a malloc'd array, instead of a static
array.  This allows processing of conninfo strings to be made thread-safe,
at the cost of a small memory leak in applications that use
PQconndefaults() and are not updated to free the returned array via
the new PQconninfoFree() function.  But PQconndefaults() is probably not
used very much, so this seems like a good compromise.
2000-03-11 03:08:37 +00:00
Tom Lane
773e84f52a Update perl5's self-test for changed spelling of connection failure
error message.
2000-03-11 02:57:24 +00:00
Michael Meskes
37ae1c0467 *** empty log message *** 2000-03-10 06:48:46 +00:00
Bruce Momjian
2a55934926 Remove SHOW after datestyle reset. 2000-03-09 17:39:34 +00:00
Bruce Momjian
de62329acd Fix for bsdi 4.1 shared libraries. 2000-03-09 17:07:32 +00:00
Michael Meskes
8e7764d9c2 *** empty log message *** 2000-03-09 09:17:16 +00:00