]> granicus.if.org Git - postgresql/log
postgresql
18 years agoFix old pg_dump oversight: default values for domains really need to be dumped
Tom Lane [Tue, 21 Feb 2006 18:01:32 +0000 (18:01 +0000)]
Fix old pg_dump oversight: default values for domains really need to be dumped
by decompiling the typdefaultbin expression, not just printing the typdefault
text which may be out-of-date or assume the wrong schema search path.  (It's
the same hazard as for adbin vs adsrc in column defaults.)  The catalogs.sgml
spec for pg_type implies that the correct procedure is to look to
typdefaultbin first and consider typdefault only if typdefaultbin is NULL.
I made dumping of both domains and base types do that, even though in the
current backend code typdefaultbin is always correct for domains and
typdefault for base types --- might as well try to future-proof it a little.
Per bug report from Alexander Galler.

18 years agoAdjust probe for getaddrinfo to cope with macro-ized definitions, such
Tom Lane [Tue, 21 Feb 2006 06:06:50 +0000 (06:06 +0000)]
Adjust probe for getaddrinfo to cope with macro-ized definitions, such
as Tru64's.  Per previous discussion.

18 years agoFix three Python reference leaks in PLy_traceback(). This would result
Neil Conway [Mon, 20 Feb 2006 20:10:37 +0000 (20:10 +0000)]
Fix three Python reference leaks in PLy_traceback(). This would result
in leaking memory when invoking a PL/Python procedure that raises an
exception. Unfortunately this still leaks memory, but at least the
largest leak has been plugged.

This patch also fixes a reference counting mistake in PLy_modify_tuple()
for 8.0, 8.1 and HEAD: we don't actually own a reference to `platt', so
we shouldn't Py_DECREF() it.

18 years agoFixing and improve compound word support. This changes cannot be applied to
Teodor Sigaev [Mon, 20 Feb 2006 17:51:05 +0000 (17:51 +0000)]
Fixing and improve compound word support. This changes cannot be applied to
previous version iwthout recreating tsvector fields...

Thanks to Alexander Presber <aljoscha@weisshuhn.de> to discover a problem.

18 years agoUpdate obsolete comment.
Tom Lane [Sun, 19 Feb 2006 19:59:53 +0000 (19:59 +0000)]
Update obsolete comment.

18 years agoModify logtape.c so that the initial LogicalTapeSetCreate call only
Tom Lane [Sun, 19 Feb 2006 05:58:36 +0000 (05:58 +0000)]
Modify logtape.c so that the initial LogicalTapeSetCreate call only
allocates the control data.  The per-tape buffers are allocated only
on first use.  This saves memory in situations where tuplesort.c
overestimates the number of tapes needed (ie, there are fewer runs
than tapes).  Also, this makes legitimate the coding in inittapes()
that includes tape buffer space in the maximum-memory calculation:
when inittapes runs, we've already expended the whole allowed memory
on tuple storage, and so we'd better not allocate all the tape buffers
until we've flushed some tuples out of memory.

18 years agoImprove tuplesort.c to support variable merge order. The original coding
Tom Lane [Sun, 19 Feb 2006 05:54:06 +0000 (05:54 +0000)]
Improve tuplesort.c to support variable merge order.  The original coding
with fixed merge order (fixed number of "tapes") was based on obsolete
assumptions, namely that tape drives are expensive.  Since our "tapes"
are really just a couple of buffers, we can have a lot of them given
adequate workspace.  This allows reduction of the number of merge passes
with consequent savings of I/O during large sorts.

Simon Riggs with some rework by Tom Lane

18 years agoAdd TABLESPACE and ON COMMIT clauses to CREATE TABLE AS. ON COMMIT is
Neil Conway [Sun, 19 Feb 2006 00:04:28 +0000 (00:04 +0000)]
Add TABLESPACE and ON COMMIT clauses to CREATE TABLE AS. ON COMMIT is
required by the SQL standard, and TABLESPACE is useful functionality.
Patch from Kris Jurka, minor editorialization by Neil Conway.

18 years agoMinor SGML style police work.
Neil Conway [Sat, 18 Feb 2006 23:14:45 +0000 (23:14 +0000)]
Minor SGML style police work.

18 years ago&apos; is not valid HTML 4.01, so print the plain character instead.
Peter Eisentraut [Sat, 18 Feb 2006 22:54:50 +0000 (22:54 +0000)]
&apos; is not valid HTML 4.01, so print the plain character instead.

18 years agoPatch from Marko Kreen:
Neil Conway [Sat, 18 Feb 2006 20:48:51 +0000 (20:48 +0000)]
Patch from Marko Kreen:

pgcrypto crypt()/md5 and hmac() leak memory when compiled against
OpenSSL as openssl.c digest ->reset will do two DigestInit calls
against a context.  This happened to work with OpenSSL 0.9.6
but not with 0.9.7+.

Reason for the messy code was that I tried to avoid creating
wrapper structure to transport algorithm info and tried to use
OpenSSL context for it.  The fix is to create wrapper structure.

It also uses newer digest API to avoid memory allocations
on reset with newer OpenSSLs.

Thanks to Daniel Blaisdell for reporting it.

18 years agoAdd support for Windows codepages 1253, 1254, 1255, and 1257 and clean
Peter Eisentraut [Sat, 18 Feb 2006 16:15:23 +0000 (16:15 +0000)]
Add support for Windows codepages 1253, 1254, 1255, and 1257 and clean
up a bunch of the support utilities.

In src/backend/utils/mb/Unicode remove nearly duplicate copies of the
UCS_to_XXX perl script and replace with one version to handle all generic
files.  Update the Makefile so that it knows about all the map files.
This produces a slight difference in some of the map files, using a
uniform naming convention and not mapping the null character.

In src/backend/utils/mb/conversion_procs create a master utf8<->win
codepage function like the ISO 8859 versions instead of having a separate
handler for each conversion.

There is an externally visible change in the name of the win1258 to utf8
conversion.  According to the documentation notes, it was named
incorrectly and this changes it to a standard name.

Running the Unicode mapping perl scripts has shown some additional mapping
changes in koi8r and iso8859-7.

18 years agoMark unescape_single_char() "static": as far as I can see this function
Neil Conway [Sat, 18 Feb 2006 01:44:35 +0000 (01:44 +0000)]
Mark unescape_single_char() "static": as far as I can see this function
is only used by scan.l/scan.c

18 years agoFix typo in comment.
Neil Conway [Fri, 17 Feb 2006 03:29:02 +0000 (03:29 +0000)]
Fix typo in comment.

18 years agoChange MemSet to use long instead of int32, for better performance on
Peter Eisentraut [Thu, 16 Feb 2006 23:23:50 +0000 (23:23 +0000)]
Change MemSet to use long instead of int32, for better performance on
64-bit platforms.

by ITAGAKI Takahiro

18 years agoPut the first section of a chapter in its own chunk.
Peter Eisentraut [Thu, 16 Feb 2006 01:03:48 +0000 (01:03 +0000)]
Put the first section of a chapter in its own chunk.

18 years agoSince we only use libld on AIX, don't include it in LIBS on any other
Tom Lane [Wed, 15 Feb 2006 17:23:10 +0000 (17:23 +0000)]
Since we only use libld on AIX, don't include it in LIBS on any other
platforms (it does exist on HPUX, for one).  We could probably even make
this a test for specific AIX versions, but I don't know which ones need it.

18 years agoRepair --single-transaction patch so it handles blobs correctly.
Tom Lane [Tue, 14 Feb 2006 23:30:43 +0000 (23:30 +0000)]
Repair --single-transaction patch so it handles blobs correctly.
Simon Riggs

18 years agoMove btbulkdelete's vacuum_delay_point() call to a place in the loop where
Tom Lane [Tue, 14 Feb 2006 17:20:01 +0000 (17:20 +0000)]
Move btbulkdelete's vacuum_delay_point() call to a place in the loop where
we are not holding a buffer content lock; where it was, InterruptHoldoffCount
is positive and so we'd not respond to cancel signals as intended.  Also
add missing vacuum_delay_point() call in btvacuumcleanup.  This should fix
complaint from Evgeny Gridasov about failure to respond to SIGINT/SIGTERM
in a timely fashion (bug #2257).

18 years agoAdd some missing vacuum_delay_point calls in GIST vacuuming.
Tom Lane [Tue, 14 Feb 2006 16:39:32 +0000 (16:39 +0000)]
Add some missing vacuum_delay_point calls in GIST vacuuming.

18 years agoAllocSetStats should probably be using unsigned format to show space totals.
Tom Lane [Tue, 14 Feb 2006 15:34:46 +0000 (15:34 +0000)]
AllocSetStats should probably be using unsigned format to show space totals.

18 years agoNeed a DLLIMPORT for MaxFSMPages, per buildfarm failure on snake.
Tom Lane [Tue, 14 Feb 2006 15:03:59 +0000 (15:03 +0000)]
Need a DLLIMPORT for MaxFSMPages, per buildfarm failure on snake.

18 years agoDocument that GRANT on a table does not affect sequence permissions,
Bruce Momjian [Tue, 14 Feb 2006 03:32:14 +0000 (03:32 +0000)]
Document that GRANT on a table does not affect sequence permissions,
inclusing SERIAL column sequences.

18 years agoDocument that xact commit/abort stats are collected if any stat variable
Bruce Momjian [Tue, 14 Feb 2006 02:03:44 +0000 (02:03 +0000)]
Document that xact commit/abort stats are collected if any stat variable
is set.

18 years agoAdd positive defense against trying to connect when the connection
Tom Lane [Mon, 13 Feb 2006 22:33:57 +0000 (22:33 +0000)]
Add positive defense against trying to connect when the connection
option state hasn't been fully set up.  This is possible via PQreset()
and might occur in other code paths too, so a state flag seems the
most robust solution.  Per report from Arturs Zoldners.

18 years agoIMHO, --single-transaction should wrap *all* the commands in BEGIN/COMMIT,
Tom Lane [Mon, 13 Feb 2006 21:30:19 +0000 (21:30 +0000)]
IMHO, --single-transaction should wrap *all* the commands in BEGIN/COMMIT,
not just some of them.

18 years agoImprove documentation of --single-transaction option: fix markup, and
Tom Lane [Mon, 13 Feb 2006 21:29:08 +0000 (21:29 +0000)]
Improve documentation of --single-transaction option: fix markup, and
don't promise more than the code actually delivers.

18 years agoPlace function names in first column for consistency.
Bruce Momjian [Mon, 13 Feb 2006 17:09:25 +0000 (17:09 +0000)]
Place function names in first column for consistency.

18 years agoFix qual_is_pushdown_safe to not try to push down quals involving a whole-row
Tom Lane [Mon, 13 Feb 2006 16:22:23 +0000 (16:22 +0000)]
Fix qual_is_pushdown_safe to not try to push down quals involving a whole-row
Var referencing the subselect output.  While this case could possibly be made
to work, it seems not worth expending effort on.  Per report from Magnus
Naeslund(f).

18 years agoFix build failure when not USE_READLINE. Sergey E. Koposov
Tom Lane [Mon, 13 Feb 2006 14:57:15 +0000 (14:57 +0000)]
Fix build failure when not USE_READLINE.  Sergey E. Koposov

18 years agoAdd:
Bruce Momjian [Mon, 13 Feb 2006 03:55:02 +0000 (03:55 +0000)]
Add:

>
>  o Allow pg_hba.conf to specify host names along with IP addresses
>
>    Host name lookup could occur when the postmaster reads the
>    pg_hba.conf file, or when the backend starts.  Another
>    solution would be to reverse lookup the connection IP and
>    check that hostname against the host names in pg_hba.conf.
>    We could also then check that the host name maps to the IP
>    address.

18 years agoRevert because C locale uses "" for thousands_sep, meaning "n/a", while
Bruce Momjian [Sun, 12 Feb 2006 23:48:23 +0000 (23:48 +0000)]
Revert because C locale uses "" for thousands_sep, meaning "n/a", while
French uses "" for "don't want".  Seems we have to keep the existing
behavior.

18 years agoUpdate release notes.
Tom Lane [Sun, 12 Feb 2006 22:35:26 +0000 (22:35 +0000)]
Update release notes.

18 years agoFix bug that allowed any logged-in user to SET ROLE to any other database user
Tom Lane [Sun, 12 Feb 2006 22:32:43 +0000 (22:32 +0000)]
Fix bug that allowed any logged-in user to SET ROLE to any other database user
id (CVE-2006-0553).  Also fix related bug in SET SESSION AUTHORIZATION that
allows unprivileged users to crash the server, if it has been compiled with
Asserts enabled.  The escalation-of-privilege risk exists only in 8.1.0-8.1.2.
However, the Assert-crash risk exists in all releases back to 7.3.
Thanks to Akio Ishida for reporting this problem.

18 years agoThrow a warning rather than an error on invalid character from UTF8 to
Bruce Momjian [Sun, 12 Feb 2006 21:15:19 +0000 (21:15 +0000)]
Throw a warning rather than an error on invalid character from UTF8 to
Latin1, like we do for other Latin encodings.

18 years agoFix broken markup.
Tom Lane [Sun, 12 Feb 2006 20:31:58 +0000 (20:31 +0000)]
Fix broken markup.

18 years agoBack out patch pending review.
Bruce Momjian [Sun, 12 Feb 2006 20:08:29 +0000 (20:08 +0000)]
Back out patch pending review.

---------------------------------------------------------------------------

>   I've now tested this patch at home w/ 8.2HEAD and it seems to fix the
>   bug.  I plan on testing it under 8.1.2 at work tommorow with
>   mod_auth_krb5, etc, and expect it'll work there.  Assuming all goes
>   well and unless someone objects I'll forward the patch to -patches.
>   It'd be great to have this fixed as it'll allow us to use Kerberos to
>   authenticate to phppgadmin and other web-based tools which use
>   Postgres.

  While playing with this patch under 8.1.2 at home I discovered a
  mistake in how I manually applied one of the hunks to fe-auth.c.
  Basically, the base code had changed and so the patch needed to be
  modified slightly.  This is because the code no longer either has a
  freeable pointer under 'name' or has 'name' as NULL.

  The attached patch correctly frees the string from pg_krb5_authname
  (where it had been strdup'd) if and only if pg_krb5_authname returned
  a string (as opposed to falling through and having name be set using
  name = pw->name;).  Also added a comment to this effect.
  Please review.

Stephen Frost (sfrost@snowman.net) wrote:

18 years ago> I've now tested this patch at home w/ 8.2HEAD and it seems to fix the
Bruce Momjian [Sun, 12 Feb 2006 20:04:42 +0000 (20:04 +0000)]
>   I've now tested this patch at home w/ 8.2HEAD and it seems to fix the
>   bug.  I plan on testing it under 8.1.2 at work tommorow with
>   mod_auth_krb5, etc, and expect it'll work there.  Assuming all goes
>   well and unless someone objects I'll forward the patch to -patches.
>   It'd be great to have this fixed as it'll allow us to use Kerberos to
>   authenticate to phppgadmin and other web-based tools which use
>   Postgres.

  While playing with this patch under 8.1.2 at home I discovered a
  mistake in how I manually applied one of the hunks to fe-auth.c.
  Basically, the base code had changed and so the patch needed to be
  modified slightly.  This is because the code no longer either has a
  freeable pointer under 'name' or has 'name' as NULL.

  The attached patch correctly frees the string from pg_krb5_authname
  (where it had been strdup'd) if and only if pg_krb5_authname returned
  a string (as opposed to falling through and having name be set using
  name = pw->name;).  Also added a comment to this effect.
  Please review.

Stephen Frost (sfrost@snowman.net) wrote:

18 years agoSupport "" for thousands separator and plus sign in to_char(), per
Bruce Momjian [Sun, 12 Feb 2006 19:52:06 +0000 (19:52 +0000)]
Support "" for thousands separator and plus sign in to_char(), per
report from French Debian user.  psql already handles "" fine.

18 years agoRemove LEFT part of JOIN to pg_roles because of optimizer limitation:
Bruce Momjian [Sun, 12 Feb 2006 19:31:14 +0000 (19:31 +0000)]
Remove LEFT part of JOIN to pg_roles because of optimizer limitation:

> True, but they're not being used where you'd expect. This seems to be
> something to do with the fact that it's not pg_authid which is being
> accessed, but rather the view pg_roles.

I looked into this and it seems the problem is that the view doesn't
get flattened into the main query because of the has_nullable_targetlist
limitation in prepjointree.c.  That's triggered because pg_roles has
        '********'::text AS rolpassword
which isn't nullable, meaning it would produce wrong behavior if
referenced above the outer join.

Ultimately, the reason this is a problem is that the planner deals only
in simple Vars while processing joins; it doesn't want to think about
expressions.  I'm starting to think that it may be time to fix this,
because I've run into several related restrictions lately, but it seems
like a nontrivial project.

In the meantime, reducing the LEFT JOIN to pg_roles to a JOIN as per
Peter's suggestion seems like the best short-term workaround.

18 years agoUpdate README file.
Bruce Momjian [Sun, 12 Feb 2006 19:24:24 +0000 (19:24 +0000)]
Update README file.

Joshua D. Drake

18 years agoNot done:
Bruce Momjian [Sun, 12 Feb 2006 19:13:19 +0000 (19:13 +0000)]
Not done:

>  o %Allow ALTER TABLE ... ALTER CONSTRAINT ... RENAME

18 years agoRevert patch becaues of locking concerns:
Bruce Momjian [Sun, 12 Feb 2006 19:11:01 +0000 (19:11 +0000)]
Revert patch becaues of locking concerns:

Allow ALTER TABLE ... ALTER CONSTRAINT ... RENAME

Joachim Wieland

18 years ago> Actually, if you submit a patch that says either "SCROLL is the
Bruce Momjian [Sun, 12 Feb 2006 19:02:15 +0000 (19:02 +0000)]
> Actually, if you submit a patch that says either "SCROLL is the
default"
> or "NO SCROLL is the default", it will be rejected as incorrect.  The
> reason is that the default behavior is different from either of these,
> as is explained in the NOTES section.

Ok, so *that's* where the bit about the query plan being simple enough.
Based on that, ISTM that it should be premissable for us to decide that
a cursor requiring a sort isn't "simple enough" to support SCROLL.

In any case, here's a patch that makes the non-standard behavior easier
for people to find.

Jim C. Nasby

18 years agoFix release item ordering.
Bruce Momjian [Sun, 12 Feb 2006 18:13:10 +0000 (18:13 +0000)]
Fix release item ordering.

18 years agoUpdate back branch release notes.
Bruce Momjian [Sun, 12 Feb 2006 17:57:37 +0000 (17:57 +0000)]
Update back branch release notes.

18 years agoFix release markup.
Bruce Momjian [Sun, 12 Feb 2006 17:27:33 +0000 (17:27 +0000)]
Fix release markup.

18 years agoUpdate release checlist.
Bruce Momjian [Sun, 12 Feb 2006 17:23:31 +0000 (17:23 +0000)]
Update release checlist.

18 years agoUpdate for 8.1.3.
Bruce Momjian [Sun, 12 Feb 2006 17:15:57 +0000 (17:15 +0000)]
Update for 8.1.3.

18 years agoUpdate release notes for 8.1.3.
Bruce Momjian [Sun, 12 Feb 2006 17:10:47 +0000 (17:10 +0000)]
Update release notes for 8.1.3.

18 years agoImprove tab completion macro for default keywords.
Bruce Momjian [Sun, 12 Feb 2006 15:25:04 +0000 (15:25 +0000)]
Improve tab completion macro for default keywords.

18 years agoWhen performing a parallel build (make -j N) with ./configure
Bruce Momjian [Sun, 12 Feb 2006 07:29:36 +0000 (07:29 +0000)]
When performing a parallel build (make -j N) with ./configure
--enable-depend it often tries to create the .deps directory twice and
bails out when it already exists due to a race condition of if doesn't
exist, then create.  This patch prevents mkdir from returning an error.

Kris Jurka

18 years agoList psql tab completion for various default keywords.
Bruce Momjian [Sun, 12 Feb 2006 07:21:40 +0000 (07:21 +0000)]
List psql tab completion for various default keywords.

Joachim Wieland

18 years agoDone:
Bruce Momjian [Sun, 12 Feb 2006 06:51:14 +0000 (06:51 +0000)]
Done:

> * -Add COMMENT ON for all cluster global objects (roles, databases

18 years agoApply code-reviewed version of for-scalar-list patch: mostly, fixing
Tom Lane [Sun, 12 Feb 2006 06:37:05 +0000 (06:37 +0000)]
Apply code-reviewed version of for-scalar-list patch: mostly, fixing
it to report reasonable errors in error cases.

18 years agoAdd MSVC support for utility commands and pg_dump.
Bruce Momjian [Sun, 12 Feb 2006 06:11:51 +0000 (06:11 +0000)]
Add MSVC support for utility commands and pg_dump.

Hiroshi Saito

18 years agoAllow PL/pgSQL FOR statement to return values to scalars as well as
Bruce Momjian [Sun, 12 Feb 2006 06:03:38 +0000 (06:03 +0000)]
Allow PL/pgSQL FOR statement to return values to scalars as well as
records and row types.

Pavel Stehule

18 years agoUse 0x01 for newlines in saved history. It was determined to be not
Bruce Momjian [Sun, 12 Feb 2006 05:24:38 +0000 (05:24 +0000)]
Use 0x01 for newlines in saved history.  It was determined to be not
used by multi-byte sequences, but futher invesetigation might prove this
to be false.

18 years agoClean up plpgsql grammar to make sure that check_assignable() is applied
Tom Lane [Sun, 12 Feb 2006 04:59:32 +0000 (04:59 +0000)]
Clean up plpgsql grammar to make sure that check_assignable() is applied
consistently.  This is mostly cosmetic right at the moment because
check_assignable() does nothing for ROW or RECORD datums, but that might
not always be so.  This also syncs several different places that read
INTO target lists.  They're just enough different that it seems
impractical to factor them into a single routine, but they surely
should be the same as much as possible.

18 years agoDone:
Bruce Momjian [Sun, 12 Feb 2006 04:44:17 +0000 (04:44 +0000)]
Done:

> * -Allow to_char() to print localized month names

18 years agoAllow to_char() to print localized month and day names.
Bruce Momjian [Sun, 12 Feb 2006 04:44:15 +0000 (04:44 +0000)]
Allow to_char() to print localized month and day names.

Euler Taveira de Oliveira

18 years agoAs part of previous commit, add pg_restore option:
Bruce Momjian [Sun, 12 Feb 2006 04:07:25 +0000 (04:07 +0000)]
As part of previous commit, add pg_restore option:

        -1 or --single-transaction

Simon Riggs

18 years agoAdd psql option:
Bruce Momjian [Sun, 12 Feb 2006 04:04:32 +0000 (04:04 +0000)]
Add psql option:

-1 or --single-transaction

Simon Riggs

18 years agoDone:
Bruce Momjian [Sun, 12 Feb 2006 03:56:13 +0000 (03:56 +0000)]
Done:

> * -Add system view to show free space map contents

18 years agoAdd contrib/pg_freespacemap to display free space map information.
Bruce Momjian [Sun, 12 Feb 2006 03:55:53 +0000 (03:55 +0000)]
Add contrib/pg_freespacemap to display free space map information.

Mark Kirkwood

18 years agoFix more fallout from line-wrap patch, to wit, arbitrarily changing
Tom Lane [Sun, 12 Feb 2006 03:30:21 +0000 (03:30 +0000)]
Fix more fallout from line-wrap patch, to wit, arbitrarily changing
the API of PQdsplen without bothering to fix its callers.  Although
ReportSyntaxErrorPosition could probably do with more smarts about
handling control characters, for the moment I'll just get it back to
handling tabs consistently.

18 years agoI've created a new shared catalog table pg_shdescription to store
Bruce Momjian [Sun, 12 Feb 2006 03:22:21 +0000 (03:22 +0000)]
I've created a new shared catalog table pg_shdescription to store
comments on cluster global objects like databases, tablespaces, and
roles.

It touches a lot of places, but not much in the way of big changes.  The
only design decision I made was to duplicate the query and manipulation
functions rather than to try and have them handle both shared and local
comments.  I believe this is simpler for the code and not an issue for
callers because they know what type of object they are dealing with.
This has resulted in a shobj_description function analagous to
obj_description and backend functions [Create/Delete]SharedComments
mirroring the existing [Create/Delete]Comments functions.

pg_shdescription.h goes into src/include/catalog/

Kris Jurka

18 years agoUndo changes of trailing space in recently-committed expected files.
Tom Lane [Sun, 12 Feb 2006 03:10:04 +0000 (03:10 +0000)]
Undo changes of trailing space in recently-committed expected files.
This is mostly just over-compulsiveness on my part, but the exercise
did reveal one real bug: errors.out has a space difference now where
it should not.

18 years agoRestore previous psql behavior of not printing useless trailing spaces
Tom Lane [Sun, 12 Feb 2006 02:56:21 +0000 (02:56 +0000)]
Restore previous psql behavior of not printing useless trailing spaces
after the data in the last column on a line.

18 years agoPlease find enclosed a patch that lets you use \c to connect
Bruce Momjian [Sun, 12 Feb 2006 02:54:30 +0000 (02:54 +0000)]
Please find enclosed a patch that lets you use \c to connect
(optionally) to a new host and port without exiting psql.  This
eliminates, IMHO, a surprise in that you can now connect to PostgreSQL
on a differnt machine from the one where you started your session. This
should help people who use psql as an administrative tool.

David Fetter

18 years agoActually there's a better way to do this, which is to count tuples
Tom Lane [Sun, 12 Feb 2006 00:18:17 +0000 (00:18 +0000)]
Actually there's a better way to do this, which is to count tuples
during the vacuumcleanup scan that we're going to do anyway.  Should
save a few cycles (one calculation per page, not per tuple) as well
as not having to depend on assumptions about heap and index being
in step.
I think this could probably be made to work for GIST too, but that
code looks messy enough that I'm disinclined to try right now.

18 years agoSkip ambulkdelete scan if there's nothing to delete and the index is not
Tom Lane [Sat, 11 Feb 2006 23:31:34 +0000 (23:31 +0000)]
Skip ambulkdelete scan if there's nothing to delete and the index is not
partial.  None of the existing AMs do anything useful except counting
tuples when there's nothing to delete, and we can get a tuple count
from the heap as long as it's not a partial index.  (hash actually can
skip anyway because it maintains a tuple count in the index metapage.)
GIST is not currently able to exploit this optimization because, due to
failure to index NULLs, GIST is always effectively partial.  Possibly
we should fix that sometime.
Simon Riggs w/ some review by Tom Lane.

18 years agoAllow ALTER TABLE ... ALTER CONSTRAINT ... RENAME
Bruce Momjian [Sat, 11 Feb 2006 22:17:19 +0000 (22:17 +0000)]
Allow ALTER TABLE ... ALTER CONSTRAINT ... RENAME

Joachim Wieland

18 years agoDone:
Bruce Momjian [Sat, 11 Feb 2006 22:17:17 +0000 (22:17 +0000)]
Done:
>  o -Allow ALTER TABLE ... ALTER CONSTRAINT ... RENAME

18 years agoDone:
Bruce Momjian [Sat, 11 Feb 2006 21:55:49 +0000 (21:55 +0000)]
Done:

<  o Improve psql's handling of multi-line statements
>  o -Improve psql's handling of multi-line statements

18 years agoo Improve psql's handling of multi-line statements
Bruce Momjian [Sat, 11 Feb 2006 21:55:35 +0000 (21:55 +0000)]
o Improve psql's handling of multi-line statements

Currently, while \e saves a single statement as one entry, interactive
statements are saved one line at a time.  Ideally all statements
would be saved like \e does.

Sergey E. Koposov

18 years agoFix incorrect addition, subtraction, and overflow checking in new
Tom Lane [Sat, 11 Feb 2006 20:39:59 +0000 (20:39 +0000)]
Fix incorrect addition, subtraction, and overflow checking in new
inet operators.

18 years agoRevert based on Tom's recommendation:
Bruce Momjian [Sat, 11 Feb 2006 17:14:09 +0000 (17:14 +0000)]
Revert based on Tom's recommendation:

> Allow VACUUM to complete faster by avoiding scanning the indexes when no
> rows were removed from the heap by the VACUUM.

18 years agoAllow VACUUM to complete faster by avoiding scanning the indexes when no
Bruce Momjian [Sat, 11 Feb 2006 16:59:09 +0000 (16:59 +0000)]
Allow VACUUM to complete faster by avoiding scanning the indexes when no
rows were removed from the heap by the VACUUM.

Simon Riggs

18 years agoUpdate catalog version for INET additions.
Bruce Momjian [Sat, 11 Feb 2006 16:28:56 +0000 (16:28 +0000)]
Update catalog version for INET additions.

18 years agoDone:
Bruce Momjian [Sat, 11 Feb 2006 03:33:36 +0000 (03:33 +0000)]
Done:

> * -Allow INET + INT8 to increment the host part of the address or

18 years agoAdd INET/CIDR operators: and, or, not, plus int8, minus int8, and inet
Bruce Momjian [Sat, 11 Feb 2006 03:32:41 +0000 (03:32 +0000)]
Add INET/CIDR operators: and, or, not, plus int8, minus int8, and inet
minus inet.

Stephen R. van den Berg

18 years agoClean up signedness warnings and 64-bit bugs in recent psql printing
Tom Lane [Fri, 10 Feb 2006 22:29:06 +0000 (22:29 +0000)]
Clean up signedness warnings and 64-bit bugs in recent psql printing
patch.  Martijn van Oosterhout and Tom Lane

18 years agoMake it possible to run initdb from an admin account on Windows,
Tom Lane [Fri, 10 Feb 2006 22:05:42 +0000 (22:05 +0000)]
Make it possible to run initdb from an admin account on Windows,
by giving up admin privileges (only works if newer than NT4).

Magnus

18 years agoEnable pg_ctl to give up admin privileges when starting the server under
Tom Lane [Fri, 10 Feb 2006 22:00:59 +0000 (22:00 +0000)]
Enable pg_ctl to give up admin privileges when starting the server under
Windows (if newer than NT4, else works same as before).

Magnus

18 years agoCheck that SID is enabled while checking for Windows admin privileges.
Tom Lane [Fri, 10 Feb 2006 21:52:21 +0000 (21:52 +0000)]
Check that SID is enabled while checking for Windows admin privileges.
Magnus

18 years agoChange search for default operator classes so that it examines all opclasses
Tom Lane [Fri, 10 Feb 2006 19:01:12 +0000 (19:01 +0000)]
Change search for default operator classes so that it examines all opclasses
regardless of the current schema search path.  Since CREATE OPERATOR CLASS
only allows one default opclass per datatype regardless of schemas, this
should have minimal impact, and it fixes problems with failure to find a
desired opclass while restoring dump files.  Per discussion at
http://archives.postgresql.org/pgsql-hackers/2006-02/msg00284.php.
Remove now-redundant-or-unused code in typcache.c and namespace.c,
and backpatch as far as 8.0.

18 years agoClean up some signedness warnings.
Tom Lane [Fri, 10 Feb 2006 15:57:58 +0000 (15:57 +0000)]
Clean up some signedness warnings.

18 years agoFix psql after newline patch for calloc(0).
Bruce Momjian [Fri, 10 Feb 2006 15:48:05 +0000 (15:48 +0000)]
Fix psql after newline patch for calloc(0).

Kris Jurka

18 years agoFix fallout from psql line-wrapping patch.
Tom Lane [Fri, 10 Feb 2006 15:47:44 +0000 (15:47 +0000)]
Fix fallout from psql line-wrapping patch.

18 years agoAllow "'" symbol in affixes ("'s" affix in english): it was diallowed during
Teodor Sigaev [Fri, 10 Feb 2006 12:56:14 +0000 (12:56 +0000)]
Allow "'" symbol in affixes ("'s" affix in english): it was diallowed during
multibyte support work.
Add line number to error output during affix file parsing.

18 years agoFix up remaining library checks.
Peter Eisentraut [Fri, 10 Feb 2006 11:35:47 +0000 (11:35 +0000)]
Fix up remaining library checks.

18 years agorenew output of regression test accordingly to
Teodor Sigaev [Fri, 10 Feb 2006 11:18:40 +0000 (11:18 +0000)]
renew output of regression test accordingly to
http://archives.postgresql.org/pgsql-committers/2006-02/msg00089.php

18 years agoDone:
Bruce Momjian [Fri, 10 Feb 2006 04:14:17 +0000 (04:14 +0000)]
Done:

<  o Allow multi-line column values to align in the proper columns
>  o -Allow multi-line column values to align in the proper columns

18 years agoAllow psql multi-line column values to align in the proper columns
Bruce Momjian [Fri, 10 Feb 2006 00:39:04 +0000 (00:39 +0000)]
Allow psql multi-line column values to align in the proper columns

  If the second output column value is 'a\nb', the 'b' should appear
  in the second display column, rather than the first column as it
  does now.

Change libpq's PQdsplen() to return more useful values.

> Note: this changes the PQdsplen function, it can now return zero or
> minus one which was not possible before. It doesn't appear anyone is
> actually using the functions other than psql but it is a change. The
> functions are not actually documentated anywhere so it's not like we're
> breaking a defined interface. The new semantics follow the Unicode
> standard.

BACKWARD COMPATIBLE CHANGE.

The only user-visible change I saw in the regression tests is that a
SELECT * on a table where all the columns have been dropped doesn't
return a blank line like before.  This seems like a step forward.

Martijn van Oosterhout

18 years agoThis fixes pg_dump so that when using the '-O' no owners option it does
Bruce Momjian [Thu, 9 Feb 2006 20:52:13 +0000 (20:52 +0000)]
This fixes pg_dump so that when using the '-O' no owners option it does
not print the owner name in the object comment.

eg:

--
-- Name: actor; Type: TABLE; Schema: public; Owner: chriskl; Tablespace:
--

Becomes:

--
-- Name: actor; Type: TABLE; Schema: public; Owner: -; Tablespace:
--

This makes it far easier to do 'user independent' dumps.  Especially for
distribution to third parties.

Christopher Kings-Lynne

18 years agoProvide the libpq error message when PQputline or PQendcopy fails.
Tom Lane [Thu, 9 Feb 2006 18:28:29 +0000 (18:28 +0000)]
Provide the libpq error message when PQputline or PQendcopy fails.

18 years ago1 Fix bug with very short word: prefix and suffix might be overlapped,
Teodor Sigaev [Thu, 9 Feb 2006 18:04:20 +0000 (18:04 +0000)]
1 Fix bug with very short word: prefix and suffix might be overlapped,
  sorry but fix can't be applyed to previous version: it's require
  refill tsvector...
2 Small optimize of load time for huge dictionaries
3 use palloc instead of malloc during load dict file

18 years agoUse "bitwise" rather than "binary for AND/OR descriptions in \d, to
Bruce Momjian [Thu, 9 Feb 2006 14:53:51 +0000 (14:53 +0000)]
Use "bitwise" rather than "binary for AND/OR descriptions in \d, to
match SGML documentation.

18 years agoC++ comments are verboten. Per gripe from Kris Jurka.
Tom Lane [Thu, 9 Feb 2006 07:22:22 +0000 (07:22 +0000)]
C++ comments are verboten.  Per gripe from Kris Jurka.