OSDN Git Service
Tom Lane [Wed, 3 Sep 2003 15:49:42 +0000 (15:49 +0000)]
Work around ENOTEMPTY being an alias for EEXIST on some platforms.
Tom Lane [Wed, 3 Sep 2003 14:59:41 +0000 (14:59 +0000)]
Repair problems with to_char() overrunning its input string.
From Karel Zak.
Tom Lane [Tue, 2 Sep 2003 22:10:16 +0000 (22:10 +0000)]
In _bt_check_unique() loop, don't bother applying _bt_isequal() to
killed items; just skip to the next item immediately. Only check for
key equality when we reach a non-killed item or the end of the index
page. This saves key comparisons when there are lots of killed items,
as for example in a heavily-updated table that's not been vacuumed lately.
Seems to be a win for pgbench anyway.
Peter Eisentraut [Tue, 2 Sep 2003 21:45:37 +0000 (21:45 +0000)]
Remove outdated CLI things.
Tom Lane [Tue, 2 Sep 2003 19:04:12 +0000 (19:04 +0000)]
Cause standalone backend (including bootstrap case) to read the GUC
config file if it exists. This was already discussed as being a good
idea, and now seems the cleanest way to deal with initdb-time failures
on machines with small SHMMAX. (The submitted patches instead modified
initdb.sh to pass the correct sizing parameters, but that would still
leave standalone backends prone to failure later. An admin who needs
to use a standalone backend has enough trouble already, he shouldn't
have to manually configure its shmem settings...)
Tom Lane [Tue, 2 Sep 2003 18:13:32 +0000 (18:13 +0000)]
Several fixes for hash indexes that involve changing the on-disk index
layout; therefore, this change forces REINDEX of hash indexes (though
not a full initdb). Widen hashm_ntuples to double so that hash space
management doesn't get confused by more than 4G entries; enlarge the
allowed number of free-space-bitmap pages; replace the useless bshift
field with a useful bmshift field; eliminate 4 bytes of wasted space
in the per-page special area.
Tom Lane [Tue, 2 Sep 2003 03:29:01 +0000 (03:29 +0000)]
Fix a couple typos, add some more comments.
Tom Lane [Tue, 2 Sep 2003 02:18:38 +0000 (02:18 +0000)]
Rewrite hashbulkdelete() to make it amenable to new bucket locking
scheme. A pleasant side effect is that it is *much* faster when deleting
a large fraction of the indexed tuples, because of elimination of
redundant hash_step activity induced by hash_adjscans. Various other
continuing code cleanup.
Peter Eisentraut [Mon, 1 Sep 2003 23:04:49 +0000 (23:04 +0000)]
Do not pass server_encoding to the client.
libpq, talking to an old server, should assume SQL_ASCII as the default
client encoding, because that is what the server will actually use (not
the server encoding).
Peter Eisentraut [Mon, 1 Sep 2003 23:01:49 +0000 (23:01 +0000)]
Clean up after pygresql removal: adjust/remove documentation and remove
unneeded configure work.
Tom Lane [Mon, 1 Sep 2003 20:26:34 +0000 (20:26 +0000)]
Preliminary cleanup for hash index code (doesn't attack the locking problem
yet). Fix a couple of bugs that would only appear if multiple bitmap pages
are used, including a buffer reference leak and incorrect computation of bit
indexes. Get rid of 'overflow address' concept, which accomplished nothing
except obfuscating the code and creating a risk of failure due to limited
range of offset field. Rename some misleadingly-named fields and routines,
and improve documentation.
Tom Lane [Mon, 1 Sep 2003 20:24:49 +0000 (20:24 +0000)]
Add some internals documentation for hash indexes, including an
explanation of the remarkably confusing page addressing scheme.
The file also includes my planned-but-not-yet-implemented revision
of the hash index locking scheme.
Bruce Momjian [Mon, 1 Sep 2003 16:47:58 +0000 (16:47 +0000)]
Add mention of OID wraparound.
Michael Meskes [Mon, 1 Sep 2003 12:37:40 +0000 (12:37 +0000)]
Fixed two bugs in pgtypes library.
Bruce Momjian [Mon, 1 Sep 2003 04:15:51 +0000 (04:15 +0000)]
Rename DoIt to changeVar, for clarity.
Peter Eisentraut [Sun, 31 Aug 2003 17:38:06 +0000 (17:38 +0000)]
Translation update
Peter Eisentraut [Sun, 31 Aug 2003 17:32:24 +0000 (17:32 +0000)]
Add/edit index entries.
Peter Eisentraut [Sun, 31 Aug 2003 17:28:39 +0000 (17:28 +0000)]
Set LC_ALL=C when running collateindex.pl to get predictable sort order.
Bruce Momjian [Sat, 30 Aug 2003 14:59:34 +0000 (14:59 +0000)]
Guard against pgindent changing =- to = -.
Bruce Momjian [Sat, 30 Aug 2003 03:19:47 +0000 (03:19 +0000)]
Fix unixware template --- had spaces around equals.
Tom Lane [Thu, 28 Aug 2003 20:44:02 +0000 (20:44 +0000)]
Make documentation of pg_restore's -N, -o, -r switches bear some
slight resemblance to their actual behavior.
Tom Lane [Thu, 28 Aug 2003 20:21:34 +0000 (20:21 +0000)]
pg_dump and pg_restore -r had managed to diverge on the ordering of
different object types. Fix, and centralize logic to try to prevent
the same mistake in future.
Tom Lane [Thu, 28 Aug 2003 18:59:06 +0000 (18:59 +0000)]
Ensure that FK constraints are dumped after primary/unique constraints,
rather than relying on OID order of pg_constraint entries. Per gripe
from Greg Stark.
Tom Lane [Thu, 28 Aug 2003 13:52:34 +0000 (13:52 +0000)]
Fix stupid typo (mine I suppose) in CopyGetData. Per report from Dave Cramer.
Teodor Sigaev [Thu, 28 Aug 2003 12:23:24 +0000 (12:23 +0000)]
More accuracy works with stopwords in queries
Tom Lane [Wed, 27 Aug 2003 23:29:29 +0000 (23:29 +0000)]
Adjust date/time input parsing code to correctly distinguish the four
SQLSTATE error codes required by SQL99 (invalid format, datetime field
overflow, interval field overflow, invalid time zone displacement value).
Also emit a HINT about DateStyle in cases where it seems appropriate.
Per recent gripes.
Peter Eisentraut [Wed, 27 Aug 2003 22:58:54 +0000 (22:58 +0000)]
Add "override" for make variable JADEFLAGS, since upper directory passes
this variable on the command line.
Peter Eisentraut [Wed, 27 Aug 2003 22:13:35 +0000 (22:13 +0000)]
Major cleanup of SPI chapter
Tom Lane [Wed, 27 Aug 2003 12:44:12 +0000 (12:44 +0000)]
Department of second thoughts: can't reorder merge-join clauses.
Bruce Momjian [Wed, 27 Aug 2003 03:35:35 +0000 (03:35 +0000)]
Update URL for 7.3 changes:
http://developer.postgresql.org/~momjian/upgrade_tips_7.3
PostgreSQL Daemon [Wed, 27 Aug 2003 02:35:38 +0000 (02:35 +0000)]
update to beta2
Peter Eisentraut [Wed, 27 Aug 2003 00:33:34 +0000 (00:33 +0000)]
Share PG_DIAG_* macros between client and server and use them internally.
Tom Lane [Tue, 26 Aug 2003 22:56:51 +0000 (22:56 +0000)]
Push subplan clauses to the back in qual lists for join plans, not
only scan plans. Per observation from Rod Taylor.
Bruce Momjian [Tue, 26 Aug 2003 21:31:11 +0000 (21:31 +0000)]
Call it Linux, not GNU/Linux.
Tom Lane [Tue, 26 Aug 2003 21:15:27 +0000 (21:15 +0000)]
Use separate SQLSTATE codes for file not found/file exists, rather than
lumping them into ERRCODE_UNDEFINED_OBJECT/ERRCODE_DUPLICATE_OBJECT.
This seems reasonable since 'object' was meant to refer to 'object in the
database' and a file is outside the database. Per request from Dave
Cramer.
Bruce Momjian [Tue, 26 Aug 2003 18:35:31 +0000 (18:35 +0000)]
psql's HISTSIZE from .psqlrc do not want to be set so I did it for psql
that HISTSIZE might take effect from my .psqlrc
Andriy Tkachuk
Bruce Momjian [Tue, 26 Aug 2003 18:32:23 +0000 (18:32 +0000)]
This patch adds a new regression test for the UPDATE command. Right
now all that is tested is Rod Taylor's recent addition to allow
this syntax:
UPDATE ... SET <col> = DEFAULT;
If anyone else would like to add more UPDATE tests, go ahead --
I just wanted to write a test for the above functionality, and
couldn't see an existing test that it would be appropriate
to add to.
Neil Conway
Michael Meskes [Tue, 26 Aug 2003 16:09:02 +0000 (16:09 +0000)]
Fixed connect statement with username in variable.
Bruce Momjian [Tue, 26 Aug 2003 15:38:42 +0000 (15:38 +0000)]
Attached is a (very small) patch to make analyze display some
interesting info in verbose mode about the analyzed relation (pages,
rows per block and rows).
Mark Kirkwood
Tom Lane [Tue, 26 Aug 2003 15:38:25 +0000 (15:38 +0000)]
Mop-up for previous change to determine default shared_buffers and
max_connections at initdb time. Get rid of DEF_NBUFFERS and DEF_MAXBACKENDS
macros, which aren't doing anything useful anymore, and put more likely
defaults into postgresql.conf.sample.
Teodor Sigaev [Tue, 26 Aug 2003 10:01:02 +0000 (10:01 +0000)]
fix module name in MODULE_PATHNAME substitution
Barry Lind [Tue, 26 Aug 2003 06:50:39 +0000 (06:50 +0000)]
Attempt to fix setMaxFieldSize() logic that was checked in yesterday.
I think this should fix the problem, but since I don't have a reproducable test
case, I can't be sure. This problem is reported by Kim Ho of redhat, who will
test this fix. This also includes a test case for the original functionality.
Modified Files:
jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
jdbc/org/postgresql/test/jdbc2/ResultSetTest.java
Tom Lane [Mon, 25 Aug 2003 23:30:27 +0000 (23:30 +0000)]
Add the Brazilian time zone abbreviations BRT, BRST, FNT, FNST.
ACT and ACST were already present. AMT and AMST conflict with the
existing entries for Armenia; no change there for the moment.
Tom Lane [Mon, 25 Aug 2003 22:47:34 +0000 (22:47 +0000)]
Allow parsing of time and timetz inputs to accept the documented input
syntax '040506' for '04:05:06', as well as '0405' for '04:05:00'. This
has been broken since 7.2 but was only recently complained of.
Peter Eisentraut [Mon, 25 Aug 2003 21:29:53 +0000 (21:29 +0000)]
Translation updates
Tom Lane [Mon, 25 Aug 2003 16:13:27 +0000 (16:13 +0000)]
Refactor code so that to_date() does not call to_timestamp() and then
perform a timestamp-to-date coercion. Instead both routines share a
subroutine that delivers the parsing result as a struct tm. This avoids
problems with timezone dependency of to_date's result, and should be
at least marginally faster too.
Michael Meskes [Mon, 25 Aug 2003 13:44:00 +0000 (13:44 +0000)]
Synced parser and fixed a bug in error output to log file.
Bruce Momjian [Mon, 25 Aug 2003 04:10:59 +0000 (04:10 +0000)]
Add:
> * Add a libpq function to support Parse/DescribeStatement capability
Bruce Momjian [Mon, 25 Aug 2003 02:48:25 +0000 (02:48 +0000)]
Fix unixware thread test.
Tatsuo Ishii [Mon, 25 Aug 2003 01:46:16 +0000 (01:46 +0000)]
Fix GB18030 to UTF-8 mapping table
Bruce Momjian [Sun, 24 Aug 2003 23:21:05 +0000 (23:21 +0000)]
Add quotes to += of unixware threads define.
Bruce Momjian [Sun, 24 Aug 2003 22:57:21 +0000 (22:57 +0000)]
Add:
* Allow TRUNCATE ... CASCADE/RESTRICT
Barry Lind [Sun, 24 Aug 2003 22:10:09 +0000 (22:10 +0000)]
Applied patches from Oliver Jowett to fix the following bugs:
- adds a finalizer method to AbstractJdbc1Statement to clean up in the case of
poor user code which fails to close the statement object
- fix ant build file to correctly detect dependencies across jdbc1/jdbc2/jdbc3
- fix a coupld of server prepared statement bugs and added regression test for
them
Applied patch from Kim Ho:
- adds support for get/setMaxFieldSize().
Also fixed build.xml to provide a better error message in the event that an
older version of the driver exists in the classpath when trying to build.
Peter Eisentraut [Sun, 24 Aug 2003 21:26:34 +0000 (21:26 +0000)]
Fix translation mistake.
Peter Eisentraut [Sun, 24 Aug 2003 21:18:53 +0000 (21:18 +0000)]
Translation updates
Peter Eisentraut [Sun, 24 Aug 2003 21:02:43 +0000 (21:02 +0000)]
Change warnings for non-existing or pre-existing cursors to errors.
Peter Eisentraut [Sun, 24 Aug 2003 18:36:38 +0000 (18:36 +0000)]
Add macros for error result fields to libpq.
Tatsuo Ishii [Sun, 24 Aug 2003 05:18:04 +0000 (05:18 +0000)]
Fix GB18030 to UTF-8 mapping table
Peter Eisentraut [Sat, 23 Aug 2003 04:25:29 +0000 (04:25 +0000)]
Bring the makefiles up to our conventions.
Peter Eisentraut [Sat, 23 Aug 2003 04:23:38 +0000 (04:23 +0000)]
Enable uninstalling data files that were installed from a subdirectory of
the source tree.
Peter Eisentraut [Sat, 23 Aug 2003 04:22:34 +0000 (04:22 +0000)]
Fix uninstall target.
Peter Eisentraut [Sat, 23 Aug 2003 04:21:59 +0000 (04:21 +0000)]
Correct uninstall target.
Tom Lane [Fri, 22 Aug 2003 20:34:33 +0000 (20:34 +0000)]
Tweak grammar to use FastAppend rather than lappend when constructing
expr_lists. This appears to be the only remaining O(N^2) bottleneck
in processing many-way 'x IN (a,b,c,...)' conditions.
Tom Lane [Fri, 22 Aug 2003 20:26:43 +0000 (20:26 +0000)]
Tweak processing of multiple-index-scan plans to reduce overhead when
handling many-way scans: instead of re-evaluating all prior indexscan
quals to see if a tuple has been fetched more than once, use a hash table
indexed by tuple CTID. But fall back to the old way if the hash table
grows to exceed SortMem.
Teodor Sigaev [Thu, 21 Aug 2003 15:53:21 +0000 (15:53 +0000)]
ISpell info updated
Peter Eisentraut [Wed, 20 Aug 2003 21:10:01 +0000 (21:10 +0000)]
Translation updates
Tom Lane [Tue, 19 Aug 2003 06:06:48 +0000 (06:06 +0000)]
Updates for array documentation, from Joe Conway.
Tom Lane [Tue, 19 Aug 2003 01:13:41 +0000 (01:13 +0000)]
Improve dynahash.c's API so that caller can specify the comparison function
as well as the hash function (formerly the comparison function was hardwired
as memcmp()). This makes it possible to eliminate the special-purpose
hashtable management code in execGrouping.c in favor of using dynahash to
manage tuple hashtables; which is a win because dynahash knows how to expand
a hashtable when the original size estimate was too small, whereas the
special-purpose code was too stupid to do that. (See recent gripe from
Stephan Szabo about poor performance when hash table size estimate is way
off.) Free side benefit: when using string_hash, the default comparison
function is now strncmp() instead of memcmp(). This should eliminate some
part of the overhead associated with larger NAMEDATALEN values.
Tom Lane [Mon, 18 Aug 2003 19:16:02 +0000 (19:16 +0000)]
When compiling a plpgsql trigger function, include the OID of the table
the trigger is attached to in the hashkey. This ensures that we will
create separate compiled trees for each table the trigger is used with,
avoiding possible datatype-mismatch problems if the tables have different
rowtypes. This is essentially the same bug recently identified in plpython
--- though plpgsql doesn't seem as prone to crash when the rowtype changes
underneath it. But failing robustly is no substitute for just working.
Bruce Momjian [Mon, 18 Aug 2003 02:52:45 +0000 (02:52 +0000)]
Done:
> * -Add btree index support for reltime, tinterval, regproc (Tom)
Tom Lane [Sun, 17 Aug 2003 23:43:27 +0000 (23:43 +0000)]
Fix ARRAY[] construct so that in multidimensional case, elements can
be anything yielding an array of the proper kind, not only sub-ARRAY[]
constructs; do subscript checking at runtime not parse time. Also,
adjust array_cat to make array || array comply with the SQL99 spec.
Joe Conway
Tom Lane [Sun, 17 Aug 2003 22:41:12 +0000 (22:41 +0000)]
Clean up locktable init code per recent gripe from Kurt Roeckx.
No change in behavior, but old code would have failed to detect
overrun of MAX_LOCKMODES.
Tom Lane [Sun, 17 Aug 2003 22:19:15 +0000 (22:19 +0000)]
Somebody forgot to include any actual documentation for ADD_MISSING_FROM.
Tom Lane [Sun, 17 Aug 2003 22:09:00 +0000 (22:09 +0000)]
Update documentation to reflect the fact that ORDER BY, GROUP BY, etc
are now driven by the default btree opclass, rather than assuming that
particular operator names have the needed semantics.
Tom Lane [Sun, 17 Aug 2003 22:05:13 +0000 (22:05 +0000)]
Fix broken markup.
Tom Lane [Sun, 17 Aug 2003 19:58:06 +0000 (19:58 +0000)]
Create a 'type cache' that keeps track of the data needed for any particular
datatype by array_eq and array_cmp; use this to solve problems with memory
leaks in array indexing support. The parser's equality_oper and ordering_oper
routines also use the cache. Change the operator search algorithms to look
for appropriate btree or hash index opclasses, instead of assuming operators
named '<' or '=' have the right semantics. (ORDER BY ASC/DESC now also look
at opclasses, instead of assuming '<' and '>' are the right things.) Add
several more index opclasses so that there is no regression in functionality
for base datatypes. initdb forced due to catalog additions.
Bruce Momjian [Sun, 17 Aug 2003 05:24:52 +0000 (05:24 +0000)]
Add to release notes.
Bruce Momjian [Sun, 17 Aug 2003 05:23:13 +0000 (05:23 +0000)]
Add:
> * Allow PREPARE of cursors
Bruce Momjian [Sun, 17 Aug 2003 04:52:41 +0000 (04:52 +0000)]
I almost forgot mark in docs "to_char(interval)" as deprecated function.
This useless routine will removed in 7.5. It's already discussed (see
hackers list archive).
Karel Zak
Bruce Momjian [Sun, 17 Aug 2003 04:50:57 +0000 (04:50 +0000)]
Add:
> * Fix upper()/lower() to work for multibyte encodings
>
Bruce Momjian [Sun, 17 Aug 2003 04:46:59 +0000 (04:46 +0000)]
This patch makes two minor fixes to the docs: (1) fixes a
spelling mistake in the PREPARE ref page (2) Makes some
English more consistent, in the ref pages for some of the
client apps (3) Adds a link to the libpq docs in the
vacuumdb ref page.
Neil Conway
Bruce Momjian [Sun, 17 Aug 2003 04:46:00 +0000 (04:46 +0000)]
There is a misstatement in the CLOSE reference page, now that we
have cursors that might outlive their creating transactions. A
patch is attached that fixes this (suggestions on better wording
are welcome).
Neil Conway
Bruce Momjian [Sun, 17 Aug 2003 04:43:48 +0000 (04:43 +0000)]
Add:
> * Allow pooled connections to query prepared queries
> * Allow pooled connections to close all open WITH HOLD cursors
Bruce Momjian [Sun, 17 Aug 2003 04:39:11 +0000 (04:39 +0000)]
I just noticed that the sample pg_hba.conf in the docs doesn't contain
any use of CIDR masks - here's a patch that adds a couple of sample
lines and associated comments.
Andrew Dunstan
Bruce Momjian [Sun, 17 Aug 2003 04:33:02 +0000 (04:33 +0000)]
The attached patch adds some clarification to the documentation of the
binary format read/created by COPY BINARY. It also mentions the
contrib/binarycopy module.
Lee Kindness.
Bruce Momjian [Sun, 17 Aug 2003 04:28:15 +0000 (04:28 +0000)]
Add:
> * Add ALTER DOMAIN, AGGREGATE, CONVERSION, SEQUENCE ... OWNER TO
>
Bruce Momjian [Sun, 17 Aug 2003 04:18:01 +0000 (04:18 +0000)]
Add:
> * Add TRUNCATE ... CASCADE
Bruce Momjian [Sun, 17 Aug 2003 03:56:16 +0000 (03:56 +0000)]
Add:
> * Add pg_get_acldef(), pg_get_typedefault(), and pg_get_attrdef()
Bruce Momjian [Sun, 17 Aug 2003 03:17:22 +0000 (03:17 +0000)]
(I always forget what the magic numbers 0 through 2 means for the
"syslog" option.)
By the way: The "virtual_host" parameter is a bad name for that
particular option, I think. "Virtual host" signals that PostgreSQL will
behave differently according to which IP address it's contacted (like
Apache's virtual host support which makes the web-server serve different
sites according to different criteria). A better word for the options
would be "tcpip_listen_addr" or something like that.
Troels Arvin
Bruce Momjian [Sun, 17 Aug 2003 03:14:26 +0000 (03:14 +0000)]
Add mention of sort_mem in the restore docs.
Bruce Momjian [Sun, 17 Aug 2003 00:41:46 +0000 (00:41 +0000)]
Update for 7.3 tips URL.
Bruce Momjian [Sun, 17 Aug 2003 00:20:21 +0000 (00:20 +0000)]
Add to libpq changes made by Tom for new protocol.
Bruce Momjian [Sun, 17 Aug 2003 00:14:13 +0000 (00:14 +0000)]
Not needed, already in CVS.
Bruce Momjian [Sat, 16 Aug 2003 23:53:54 +0000 (23:53 +0000)]
Add description of error style.
Bruce Momjian [Sat, 16 Aug 2003 23:33:49 +0000 (23:33 +0000)]
Add mention that Kerberos 4 isn't recommended.
Bruce Momjian [Sat, 16 Aug 2003 15:35:51 +0000 (15:35 +0000)]
Make NEED_REENTRANT_FUNC_NAMES _require_ *_r functions, and add tests to
configure to report if they are not found.
Barry Lind [Fri, 15 Aug 2003 18:45:11 +0000 (18:45 +0000)]
Updated the blob regression test to actually use the getBlob/getClob methods
and test them, in addition to testing the underlying LargeObject API methods.
Modified Files:
jdbc/build.xml jdbc/org/postgresql/test/jdbc2/BlobTest.java
Barry Lind [Fri, 15 Aug 2003 18:36:58 +0000 (18:36 +0000)]
Fixed improper message length for the connection termination message 'X' when
using the V3 protocol.
Modified Files:
jdbc1/AbstractJdbc1Connection.java
Teodor Sigaev [Fri, 15 Aug 2003 13:44:35 +0000 (13:44 +0000)]
Eliminate function start_parse_fh and macro YY_INPUT
Tom Lane [Fri, 15 Aug 2003 00:22:26 +0000 (00:22 +0000)]
Rewrite array_cmp to not depend on deconstruct_array. Should be a little
faster, but more importantly does not leak memory. Still needs more work
though, per my recent note to pgsql-hackers.