Commit Graph

18639 Commits

Author SHA1 Message Date
75394d3f5b Fix breakage in new-in-7.3 timetz_zone() function: was giving random
results due to doing arithmetic on uninitialized values.  Add some
documentation about the AT TIME ZONE construct.  Update some other
date/time documentation that seemed out of date for 7.3.
2002-11-21 23:31:20 +00:00
ca1d1b79ab Wups, stuck ORDER BY on wrong query while trying to eliminate random
ordering of GROUP BY output due to hash-based aggregation.
2002-11-21 22:26:02 +00:00
8362be35e8 Code review for superuser_reserved_connections patch. Don't try to do
database access outside a transaction; revert bogus performance improvement
in SIBackendInit(); improve comments; add documentation (this part courtesy
Neil Conway).
2002-11-21 06:36:08 +00:00
02d83d7565 NetBSD versions 1.6 and (we hope) later can use the standard geometry
comparison file, instead of geometry-positive-zeros.  Per report from
Patrick Welche.
2002-11-21 04:40:26 +00:00
6c1d4662af Finish implementation of hashed aggregation. Add enable_hashagg GUC
parameter to allow it to be forced off for comparison purposes.
Add ORDER BY clauses to a bunch of regression test queries that will
otherwise produce randomly-ordered output in the new regime.
2002-11-21 00:42:20 +00:00
1b80e0122f Fix a dumb cut and paste error from my last commit and update some of the
jdbc3 metadata responses

 Modified Files:
 	jdbc/org/postgresql/jdbc2/AbstractJdbc2Statement.java
 	jdbc/org/postgresql/jdbc3/AbstractJdbc3DatabaseMetaData.java
2002-11-20 20:37:53 +00:00
54bc3b6b8b Fixed bug reported by Marko Strukelj and Keith Wannamaker. Using executeBatch
on a preparedStatement would reset the prepared statment causing subsequent
uses of the preparedStatement to fail (i.e. the following series of calls
would fail: addBatch() executeBatch() addBatch() executBatch()).  This is
a regression from 7.2 where this worked correctly.  The regression test has
also been modified to explicitly test for this case.

 Modified Files:
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
 	jdbc/org/postgresql/jdbc2/AbstractJdbc2Statement.java
 	jdbc/org/postgresql/test/jdbc2/BatchExecuteTest.java
2002-11-20 07:34:32 +00:00
b60be3f2f8 Add an at-least-marginally-plausible method of estimating the number
of groups produced by GROUP BY.  This improves the accuracy of planning
estimates for grouped subselects, and is needed to check whether a
hashed aggregation plan risks memory overflow.
2002-11-19 23:22:00 +00:00
988dbc58a2 Update regression for ALL missing from CLUSTER. 2002-11-19 17:39:00 +00:00
af26857a27 Most of the code follows the American spelling of the word, which is
"canceled", so I changed the one remaining usage of the British
spelling ("cancelled") over to the former, and updated the translation
files appropriately.

Neil Conway
2002-11-19 17:21:40 +00:00
c4501ec551 Remove ALL from CLUSTER ALL. Use just CLUSTER. 2002-11-18 17:12:07 +00:00
17ac74797a Put back error test for DECLARE CURSOR outside a transaction block ...
but do it correctly now.
2002-11-18 01:17:39 +00:00
810f2cfa32 Suppress compile warning, avoid possible problems with signed vs. unsigned
comparisons in recently-added CheckPointWarning code.
2002-11-18 00:40:46 +00:00
8fbef3b55d Reduce need for palloc/pfree overhead in varstr_cmp() by using fixed-size
buffers on stack for short strings.
2002-11-17 23:01:30 +00:00
00e59b5ec2 Fix CLUSTER regression failure caused by new patch, from Neil Conway 2002-11-16 03:25:22 +00:00
24b130cb89 Add relcache support for system catalogs with attnotnull columns.
The code was not making TupleConstr structs for such catalogs in
several places; with the consequence that the not-null constraint
wasn't actually enforced.  With this change,
INSERT INTO pg_proc VALUES('sdf');
generates a 'Fail to add null value' error instead of a core dump.
2002-11-15 17:18:49 +00:00
4bc3598aa4 Synced parser. 2002-11-15 15:47:44 +00:00
8bc717cb88 New version attached. The following is implemented:
- CLUSTER ALL clusters all the tables that have some index with
  indisclustered set and the calling user owns.
- CLUSTER tablename clusters the named table, using the index with
  indisclustered set.  If no index has the bit set, throws elog(ERROR).
- The multi-relation version (CLUSTER ALL) uses a multitransaction
  approach, similar to what VACUUM does.

Alvaro Herrera
2002-11-15 03:09:39 +00:00
5b7eb4dd45 Clean up psql:
Add simple ALTER DATABASE, ALTER TRIGGER, CHECK POINT, CREATE
CONVERSION, CREATE DOMAIN, CREATE LANGUAGE, DEALLOCATE, DROP CONVERSION,
DROP DOMAIN, DROP LANGUAGE, EXECUTE, PREPARE

Complete CAST in CREATE CAST and DROP CAST but doesn't suggest what
should follow.

Add many more SET / SHOW variables to the list.  Taken from SHOW ALL
output.

Complete a case sensitive search to allow \dD, \dd, \dS, \ds, \h, \H to
complete properly.  But there are no matches, then try a case
insensitive search to allow case conversion.  Add all missing help
options.

\Q<tab>    -> \q
\dD<tab>   -> \dD
\dd<tab>   -> \dd
\D<tab><tab><tab> -> \d (with listing of \d? commands)
sel<tab>   -> SELECT

Rod Taylor
2002-11-15 03:07:52 +00:00
93e54678a3 pg_dump for domain constraints.
Rod Taylor
2002-11-15 02:52:18 +00:00
6b603e67dc Add DOMAIN check constraints.
Rod Taylor
2002-11-15 02:50:21 +00:00
2986aa6a66 Add checkpoint_warning to warn of excessive checkpoints caused by too
few WAL files.
2002-11-15 02:44:57 +00:00
3779f7fd9f Push qual clauses containing subplans to the back of the qual list
at each plan node.  Per gripe from Ross Reedstrom.
2002-11-15 02:36:53 +00:00
c948a3f4b8 Rename hostname_lookup to log_hostname. 2002-11-15 01:57:28 +00:00
aead49667b Rename show_source_port to log_source_port. 2002-11-15 01:40:20 +00:00
559b6c7ced Rename show_btree_build_stats to log_btree_build_stats 2002-11-15 01:26:09 +00:00
d36aa2e885 Rename:
! #show_parser_stats = false
! #show_planner_stats = false
! #show_executor_stats = false
! #show_statement_stats = false

TO:

! #log_parser_stats = false
! #log_planner_stats = false
! #log_executor_stats = false
! #log_statement_stats = false
2002-11-15 00:47:22 +00:00
001d5a7aa5 Rename server_min_messages to log_min_messages. Part of consolidation
of log_ settings.
2002-11-14 23:53:27 +00:00
89caf56b86 Fix planning bug introduced in recent code reorganization for hashed
aggregates: tuple_fraction has to be adjusted before passing it to
compare_fractional_path_costs().
2002-11-14 19:00:36 +00:00
cfae07331c Applied patch submitted by Mats Lofkvist fixing serious threading problem introduced in beta3.
Fixed bug with using setNull()(or setXXX(x, null))  and serverside prepare statements.
Improved error message when using a connection object that has already been closed.


 Modified Files:
 	jdbc/org/postgresql/errors.properties
 	jdbc/org/postgresql/core/Encoding.java
 	jdbc/org/postgresql/core/QueryExecutor.java
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1Connection.java
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
2002-11-14 05:35:45 +00:00
0326dd76aa There was an error in the gcc portion of the patch I sent you. Here is
the  fix.

Billy G. Allie
2002-11-14 04:07:27 +00:00
6fbe58ce79 Allow +1300 as a numeric timezone specifier; we already accept FJST as meaning +1300. 2002-11-13 17:24:05 +00:00
d45cfb4b0b Use cat instead of echo or awk, to avoid portability problems with backslashes. 2002-11-13 16:40:23 +00:00
63e9734542 Update xact.c comments for clarity. 2002-11-13 03:12:05 +00:00
4e5a947d1c Make MOVE/FETCH 0 actually move/fetch 0. Add MOVE LAST to move to end
of cursor.
2002-11-13 00:44:09 +00:00
9b12ab6d5d Add new palloc0 call as merge of palloc and MemSet(0). 2002-11-13 00:39:48 +00:00
aaa3a0caa6 Split MemSet into three parts to constant comparisons can be optimized
away by the compiler;  used by palloc0.
2002-11-13 00:37:06 +00:00
4ee5fa3c74 Update AIX resultmap for horology tests, per Andreas. 2002-11-12 20:02:32 +00:00
6929a1e6ad Improve comment: add note that grotty special case in mdread() is
required by hash index implementation.
2002-11-12 15:26:30 +00:00
90a06dba16 Fix broken GB18030 <--> UTF-8 conversion map 2002-11-12 11:33:40 +00:00
5eb6de5991 Remove NO_MKTIME_BEFORE_1970. I had speculated that it was not needed
anymore given the mktime() workaround now done in DetermineLocalTimeZone.
This has now been confirmed by Robert Bruccoleri for Irix, and I'm going
to extrapolate to AIX as well.
2002-11-12 00:39:08 +00:00
f9b5b41ef9 Code review for ON COMMIT patch. Make the actual on-commit action happen
before commit, not after :-( --- the original coding is not only unsafe
if an error occurs while it's processing, but it generates an invalid
sequence of WAL entries.  Resurrect 7.2 logic for deleting items when
no longer needed.  Use an enum instead of random macros.  Editorialize
on names used for routines and constants.  Teach backend/nodes routines
about new field in CreateTable struct.  Add a regression test.
2002-11-11 22:19:25 +00:00
5ec61f4d2b Fixes bug where join to pg_description was incorrect. Also modifies the
regression test to test for this case.  Patch submitted by Kris Jurka.

 Modified Files:
 	jdbc/org/postgresql/jdbc1/AbstractJdbc1DatabaseMetaData.java
 	jdbc/org/postgresql/test/jdbc2/DatabaseMetaDataTest.java
2002-11-11 07:11:12 +00:00
ad18b10181 Add cast to suppress compile warning on Alphas. 2002-11-11 03:33:38 +00:00
75fee4535d Back out use of palloc0 in place if palloc/MemSet. Seems constant len
to MemSet is a performance boost.
2002-11-11 03:02:20 +00:00
8fee9615cc Merge palloc()/MemSet(0) calls into a single palloc0() call. 2002-11-10 07:25:14 +00:00
78822b328c Add palloc0 function to inline MemSet for newNode call. 2002-11-10 02:17:25 +00:00
7aeab94adf This trivial patch removes 2 unused defines from pg_config.h.in:
FASTBUILD and DATEDEBUG weren't referenced by any other code.

Neil Conway
2002-11-10 00:38:21 +00:00
c600a6ac47 I am attaching a patch file that will replace the previous one. It only
contains the patches to Makefile.global.in and Makefile.unixware.  The
Makefile.unixware patch has been updated to include the contents of
LD_LIBRARY_PATH, if present, to the -rpath (-R) option.  This change
will  simplify configuring and building PostgreSQL on systems that
support  LD_LIBRARY_PATH.  You can set LD_LIBRARY_PATH to include all
the directorys  you want to have searched for additional libraries, run
configure, then run  make.  The paths in LD_LIBRARY_PATH will then be
embedded in the executables  via the -rpath (-R) option to the linker,
and so will not require  LD_LIBRARY_PATH in order to run.

Billy G. Allie
2002-11-10 00:37:28 +00:00
cfd2728100 This patch makes a minor cleanup to the implementation of PERFORM in
PL/PgSQL. Previously, it had been bundled together with the assign
statement implementation, for some reason that wasn't clear to me
(they certainly don't share any code with one another). So I separated
them and made PERFORM a statement like any other. No changes in
functionality.

Along the way, I added some regression tests for PERFORM, added a
bunch more SGML tags to the PL/PgSQL docs, and removed an obsolete
comment relating to the implementation of RETURN NEXT.

Neil Conway
2002-11-10 00:35:58 +00:00