OSDN Git Service

pg-rex/syncrep.git
22 years agoSequences are now based on int8, not int4, arithmetic. SERIAL pseudo-type
Tom Lane [Thu, 16 Aug 2001 20:38:56 +0000 (20:38 +0000)]
Sequences are now based on int8, not int4, arithmetic.  SERIAL pseudo-type
has an alias SERIAL4 and a sister SERIAL8.  SERIAL8 is just the same
except the created column is type int8 not int4.
initdb forced.  Note this also breaks any chance of pg_upgrade from 7.1,
unless we hack up pg_upgrade to drop and recreate sequences.  (Which is
not out of the question, but I don't wanna do it.)

22 years agoAdd new MD5 pg_hba.conf keyword. Prevent fallback to crypt.
Bruce Momjian [Thu, 16 Aug 2001 16:24:16 +0000 (16:24 +0000)]
Add new MD5 pg_hba.conf keyword.  Prevent fallback to crypt.

22 years agoThis patch fixes the well-known but unfixed bug that fetchone() always returns
Bruce Momjian [Thu, 16 Aug 2001 15:21:16 +0000 (15:21 +0000)]
This patch fixes the well-known but unfixed bug that fetchone() always returns
the first result in the DB-API compliant wrapper. It turned out that the bug
was way down in the C code.

Gerhard Häring

22 years agoFix typo. pg_dump -B --> pg_dump -b
Tatsuo Ishii [Thu, 16 Aug 2001 04:30:41 +0000 (04:30 +0000)]
Fix typo. pg_dump -B --> pg_dump -b

22 years agoRemove protocol version change. Try MD5 first, then crypt() on all clients.
Bruce Momjian [Thu, 16 Aug 2001 04:27:18 +0000 (04:27 +0000)]
Remove protocol version change.  Try MD5 first, then crypt() on all clients.

22 years agoUse malloc/palloc as appropriate.
Bruce Momjian [Wed, 15 Aug 2001 23:22:49 +0000 (23:22 +0000)]
Use malloc/palloc as appropriate.

22 years agoMove md5.h contents to crypt.h.
Bruce Momjian [Wed, 15 Aug 2001 21:08:21 +0000 (21:08 +0000)]
Move md5.h contents to crypt.h.

22 years agoRemove unneeded patch.
Bruce Momjian [Wed, 15 Aug 2001 19:42:34 +0000 (19:42 +0000)]
Remove unneeded patch.

22 years agoRemove UNDO dicussion. It was inconclusive, and too large.
Bruce Momjian [Wed, 15 Aug 2001 19:41:59 +0000 (19:41 +0000)]
Remove UNDO dicussion.  It was inconclusive, and too large.

22 years agoJust a test.
Bruce Momjian [Wed, 15 Aug 2001 19:41:08 +0000 (19:41 +0000)]
Just a test.

22 years agoupdate.
Bruce Momjian [Wed, 15 Aug 2001 19:40:52 +0000 (19:40 +0000)]
update.

22 years agoupdate
Bruce Momjian [Wed, 15 Aug 2001 19:24:55 +0000 (19:24 +0000)]
update

22 years agoupdate
Bruce Momjian [Wed, 15 Aug 2001 19:24:40 +0000 (19:24 +0000)]
update

22 years agoAdd new files.
Bruce Momjian [Wed, 15 Aug 2001 18:42:55 +0000 (18:42 +0000)]
Add new files.

22 years agoUse MD5 for wire protocol encryption for >= 7.2 client/server.
Bruce Momjian [Wed, 15 Aug 2001 18:42:16 +0000 (18:42 +0000)]
Use MD5 for wire protocol encryption for >= 7.2 client/server.
Allow pg_shadow to be MD5 encrypted.
Add ENCRYPTED/UNENCRYPTED option to CREATE/ALTER user.
Add password_encryption postgresql.conf option.
Update wire protocol version to 2.1.

22 years agoAdd convert.
Tatsuo Ishii [Wed, 15 Aug 2001 07:10:12 +0000 (07:10 +0000)]
Add convert.

22 years agoAdd conver/convert2 functions. They are similar to the SQL99's convert.
Tatsuo Ishii [Wed, 15 Aug 2001 07:07:40 +0000 (07:07 +0000)]
Add conver/convert2 functions. They are similar to the SQL99's convert.

22 years agoPut back changes I overwrote packaging 7.1.3.
Bruce Momjian [Tue, 14 Aug 2001 23:38:39 +0000 (23:38 +0000)]
Put back changes I overwrote packaging 7.1.3.

22 years agoPut back changes I overwrote in packaging 7.1.3.
Bruce Momjian [Tue, 14 Aug 2001 23:38:20 +0000 (23:38 +0000)]
Put back changes I overwrote in packaging 7.1.3.

22 years agosum() on int2 and int4 columns now uses an int8, not numeric, accumulator
Tom Lane [Tue, 14 Aug 2001 22:21:59 +0000 (22:21 +0000)]
sum() on int2 and int4 columns now uses an int8, not numeric, accumulator
for speed reasons; its result type also changes to int8.  avg() on these
datatypes now accumulates the running sum in int8 for speed; but we still
deliver the final result as numeric, so that fractional accuracy is
preserved.

count() now counts and returns in int8, not int4.  I am a little nervous
about this possibly breaking users' code, but there didn't seem to be
a strong sentiment for avoiding the problem.  If we get complaints during
beta, we can change count back to int4 and add a "count8" aggregate.
For that matter, users can do it for themselves with a simple CREATE
AGGREGATE command; the int4inc function is still present, so no C hacking
is needed.

Also added max() and min() aggregates for OID that do proper unsigned
comparison, instead of piggybacking on int4 aggregates.

initdb forced.

22 years agoAdd HISTORY for 7.1.3. Packaging done.
Bruce Momjian [Tue, 14 Aug 2001 21:21:40 +0000 (21:21 +0000)]
Add HISTORY for 7.1.3.  Packaging done.

22 years agoFix brokenness of nested EXCEPT/INTERSECT queries. prepunion was being
Tom Lane [Tue, 14 Aug 2001 17:12:57 +0000 (17:12 +0000)]
Fix brokenness of nested EXCEPT/INTERSECT queries.  prepunion was being
a tad sloppy about generating the targetlist for some nodes, by generating
a tlist entry that claimed to be a constant when the value wasn't actually
constant.  This caused setrefs.c to do the wrong thing later on.

22 years agoMake LANCOMPILER clause in CREATE LANGUAGE optional. Allow "identifier"
Peter Eisentraut [Mon, 13 Aug 2001 21:34:54 +0000 (21:34 +0000)]
Make LANCOMPILER clause in CREATE LANGUAGE optional.  Allow "identifier"
syntax for language names (instead of 'string').

createlang now handles the case where a second language uses the same call
handler as an already installed language (e.g., plperl/plperlu).

droplang now handles the reverse case, i.e., dropping a language where
the call handler is still used by another language.  Moreover, droplang
can now be used to drop any user-defined language, not just the supplied
ones.

22 years agoMake hashjoin give the right answer with toasted input data.
Tom Lane [Mon, 13 Aug 2001 19:50:11 +0000 (19:50 +0000)]
Make hashjoin give the right answer with toasted input data.

22 years agoAdd comparison operators and btree indexing support for type bytea.
Tom Lane [Mon, 13 Aug 2001 18:45:36 +0000 (18:45 +0000)]
Add comparison operators and btree indexing support for type bytea.
From Joe Conway.

22 years agoPatch NAME section of reference pages.
Bruce Momjian [Mon, 13 Aug 2001 15:24:46 +0000 (15:24 +0000)]
Patch NAME section of reference pages.

22 years agoMake ALTER TABLE RENAME on a view rename the view's on-select rule too.
Tom Lane [Sun, 12 Aug 2001 21:35:19 +0000 (21:35 +0000)]
Make ALTER TABLE RENAME on a view rename the view's on-select rule too.
Needed to keep pg_dump from getting confused.

22 years agoMake pg_dump handle the new privileges.
Peter Eisentraut [Sun, 12 Aug 2001 19:02:39 +0000 (19:02 +0000)]
Make pg_dump handle the new privileges.
Don't hardcode the maximum accepted server version, use PG_VERSION instead.
Install a notice processor so notices are handled like error messages.
Word smithing.

22 years agoClean up some warnings and bugs and make things build easier.
Peter Eisentraut [Sat, 11 Aug 2001 10:52:09 +0000 (10:52 +0000)]
Clean up some warnings and bugs and make things build easier.

22 years agoCREATE VIEW with optional column name list wasn't quite right for the
Tom Lane [Sat, 11 Aug 2001 00:02:13 +0000 (00:02 +0000)]
CREATE VIEW with optional column name list wasn't quite right for the
case where there are resjunk columns in the query.

22 years agoDocument column-name-list option of CREATE VIEW ... which has been there
Tom Lane [Fri, 10 Aug 2001 23:49:20 +0000 (23:49 +0000)]
Document column-name-list option of CREATE VIEW ... which has been there
awhile, but the man page didn't know it.

22 years agoRevert removal of relhaspkey support; fix unnecessary use of pg_index.oid.
Tom Lane [Fri, 10 Aug 2001 23:29:46 +0000 (23:29 +0000)]
Revert removal of relhaspkey support; fix unnecessary use of pg_index.oid.

22 years agoMention that COPY cannot be used on a view (per recent suggestion).
Tom Lane [Fri, 10 Aug 2001 23:09:30 +0000 (23:09 +0000)]
Mention that COPY cannot be used on a view (per recent suggestion).
Other small improvements.

22 years agoSince PQoidStatus is deprecated, we should probably stop using it in
Tom Lane [Fri, 10 Aug 2001 22:50:10 +0000 (22:50 +0000)]
Since PQoidStatus is deprecated, we should probably stop using it in
our own code ...

22 years agoupdate
Peter Eisentraut [Fri, 10 Aug 2001 20:58:09 +0000 (20:58 +0000)]
update

22 years agoCleanup some minor oversights in optional-OIDs stuff.
Tom Lane [Fri, 10 Aug 2001 20:52:25 +0000 (20:52 +0000)]
Cleanup some minor oversights in optional-OIDs stuff.

22 years agoMake OIDs optional, per discussions in pghackers. WITH OIDS is still the
Tom Lane [Fri, 10 Aug 2001 18:57:42 +0000 (18:57 +0000)]
Make OIDs optional, per discussions in pghackers.  WITH OIDS is still the
default, but OIDS are removed from many system catalogs that don't need them.
Some interesting side effects: TOAST pointers are 20 bytes not 32 now;
pg_description has a three-column key instead of one.

Bugs fixed in passing: BINARY cursors work again; pg_class.relhaspkey
has some usefulness; pg_dump dumps comments on indexes, rules, and
triggers in a valid order.

initdb forced.

22 years agoFix collateral damage from error message cleanup.
Tom Lane [Fri, 10 Aug 2001 18:40:53 +0000 (18:40 +0000)]
Fix collateral damage from error message cleanup.

22 years agomessage refinements
Peter Eisentraut [Fri, 10 Aug 2001 15:49:39 +0000 (15:49 +0000)]
message refinements

22 years agoNo longer need TODO.detail/lock.
Bruce Momjian [Fri, 10 Aug 2001 15:43:49 +0000 (15:43 +0000)]
No longer need TODO.detail/lock.

22 years agoThe portion about the PQgetssl() function in the libpq documentation
Bruce Momjian [Fri, 10 Aug 2001 14:42:47 +0000 (14:42 +0000)]
The portion about the PQgetssl() function in the libpq documentation
appears to be duplicated (two identical <listitems> right after each
other). Here is a quick patch to remove one instance of it.

Magnus Hagander

22 years agoAttached is a patch to remove some redundant code in the JDBC driver.
Bruce Momjian [Fri, 10 Aug 2001 14:42:07 +0000 (14:42 +0000)]
Attached is a patch to remove some redundant code in the JDBC driver.

* Merges identical code from org.postgresql.jdbc[1|2].Statement into
  org.postgresql.Statement.
* Moves escapeSQL() method from Connection to Statement (the only place
  it's used)
* Minor cleanup of the new isolation level stuff.
* Minor cleanup of version string handling.

Anders Bengtsson

22 years ago1. null-safe interface to GiST
Bruce Momjian [Fri, 10 Aug 2001 14:34:28 +0000 (14:34 +0000)]
1. null-safe interface to GiST
   (as proposed in http://fts.postgresql.org/db/mw/msg.html?mid=1028327)

2. support for 'pass-by-value' arguments - to test this
   we used special opclass for int4 with values in range [0-2^15]
   More testing will be done after resolving problem with
   index_formtuple and implementation of B-tree using GiST

3. small patch to contrib modules (seg,cube,rtree_gist,intarray) -
   mark functions as 'isstrict' where needed.

Oleg Bartunov

22 years agoPatch to LOCK multiple tables in one LOCK command.
Bruce Momjian [Fri, 10 Aug 2001 14:30:15 +0000 (14:30 +0000)]
Patch to LOCK multiple tables in one LOCK command.

Neil Padgett

22 years agoUpdate TODO list.
Bruce Momjian [Fri, 10 Aug 2001 14:29:30 +0000 (14:29 +0000)]
Update TODO list.

22 years agoUpdate TODO list.
Bruce Momjian [Fri, 10 Aug 2001 14:23:33 +0000 (14:23 +0000)]
Update TODO list.

22 years agoAdd new files for the preparation.
Hiroshi Inoue [Fri, 10 Aug 2001 01:24:15 +0000 (01:24 +0000)]
Add new files for the preparation.

22 years agoThis should be the right expected file.
Peter Eisentraut [Thu, 9 Aug 2001 21:03:11 +0000 (21:03 +0000)]
This should be the right expected file.

22 years agoUse format_type sibling in backend error messages, so the user sees
Peter Eisentraut [Thu, 9 Aug 2001 18:28:18 +0000 (18:28 +0000)]
Use format_type sibling in backend error messages, so the user sees
consistent type naming.

22 years agoNo longer a need for -Wno-error
Peter Eisentraut [Thu, 9 Aug 2001 18:13:23 +0000 (18:13 +0000)]
No longer a need for -Wno-error

22 years agoUpdate branding for 7.1.3, no HISTORY yet.
Bruce Momjian [Thu, 9 Aug 2001 16:38:59 +0000 (16:38 +0000)]
Update branding for 7.1.3, no HISTORY yet.

22 years agocorrections from the DocNotes
Peter Eisentraut [Thu, 9 Aug 2001 16:20:43 +0000 (16:20 +0000)]
corrections from the DocNotes

22 years agoFix Cygwin build, per Jason Tishler.
Tom Lane [Thu, 9 Aug 2001 13:52:06 +0000 (13:52 +0000)]
Fix Cygwin build, per Jason Tishler.

22 years agoAdd TOAST table to the set of relkinds known to \d.
Tom Lane [Thu, 9 Aug 2001 03:32:16 +0000 (03:32 +0000)]
Add TOAST table to the set of relkinds known to \d.

22 years ago0 -> O
Peter Eisentraut [Wed, 8 Aug 2001 13:30:20 +0000 (13:30 +0000)]
0 -> O

22 years agosome clarifications inspired by the DocNotes
Peter Eisentraut [Tue, 7 Aug 2001 22:41:49 +0000 (22:41 +0000)]
some clarifications inspired by the DocNotes

22 years agoUpdate README for fuzzystrmatch description.
Bruce Momjian [Tue, 7 Aug 2001 18:18:33 +0000 (18:18 +0000)]
Update README for fuzzystrmatch description.

22 years agoSorry - I should have gotten to this sooner. Here's a patch which you should
Bruce Momjian [Tue, 7 Aug 2001 18:16:01 +0000 (18:16 +0000)]
Sorry - I should have gotten to this sooner. Here's a patch which you should
be able to apply against what you just committed. It rolls soundex into
fuzzystrmatch.

Remove soundex/metaphone and merge into fuzzystrmatch.

Joe Conway

22 years agoI think you replaced too many things with put(...
Bruce Momjian [Tue, 7 Aug 2001 17:45:29 +0000 (17:45 +0000)]
I think you replaced too many things with put(...

Here is a context diff from latest cvs

And I see why you couldn't apply the last diff, the setCatalog diff has
been backed out, that was causing the compile problem in the first
place.

This following one needs to be applied to allow the current cvs to
compile

Dave Cramer

22 years agoA small patch to keep postgres working on the latest BeOS.
Bruce Momjian [Tue, 7 Aug 2001 16:56:17 +0000 (16:56 +0000)]
A small patch to keep postgres working on the latest BeOS.

Cyril VELTER

22 years agoPer this discussion, here's a patch to implement both levenshtein() and
Bruce Momjian [Tue, 7 Aug 2001 16:47:43 +0000 (16:47 +0000)]
Per this discussion, here's a patch to implement both levenshtein() and
metaphone() in a contrib. There seem to be a fair number of different
approaches to both of these algorithms. I used the simplest case for
levenshtein which has a cost  of 1 for any character insertion, deletion, or
substitution. For metaphone, I adapted the same code from CPAN that the PHP
folks did.

A couple of questions:
1. Does it make sense to fold the soundex contrib together with this one?

2. I was debating trying to add multibyte support to levenshtein (it would
make no sense at all for metaphone), but a quick search through the contrib
directory found no hits on the word MULTIBYTE. Should worry about adding
multibyte support to levenshtein()?

Joe Conway

22 years agoFix thinko (revealed by gcc warning).
Tom Lane [Tue, 7 Aug 2001 15:55:16 +0000 (15:55 +0000)]
Fix thinko (revealed by gcc warning).

22 years agoRussian translation by Serguei Mokhov
Peter Eisentraut [Tue, 7 Aug 2001 11:41:17 +0000 (11:41 +0000)]
Russian translation by Serguei Mokhov

22 years agoCzech translation for psql from Karel Zak
Peter Eisentraut [Tue, 7 Aug 2001 11:28:18 +0000 (11:28 +0000)]
Czech translation for psql from Karel Zak

22 years agoAdd a check for end of client connection before expecting a password
Peter Eisentraut [Tue, 7 Aug 2001 10:44:16 +0000 (10:44 +0000)]
Add a check for end of client connection before expecting a password
response, to avoid noise in the server log.

22 years agoDoesn't seem to be much point in keeping this README up to date anymore,
Tom Lane [Mon, 6 Aug 2001 22:55:00 +0000 (22:55 +0000)]
Doesn't seem to be much point in keeping this README up to date anymore,
since it's completely redundant with regress.sgml.  I think we agreed to
remove it awhile back, actually, but no one got around to doing it.

22 years agoUpdate now-obsolete example of platform-specific regression comparison
Tom Lane [Mon, 6 Aug 2001 22:53:26 +0000 (22:53 +0000)]
Update now-obsolete example of platform-specific regression comparison
files.

22 years agoUse a fixed error message for ERANGE to avoid duplicate test result files.
Peter Eisentraut [Mon, 6 Aug 2001 21:55:16 +0000 (21:55 +0000)]
Use a fixed error message for ERANGE to avoid duplicate test result files.
Add some resultmap entries for SCO OpenServer.

22 years agoSeems like a bad idea to free() a string we are about to use in an
Tom Lane [Mon, 6 Aug 2001 18:17:42 +0000 (18:17 +0000)]
Seems like a bad idea to free() a string we are about to use in an
error message.

22 years agoModify partial-index-predicate applicability tester to test whether
Tom Lane [Mon, 6 Aug 2001 18:09:45 +0000 (18:09 +0000)]
Modify partial-index-predicate applicability tester to test whether
clauses are equal(), before trying to match them up using btree opclass
inference rules.  This allows it to recognize many simple cases involving
non-btree operations, for example 'x IS NULL'.  Clean up code a little.

22 years agoEvaluate LIMIT/OFFSET expressions with ExecEvalExprSwitchContext, not
Tom Lane [Mon, 6 Aug 2001 18:05:07 +0000 (18:05 +0000)]
Evaluate LIMIT/OFFSET expressions with ExecEvalExprSwitchContext, not
ExecEvalExpr, to avoid possible memory leak.

22 years agoDo not pre-expand localedir as substituted in the makefile, so that 'make
Peter Eisentraut [Mon, 6 Aug 2001 15:46:44 +0000 (15:46 +0000)]
Do not pre-expand localedir as substituted in the makefile, so that 'make
install prefix=elsewhere' works.

22 years agoupdate from upstream
Peter Eisentraut [Mon, 6 Aug 2001 13:58:26 +0000 (13:58 +0000)]
update from upstream

22 years agoCheck that the data directory does not have group or world access; remove
Peter Eisentraut [Mon, 6 Aug 2001 13:45:15 +0000 (13:45 +0000)]
Check that the data directory does not have group or world access; remove
a similar check on postgresql.conf.

22 years agoAdd QueryIsRule gram.y reset.
Bruce Momjian [Mon, 6 Aug 2001 05:42:48 +0000 (05:42 +0000)]
Add QueryIsRule gram.y reset.

22 years agoSurely the pg_stat interrogation functions must not be marked proiscachable.
Tom Lane [Mon, 6 Aug 2001 01:25:32 +0000 (01:25 +0000)]
Surely the pg_stat interrogation functions must not be marked proiscachable.

22 years agoShow index predicate when doing \d on a partial index.
Tom Lane [Sun, 5 Aug 2001 22:13:46 +0000 (22:13 +0000)]
Show index predicate when doing \d on a partial index.

22 years agoEndeavor to make pgstats buffer process (a) safe and (b) useful.
Tom Lane [Sun, 5 Aug 2001 02:06:50 +0000 (02:06 +0000)]
Endeavor to make pgstats buffer process (a) safe and (b) useful.
Make sure it exits immediately when collector process dies --- in old code,
buffer process would hang around and compete with the new buffer process
for packets.  Make sure it doesn't block on writing the pipe when the
collector falls more than a pipeload behind.  Avoid leaking pgstats FDs
into every backend.

22 years agoRemove no-longer-needed fcntl call (I'm not sure it *ever* did anything
Tom Lane [Sun, 5 Aug 2001 01:22:16 +0000 (01:22 +0000)]
Remove no-longer-needed fcntl call (I'm not sure it *ever* did anything
useful, in fact).

22 years agoBack out LOCK A,B,C patch at Tom's suggestion.
Bruce Momjian [Sat, 4 Aug 2001 22:01:39 +0000 (22:01 +0000)]
Back out LOCK A,B,C patch at Tom's suggestion.

22 years agoCompile fix for jdbc1.
Bruce Momjian [Sat, 4 Aug 2001 19:46:56 +0000 (19:46 +0000)]
Compile fix for jdbc1.

22 years agoThis patch is because Hurd does not support NOFILE. It is against current
Bruce Momjian [Sat, 4 Aug 2001 19:42:34 +0000 (19:42 +0000)]
This patch is because Hurd does not support NOFILE.  It is against current
cvs.

The Debian bug report says, "The upstream source makes use of NOFILE
unconditionalized.  As the Hurd doesn't have an arbitrary limit on the
number of open files, this is not defined.  But _SC_OPEN_MAX works fine
and returns 1024 (applications can increase this as they want), so I
suggest the below diff.  Please forward this upstream, too."

Oliver Elphick

22 years agoThis patch adds the following to the FTI module:
Bruce Momjian [Sat, 4 Aug 2001 19:41:00 +0000 (19:41 +0000)]
This patch adds the following to the FTI module:

* The ability to index more than one column in a table with a single
trigger.
* All uses of sprintf changed to snprintf to prevent users from crashing
Postgres.
* Error messages made more consistent
* Some changes made to bring it into line with coding requirements for
triggers specified in the docs.  (ie. check you're a trigger before casting
your context)
* The perl script that generate indices has been updated to support indexing
multiple columns in a table.
* Fairly well tested in our development environment indexing a food
database's brand and description fields.  The size of the fti index is
around 300,000 rows.
* All docs and examples upgraded.  This includes specifying more efficient
index usage that was specified before, better examples that don't produce
duplicates, etc.

Christopher Kings-Lynne & Brett

22 years agoAdd LOCK A,B,C functionality as LOCK A;LOCK B;LOCK C; as agreed.
Bruce Momjian [Sat, 4 Aug 2001 19:39:00 +0000 (19:39 +0000)]
Add LOCK A,B,C functionality as LOCK A;LOCK B;LOCK C; as agreed.

Neil Padgett

22 years agoLooks okay in a quick glance, except error message spelling is poor:
Bruce Momjian [Sat, 4 Aug 2001 19:36:45 +0000 (19:36 +0000)]
Looks okay in a quick glance, except error message spelling is poor:

! #define ARRISNULL(x) ( (x) ? ( ( ARR_NDIM(x) == NDIM ) ? ( ( ARRNELEMS( x ) )
? 0 : 1 ) : ( ( ARR_NDIM(x) ) ? (elog(ERROR,"Array is not one-dimentional: %d di
mentions", ARR_NDIM(x)),1) : 1 ) ) : 1 )

Should be "one-dimensional" and "dimensions".  Bruce, would you fix that
when you apply it?

Tom

22 years ago1. Fixed error with empty array ( '{}' ),
Bruce Momjian [Sat, 4 Aug 2001 19:35:32 +0000 (19:35 +0000)]
1. Fixed error with empty array ( '{}' ),
   test data changed to include such data
2. Test a dimension of an array ( we support only one-dimension)

Oleg Bartunov

22 years ago> 1) When a row is retrieved, and then a SQL_FETCH_FIRST is issued, the
Bruce Momjian [Sat, 4 Aug 2001 19:33:49 +0000 (19:33 +0000)]
> 1) When a row is retrieved, and then a SQL_FETCH_FIRST is issued, the
check
> in convert.c
> does not consider the fact that the value in the field has been altered to
> be a '1' if the
> backend handed it a 't'.  The net result being that the first row on any
> subsequent queries
> has all it's boolean set to 0.

Aidan Mountford

22 years agoAttached is a patch that does the following:
Bruce Momjian [Sat, 4 Aug 2001 19:32:04 +0000 (19:32 +0000)]
Attached is a patch that does the following:

1) improves performance of commit/rollback by reducing number of round
trips to the server
2) uses 7.1 functionality for setting the transaction isolation level
3) backs out a patch from 11 days ago because that code failed to
compile under jdk1.1

Details:

1)  The old code was doing the following for each commit:
   commit
   begin
   set transaction isolation level xxx
thus a call to commit was performing three round trips to the database.
  The new code does this in one round trip as:
   commit; begin; set transaction isolation level xxx

In a simple test program that performs 1000 transactions (where each
transaction does one simple select inside that transaction) has the
following before and after timings:

Client and Server on same machine

old         new
---         ---
1.877sec    1.405sec   25.1% improvement

Client and Server on different machines
old         new
---         ---
4.184sec    2.927sec   34.3% improvement

(all timings are an average of four different runs)

2)  The driver was using 'set transaction isolation level xxx' at the
begining of each transaction, instead of using the new 7.1 syntax of
'set session characteristics as transaction isolation level xxx' which
only needs to be done once instead of for each transaction.  This is
done conditionally (i.e. if server is 7.0 or older do the old behaviour,
else do the new behaviour) to not break backward compatibility.  This
also required the movement of some code to check/test database version
numbers from the DatabaseMetaData object to the Connection object.

3) Finally while testing, I discovered that the code that was checked in
  11 days ago actually didn't compile.  The code in the patch for
Connection.setCatalog() used Properties.setProperty() which only exists
in JDK1.2 or higher.  Thus compiling the JDBC1 driver failed as this
method doesn't exist.  Thus I backed out that patch.

Barry Lind

22 years agoFix handling of SIGCHLD, per recent pghackers discussion: on some
Tom Lane [Sat, 4 Aug 2001 00:14:43 +0000 (00:14 +0000)]
Fix handling of SIGCHLD, per recent pghackers discussion: on some
platforms system(2) gets confused unless the signal handler is set to
SIG_DFL, not SIG_IGN.  pgstats.c now uses pqsignal() as it should,
not signal().  Also, arrange for the stats collector process to show
a reasonable ID in 'ps', rather than looking like a postmaster.

22 years agoFix residual breakage from Windows socket-errno patch: the routines
Tom Lane [Fri, 3 Aug 2001 22:11:39 +0000 (22:11 +0000)]
Fix residual breakage from Windows socket-errno patch: the routines
that should use regular errno, not WSAGetLastError(), now do so again.

22 years agoFix win32.mak to support MULTIBYTE build --- it was pulling in several
Tom Lane [Fri, 3 Aug 2001 22:09:55 +0000 (22:09 +0000)]
Fix win32.mak to support MULTIBYTE build --- it was pulling in several
backend files that it shouldn't anymore, causing compile failures.
Per report from Darko Prenosil.

22 years agoFor some reason, CREATE TYPE has only accepted alignment specifications
Tom Lane [Fri, 3 Aug 2001 20:47:40 +0000 (20:47 +0000)]
For some reason, CREATE TYPE has only accepted alignment specifications
of 'int4' and 'double'.  Add 'char' and 'int2' to allow user-defined types
to access the full set of supported alignments.

22 years agoFix pg_dump so that comments on views are dumped in the proper sequence.
Tom Lane [Fri, 3 Aug 2001 19:43:05 +0000 (19:43 +0000)]
Fix pg_dump so that comments on views are dumped in the proper sequence.
Dump the alignment and storage information for user-defined types (how'd
that manage to slip through the cracks?), and don't dump 'shell' types
that don't have typisdefined set.  Fix badly broken logic for dependencies
of type definitions (did not work for more than one user-defined type...).
Avoid memory leakage within pg_dump by being more careful to release
storage used by PQExpBuffer objects.

22 years agoClean up various memory leaks within plpgsql, and re-enable the
Tom Lane [Thu, 2 Aug 2001 21:31:23 +0000 (21:31 +0000)]
Clean up various memory leaks within plpgsql, and re-enable the
exec_eval_simple_expr shortcut, which was diked out in 7.1 because it
leaked too much space.  CVS tip now leaks no memory in Chris Ruprecht's
example, which formerly leaked to the tune of 500 MB.  (Much of this
is work that Jan already did; this commit just cleans up around the
edges.)

22 years agoAdd a SPI_copytupledesc function that parallels SPI_copytuple --- ie,
Tom Lane [Thu, 2 Aug 2001 18:08:43 +0000 (18:08 +0000)]
Add a SPI_copytupledesc function that parallels SPI_copytuple --- ie,
it copies the tupdesc into upper-executor memory.  This is necessary
for returning tuple descriptors without leaking all of lower exec memory.

22 years agoTweak memory context sizing for saved SPI plans.
Tom Lane [Thu, 2 Aug 2001 16:05:23 +0000 (16:05 +0000)]
Tweak memory context sizing for saved SPI plans.

22 years agoFix some poor decisions about sizing of trigger-related memory contexts.
Tom Lane [Thu, 2 Aug 2001 15:59:28 +0000 (15:59 +0000)]
Fix some poor decisions about sizing of trigger-related memory contexts.

22 years agoI noticed that pltcl didn't have any way to get to SPI_lastoid like plpgsql does...
Bruce Momjian [Thu, 2 Aug 2001 15:45:55 +0000 (15:45 +0000)]
I noticed that pltcl didn't have any way to get to SPI_lastoid like plpgsql does.. I started using pltcl a lot because I like to decide when and how my queries get planned.. so I put one together really quick

Sorry I don't have the original around to make a quick diff, but its a very small change... I think this should be in the next release, there's no reason not to have it.

its a function with no expected arguments, so you can use it like:
spi_exec "INSERT INTO mytable(columns...) VALUES(values..)"
set oid [spi_lastoid]
spi_exec "SELECT mytable_id from mytable WHERE oid=$oid"

It just didn't make sense for me to use plpgsql and pltcl, or just screw
them both and use SPI from C.

bob@redivi.com

22 years agoEven though SO_PEERCRED is probably totally unportable, might as well
Tom Lane [Thu, 2 Aug 2001 14:39:35 +0000 (14:39 +0000)]
Even though SO_PEERCRED is probably totally unportable, might as well
declare the getsockopt parameter as ACCEPT_TYPE_ARG3 to be consistent
with our other uses of getsockopt.

22 years agoRemove SO_PASSCRED step in ident_unix --- according to Helge Bahmann,
Tom Lane [Thu, 2 Aug 2001 14:27:40 +0000 (14:27 +0000)]
Remove SO_PASSCRED step in ident_unix --- according to Helge Bahmann,
that call is not needed to prepare for SO_PEERCRED.  Also, simplify code
so that #ifdef SO_PEERCRED appears in only one place, to make it easier
to support other platforms with variants of this capability.