]> granicus.if.org Git - postgresql/log
postgresql
15 years agoSuppress compiler warning in a different way, per Alvaro.
Bruce Momjian [Tue, 6 Jan 2009 03:15:51 +0000 (03:15 +0000)]
Suppress compiler warning in a different way, per Alvaro.

15 years agoUpdate SELECT version() to show whether it is a 32 or 64-bit backend binary.
Bruce Momjian [Tue, 6 Jan 2009 03:05:23 +0000 (03:05 +0000)]
Update SELECT version() to show whether it is a 32 or 64-bit backend binary.

15 years agoSupress compiler warning.
Bruce Momjian [Tue, 6 Jan 2009 02:44:17 +0000 (02:44 +0000)]
Supress compiler warning.

15 years agoFix new timezone cross-compile rule to avoid a bug in gmake 3.78.1;
Bruce Momjian [Tue, 6 Jan 2009 02:25:29 +0000 (02:25 +0000)]
Fix new timezone cross-compile rule to avoid a bug in gmake 3.78.1;
document change.

15 years agoAdd some comments about why function parameter default expressions are
Tom Lane [Tue, 6 Jan 2009 02:01:27 +0000 (02:01 +0000)]
Add some comments about why function parameter default expressions are
restricted.

15 years agoFix an oversight in the function-default-arguments patch: after adding some
Tom Lane [Tue, 6 Jan 2009 01:23:21 +0000 (01:23 +0000)]
Fix an oversight in the function-default-arguments patch: after adding some
default expressions to a function call, eval_const_expressions must recurse on
those expressions.  Else they don't get simplified, and in particular we fail
to insert additional default arguments if any functions needing defaults are
in there.  Per report from Rushabh Lathia.

15 years agoChange the reloptions machinery to use a table-based parser, and provide
Alvaro Herrera [Mon, 5 Jan 2009 17:14:28 +0000 (17:14 +0000)]
Change the reloptions machinery to use a table-based parser, and provide
a more complete framework for writing custom option processing routines
by user-defined access methods.

Catalog version bumped due to the general API changes, which are going to
affect user-defined "amoptions" routines.

15 years agoAdd a --role option to pg_dump, pg_dumpall, and pg_restore. This allows
Tom Lane [Mon, 5 Jan 2009 16:54:37 +0000 (16:54 +0000)]
Add a --role option to pg_dump, pg_dumpall, and pg_restore.  This allows
performing dumps and restores in accordance with a security policy that
forbids logging in directly as superuser, but instead specifies that you
should log into an admin account and then SET ROLE to the superuser.

In passing, clean up some ugly and mostly-broken code for quoting shell
arguments in pg_dumpall.

Benedek László, with some help from Tom Lane

15 years agoUpdate Japanese FAQ.
Bruce Momjian [Mon, 5 Jan 2009 15:04:59 +0000 (15:04 +0000)]
Update Japanese FAQ.

Jun Kuwamura

15 years agoQuiet repeated "loaded library" messages from child backends that are just
Tom Lane [Mon, 5 Jan 2009 13:57:12 +0000 (13:57 +0000)]
Quiet repeated "loaded library" messages from child backends that are just
re-loading a library already loaded into the postmaster.

ITAGAKI Takahiro

15 years agoAdd EmitWarningsOnPlaceholders calls to contrib modules that are likely to
Tom Lane [Mon, 5 Jan 2009 13:35:38 +0000 (13:35 +0000)]
Add EmitWarningsOnPlaceholders calls to contrib modules that are likely to
get listed in custom_variable_classes.

15 years agoFix define_custom_variable to preserve any sourcefile/sourceline information
Tom Lane [Mon, 5 Jan 2009 13:23:33 +0000 (13:23 +0000)]
Fix define_custom_variable to preserve any sourcefile/sourceline information
present in the placeholder.  Noted while testing pg_stat_statements.

15 years agoWhen cross-compiling, allow and require an external zic program to be used
Peter Eisentraut [Mon, 5 Jan 2009 10:25:59 +0000 (10:25 +0000)]
When cross-compiling, allow and require an external zic program to be used
when --with-system-tzdata is not used.

initial patch by Richard Evans

15 years agoFix for cross-compilation between mingw32 and something else. The choice
Peter Eisentraut [Mon, 5 Jan 2009 09:54:13 +0000 (09:54 +0000)]
Fix for cross-compilation between mingw32 and something else.  The choice
of pwd vs. pwd -W is correctly a function of the build system, not the
host system.

15 years agoAllow out-of-tree builds on mingw and cygwin
Peter Eisentraut [Mon, 5 Jan 2009 09:27:20 +0000 (09:27 +0000)]
Allow out-of-tree builds on mingw and cygwin

Author: Richard Evans <richard.evans@blueallegro.net>

15 years agoExport IsUnderPostmaster on win32.
Alvaro Herrera [Mon, 5 Jan 2009 02:27:45 +0000 (02:27 +0000)]
Export IsUnderPostmaster on win32.

ITAGAKI Takahiro

15 years agoAdd contrib/pg_stat_statements for server-wide tracking of statement execution
Tom Lane [Sun, 4 Jan 2009 22:19:59 +0000 (22:19 +0000)]
Add contrib/pg_stat_statements for server-wide tracking of statement execution
statistics.

Takahiro Itagaki

15 years agoAdd a pg_encoding_mbcliplen() function that is just like pg_mbcliplen()
Tom Lane [Sun, 4 Jan 2009 18:37:36 +0000 (18:37 +0000)]
Add a pg_encoding_mbcliplen() function that is just like pg_mbcliplen()
except the caller can specify the encoding to work in; this will be needed
for pg_stat_statements.  In passing, do some marginal efficiency hacking
and clean up some comments.  Also, prevent the single-byte-encoding code
path from fetching one byte past the stated length of the string (this
last is a bug that might need to be back-patched at some point).

15 years agoFix embarrassing bug in recent smgr refactoring patch: WAL records should
Heikki Linnakangas [Sun, 4 Jan 2009 14:59:22 +0000 (14:59 +0000)]
Fix embarrassing bug in recent smgr refactoring patch: WAL records should
be written for *non*-temp tables only. Report and test case by Mark
Kirkwood and Simon Riggs.

15 years agoAllow configure to deal with Python 3.0. Changes were:
Peter Eisentraut [Sun, 4 Jan 2009 00:54:15 +0000 (00:54 +0000)]
Allow configure to deal with Python 3.0.  Changes were:

print foo --> print(foo)
string.join(...) --> ' '.join(...)

These changes are backward compatible.

The actual plpython module appears to need significant updates to support
Python 3.0, though.  This change just relieves interested developers from
having to deal with Autoconf.

15 years agoAllow loadable modules to create PGC_POSTMASTER GUC variables, but only
Tom Lane [Sat, 3 Jan 2009 20:03:08 +0000 (20:03 +0000)]
Allow loadable modules to create PGC_POSTMASTER GUC variables, but only
when loaded via shared_preload_libraries.  Needed for support of
pg_stat_statements, or pretty much anything else that wants a GUC to
control size of a shared memory allocation.

15 years agoCreate a "shmem_startup_hook" to be called at the end of shared memory
Tom Lane [Sat, 3 Jan 2009 17:08:39 +0000 (17:08 +0000)]
Create a "shmem_startup_hook" to be called at the end of shared memory
initialization, to give loadable modules a reasonable place to perform
creation of any shared memory areas they need.  This is the logical conclusion
of our previous creation of RequestAddinShmemSpace() and RequestAddinLWLocks().
We don't need an explicit shmem_shutdown_hook, because the existing
on_shmem_exit and on_proc_exit mechanisms serve that need.

Also, adjust SubPostmasterMain so that libraries that got loaded into the
postmaster will be loaded into all child processes, not only regular backends.
This improves consistency with the non-EXEC_BACKEND behavior, and might be
necessary for functionality for some types of add-ons.

15 years agoInclude a pointer to the query's source text in QueryDesc structs. This is
Tom Lane [Fri, 2 Jan 2009 20:42:00 +0000 (20:42 +0000)]
Include a pointer to the query's source text in QueryDesc structs.  This is
practically free given prior 8.4 changes in plancache and portal management,
and it makes it a lot easier for ExecutorStart/Run/End hooks to get at the
query text.  Extracted from Itagaki Takahiro's pg_stat_statements patch,
with minor editorialization.

15 years agoInitialize .pot files with some useful default values.
Peter Eisentraut [Fri, 2 Jan 2009 15:15:42 +0000 (15:15 +0000)]
Initialize .pot files with some useful default values.

15 years agoSplit the ecpg translation support into a separate catalog for the ecpg
Peter Eisentraut [Fri, 2 Jan 2009 13:26:54 +0000 (13:26 +0000)]
Split the ecpg translation support into a separate catalog for the ecpg
preprocessor and the library.  This is useful for a number of reasons:

* The preprocessor and the library are in some cases installed in separate
packages and used by different classes of users.

* The library MO files need a different versioning scheme to account for the
soname.

* The makefiles are simpler, more robust, and easier to maintain this way.
(NLS web site was prone to break everytime a build rule changes.)

* Translators might choose to focus on the ecpglib, because that is more
user-facing.

* There was virtually no overlap, so nothing is lost.

15 years agoToday is find-typo-in-old-patches day. Fix wrong cut/paste in ident
Magnus Hagander [Fri, 2 Jan 2009 11:51:53 +0000 (11:51 +0000)]
Today is find-typo-in-old-patches day. Fix wrong cut/paste in ident
documentation.

15 years agoFix cut/paste error that caused all errors from REQUIRE_AUTH_OPTION to say
Magnus Hagander [Fri, 2 Jan 2009 11:34:03 +0000 (11:34 +0000)]
Fix cut/paste error that caused all errors from REQUIRE_AUTH_OPTION to say
it was the ldaptls parameter that was wrong...

15 years agoRemove comments that say restart is required for changing of Kerberos
Magnus Hagander [Fri, 2 Jan 2009 11:26:24 +0000 (11:26 +0000)]
Remove comments that say restart is required for changing of Kerberos
parameters.

15 years agoMake it possible to change Kerberos/GSSAPI parameters without restarting
Magnus Hagander [Fri, 2 Jan 2009 10:33:20 +0000 (10:33 +0000)]
Make it possible to change Kerberos/GSSAPI parameters without restarting
the postmaster. They are only used in backend processes, so it's just
a matter of re-labeling the GUCs.

15 years agowrite_nondefault_variables must take care to write custom_variable_classes
Tom Lane [Fri, 2 Jan 2009 02:02:10 +0000 (02:02 +0000)]
write_nondefault_variables must take care to write custom_variable_classes
first; otherwise backends reading the file might reject values of custom
variables.  Per experimentation with auto_explain.

15 years agoTweak guc.c to allow underscores in the names of custom variable classes,
Tom Lane [Fri, 2 Jan 2009 01:16:02 +0000 (01:16 +0000)]
Tweak guc.c to allow underscores in the names of custom variable classes,
and change auto_explain's custom GUC variables to be named auto_explain.xxx
not just explain.xxx.  Per discussion in connection with the
pg_stat_statements patch, it seems like a good idea to have the convention
that custom variable classes are named the same as their defining module.
Committing separately since this should happen regardless of what happens
with pg_stat_statements itself.

15 years agoBe smarter --- accept missing comma, and force comma if missing.
Bruce Momjian [Thu, 1 Jan 2009 18:31:55 +0000 (18:31 +0000)]
Be smarter --- accept missing comma, and force comma if missing.

15 years agoMention src/interfaces/libpq/libpq.rc.in needs to be updated for
Bruce Momjian [Thu, 1 Jan 2009 18:23:10 +0000 (18:23 +0000)]
Mention src/interfaces/libpq/libpq.rc.in needs to be updated for
copyright too.

15 years agoMake comma optional for copyright text change.
Bruce Momjian [Thu, 1 Jan 2009 18:21:56 +0000 (18:21 +0000)]
Make comma optional for copyright text change.

15 years agoAdd comma so this copyright notice is picked up in 2010.
Bruce Momjian [Thu, 1 Jan 2009 18:21:19 +0000 (18:21 +0000)]
Add comma so this copyright notice is picked up in 2010.

15 years agoFix a couple of missed copyright dates.
Tom Lane [Thu, 1 Jan 2009 17:59:40 +0000 (17:59 +0000)]
Fix a couple of missed copyright dates.

15 years agoUpdate copyright for 2009.
Bruce Momjian [Thu, 1 Jan 2009 17:24:05 +0000 (17:24 +0000)]
Update copyright for 2009.

15 years agoFix an oversight in my patch of a couple weeks ago that ensured a snapshot
Tom Lane [Thu, 1 Jan 2009 17:12:16 +0000 (17:12 +0000)]
Fix an oversight in my patch of a couple weeks ago that ensured a snapshot
is available during datatype input in Bind message processing.  I put the
PopActiveSnapshot() or equivalent just before PortalDefineQuery, which is
an unsafe spot for it (in 8.3 and later) because we are carrying a plancache
refcount that hasn't yet been assigned to the portal.  Any error thrown there
would result in leaking the refcount.  It's not exactly likely that
PopActiveSnapshot would throw an elog, perhaps, but it could happen.
Reorder the code and add another comment warning not to do that.

15 years agoThrow error if a <window definition> references a window that already has a
Tom Lane [Wed, 31 Dec 2008 23:42:56 +0000 (23:42 +0000)]
Throw error if a <window definition> references a window that already has a
frame clause, as appears to be required by the fine print in the SQL spec.
Per discussion with Pavel, not doing so risks user confusion.

15 years agoFix another problem in SQL-MED \d displays: should have a clean failure
Tom Lane [Wed, 31 Dec 2008 18:33:03 +0000 (18:33 +0000)]
Fix another problem in SQL-MED \d displays: should have a clean failure
report if the command is attempted against an old server.

15 years agoConsistently use multi-line formatting for all ACL columns printed by psql's
Tom Lane [Wed, 31 Dec 2008 18:07:47 +0000 (18:07 +0000)]
Consistently use multi-line formatting for all ACL columns printed by psql's
various display commands, not only for \z.

In passing, fix some infelicities in the newly added \d commands for SQL-MED
catalogs.

Andreas Scherbaum and Tom Lane

15 years agoAdd a WINDOW attribute to CREATE FUNCTION, and teach pg_dump about it,
Tom Lane [Wed, 31 Dec 2008 02:25:06 +0000 (02:25 +0000)]
Add a WINDOW attribute to CREATE FUNCTION, and teach pg_dump about it,
so that user-defined window functions are possible.  For the moment you'll
have to write them in C, for lack of any interface to the WindowObject API
in the available PLs, but it's better than no support at all.

There was some debate about the best syntax for this.  I ended up choosing
the "it's an attribute" position --- the other approach will inevitably be
more work, and the likely market for user-defined window functions is
probably too small to justify it.

15 years agoAdd some basic support for window frame clauses to the window-functions
Tom Lane [Wed, 31 Dec 2008 00:08:39 +0000 (00:08 +0000)]
Add some basic support for window frame clauses to the window-functions
patch.  This includes the ability to force the frame to cover the whole
partition, and the ability to make the frame end exactly on the current row
rather than its last ORDER BY peer.  Supporting any more of the full SQL
frame-clause syntax will require nontrivial hacking on the window aggregate
code, so it'll have to wait for 8.5 or beyond.

15 years agoReduce the last group of parallel regression tests to 19 tests, per failure
Tom Lane [Tue, 30 Dec 2008 17:11:26 +0000 (17:11 +0000)]
Reduce the last group of parallel regression tests to 19 tests, per failure
on buildfarm member bear.  Sync the test order in serial_schedule with that
in parallel_schedule.

15 years agoThe flag to mark dead tuples is nowadays called LP_DEAD, not LP_DELETE.
Heikki Linnakangas [Tue, 30 Dec 2008 16:24:37 +0000 (16:24 +0000)]
The flag to mark dead tuples is nowadays called LP_DEAD, not LP_DELETE.
Simon Riggs.

15 years agoFix oversight in ALTER TABLE ENABLE/DISABLE RULE patch: the new enabled
Tom Lane [Tue, 30 Dec 2008 03:59:19 +0000 (03:59 +0000)]
Fix oversight in ALTER TABLE ENABLE/DISABLE RULE patch: the new enabled
field needs to be included in equalRuleLocks() comparisons, else updates
will fail to propagate into relcache entries when they have positive
reference count (ie someone is using the relcache entry).
Per report from Alex Hunsaker.

15 years agoFix thinko in documentation of default window frame behavior,
Tom Lane [Mon, 29 Dec 2008 18:23:53 +0000 (18:23 +0000)]
Fix thinko in documentation of default window frame behavior,
per Hitoshi Harada.

15 years agoFinally the last test.
Michael Meskes [Mon, 29 Dec 2008 17:48:11 +0000 (17:48 +0000)]
Finally the last test.

15 years agoFirst rounf of whitespace changes. Everything but connect-test1 should be fine.
Michael Meskes [Mon, 29 Dec 2008 17:07:06 +0000 (17:07 +0000)]
First rounf of whitespace changes. Everything but connect-test1 should be fine.

15 years agoTighten up a couple of regression test cases that can have platform-dependent
Tom Lane [Mon, 29 Dec 2008 02:58:11 +0000 (02:58 +0000)]
Tighten up a couple of regression test cases that can have platform-dependent
results due to underspecified ordering.  Per report from buildfarm member
pika.

15 years agoSupport window functions a la SQL:2008.
Tom Lane [Sun, 28 Dec 2008 18:54:01 +0000 (18:54 +0000)]
Support window functions a la SQL:2008.

Hitoshi Harada, with some kibitzing from Heikki and Tom.

15 years agoMake a couple of small changes to the tuplestore API, for the benefit of the
Tom Lane [Sat, 27 Dec 2008 17:39:00 +0000 (17:39 +0000)]
Make a couple of small changes to the tuplestore API, for the benefit of the
upcoming window-functions patch.  First, tuplestore_trim is now an
exported function that must be explicitly invoked by callers at
appropriate times, rather than something that tuplestore tries to do
behind the scenes.  Second, a read pointer that is marked as allowing
backward scan no longer prevents truncation.  This means that a read pointer
marked as having BACKWARD but not REWIND capability can only safely read
backwards as far as the oldest other read pointer.  (The expected use pattern
for this involves having another read pointer that serves as the truncation
fencepost.)

15 years agoRemove unused include file, per ITAGAKI Takahiro. AFAICT this has been
Tom Lane [Fri, 26 Dec 2008 17:51:04 +0000 (17:51 +0000)]
Remove unused include file, per ITAGAKI Takahiro.  AFAICT this has been
dead code since Postgres95.

15 years agoChange the name of dtrace wal tracepoints:
Bruce Momjian [Wed, 24 Dec 2008 20:41:29 +0000 (20:41 +0000)]
Change the name of dtrace wal tracepoints:

TRACE_POSTGRESQL_WAL_BUFFER_WRITE_DIRTY

Robert Lor

15 years agoTeach MSVC build system about building foreign data wrappers.
Magnus Hagander [Sat, 20 Dec 2008 22:04:02 +0000 (22:04 +0000)]
Teach MSVC build system about building foreign data wrappers.

Should fix recent buildfarm breakage.

15 years agoAdd missing semicolon, per buildfarm results. Martin Pihlak
Tom Lane [Sat, 20 Dec 2008 16:02:55 +0000 (16:02 +0000)]
Add missing semicolon, per buildfarm results.  Martin Pihlak

15 years agoFix various confusions of pointers and OIDs, unsafe assumptions about nulls,
Tom Lane [Sat, 20 Dec 2008 15:51:28 +0000 (15:51 +0000)]
Fix various confusions of pointers and OIDs, unsafe assumptions about nulls,
etc.  I think this will fix the current buildfarm issues ...

15 years agoDon't use OidIsValid to check the return value of transformGenericOptions,
Heikki Linnakangas [Sat, 20 Dec 2008 09:40:56 +0000 (09:40 +0000)]
Don't use OidIsValid to check the return value of transformGenericOptions,
because transformGenericOptions returns an array, not an Oid. I'm not
sure if this fixes the crashes seen in buildfarm, but it should be fixed
anyway.

15 years agoAdd a new column proiswindow to pg_proc. It doesn't actually do anything
Tom Lane [Fri, 19 Dec 2008 18:25:20 +0000 (18:25 +0000)]
Add a new column proiswindow to pg_proc.  It doesn't actually do anything
useful yet, but I'm tired of re-merging this aspect of the window functions
patch.

15 years agoSQL/MED catalog manipulation facilities
Peter Eisentraut [Fri, 19 Dec 2008 16:25:19 +0000 (16:25 +0000)]
SQL/MED catalog manipulation facilities

This doesn't do any remote or external things yet, but it gives modules
like plproxy and dblink a standardized and future-proof system for
managing their connection information.

Martin Pihlak and Peter Eisentraut

15 years agoHave psql's \d+ print reloptions. Extracted from Euler Taveira de Oliveira's
Alvaro Herrera [Fri, 19 Dec 2008 14:39:58 +0000 (14:39 +0000)]
Have psql's \d+ print reloptions.  Extracted from Euler Taveira de Oliveira's
reloptions patch for autovacuum and revised by me.

Note that there doesn't seem to be a way to display an index's reloptions.

15 years agoWhen we added the ability to have zero-element ARRAY[] constructs by adding an
Tom Lane [Fri, 19 Dec 2008 05:04:35 +0000 (05:04 +0000)]
When we added the ability to have zero-element ARRAY[] constructs by adding an
explicit cast to show the intended array type, we forgot to teach ruleutils.c
to print out such constructs properly.  Found by noting bogus output from
recent changes in polymorphism regression test.

15 years agoAdd a couple of cross-references to the docs about enum types, per a
Tom Lane [Fri, 19 Dec 2008 01:34:19 +0000 (01:34 +0000)]
Add a couple of cross-references to the docs about enum types, per a
recent gripe that the info is hard to find.

15 years agoAdd "not" to wal journaling text.
Bruce Momjian [Thu, 18 Dec 2008 22:34:21 +0000 (22:34 +0000)]
Add "not" to wal journaling text.

15 years agoClarify documentation that journaling is not required for WAL or data files.
Bruce Momjian [Thu, 18 Dec 2008 22:21:16 +0000 (22:21 +0000)]
Clarify documentation that journaling is not required for WAL or data files.

15 years agoFix oversight in my recent patch to allow ExecMakeFunctionResult to handle
Tom Lane [Thu, 18 Dec 2008 19:38:22 +0000 (19:38 +0000)]
Fix oversight in my recent patch to allow ExecMakeFunctionResult to handle
materialize-mode set results.  Since it now uses the ReturnSetInfo node
to hold internal state, we need to be sure to set up the node even when
the immediately called function doesn't return set (but does have a set-valued
argument).  Per report from Anupama Aherrao.

15 years agoCode review for function default parameters patch. Fix numerous problems as
Tom Lane [Thu, 18 Dec 2008 18:20:35 +0000 (18:20 +0000)]
Code review for function default parameters patch.  Fix numerous problems as
per recent discussions.  In passing this also fixes a couple of bugs in
the previous variadic-parameters patch.

15 years agoUpdate documentation table describing how shared memory is used by
Bruce Momjian [Thu, 18 Dec 2008 17:03:09 +0000 (17:03 +0000)]
Update documentation table describing how shared memory is used by
various facilities.

15 years agoAdd note that TRUNCATE uses an access exclusive lock. This apparently
Peter Eisentraut [Thu, 18 Dec 2008 10:45:00 +0000 (10:45 +0000)]
Add note that TRUNCATE uses an access exclusive lock.  This apparently
surprised/confused some users.

15 years agoApplied patch by ITAGAKI Takahiro <itagaki.takahiro@oss.ntt.co.jp> to
Michael Meskes [Wed, 17 Dec 2008 16:52:07 +0000 (16:52 +0000)]
Applied patch by ITAGAKI Takahiro <itagaki.takahiro@oss.ntt.co.jp> to
fix segfault on non-glibc systems.

15 years agoDon't reset pg_class.reltuples and relpages in VACUUM, if any pages were
Heikki Linnakangas [Wed, 17 Dec 2008 09:15:03 +0000 (09:15 +0000)]
Don't reset pg_class.reltuples and relpages in VACUUM, if any pages were
skipped. We could update relpages anyway, but it seems better to only
update it together with reltuples, because we use the reltuples/relpages
ratio in the planner. Also don't update n_live_tuples in pgstat.

ANALYZE in VACUUM ANALYZE now needs to update pg_class, if the
VACUUM-phase didn't do so. Added some boolean-passing to let analyze_rel
know if it should update pg_class or not.

I also moved the relcache invalidation (to update rd_targblock) from
vac_update_relstats to where RelationTruncate is called, because
vac_update_relstats is not called for partial vacuums anymore. It's more
obvious to send the invalidation close to the truncation that requires it.

Per report by Ned T. Crigler.

15 years agoThe attached patch contains a couple of fixes in the existing probes and
Bruce Momjian [Wed, 17 Dec 2008 01:39:04 +0000 (01:39 +0000)]
The attached patch contains a couple of fixes in the existing probes and
includes a few new ones.

- Fixed compilation errors on OS X for probes that use typedefs
- Fixed a number of probes to pass ForkNumber per the relation forks
patch
- The new probes are those that were taken out from the previous
submitted patch and required simple fixes. Will submit the other probes
that may require more discussion in a separate patch.

Robert Lor

15 years agoAdd note to the shared memory sizing table about needing to use page count in
Alvaro Herrera [Tue, 16 Dec 2008 19:30:43 +0000 (19:30 +0000)]
Add note to the shared memory sizing table about needing to use page count in
shared_buffers and wal_buffers, not size in bytes.  Per discussion.

15 years agoMake heap_update() set newtup->t_tableOid correctly, for consistency with
Tom Lane [Tue, 16 Dec 2008 16:26:08 +0000 (16:26 +0000)]
Make heap_update() set newtup->t_tableOid correctly, for consistency with
the other major heapam.c functions.  The only known consequence of this
omission is that UPDATE RETURNING failed to return the correct value for
"tableoid", as per report from KaiGai Kohei.

Back-patch to 8.2.  Arguably it's wrong all the way back; but without
evidence of visible breakage before RETURNING was added, I'll desist from
patching the older branches.

15 years agoAttempt to fix MSVC breakage from Major Version patch.
Andrew Dunstan [Tue, 16 Dec 2008 15:42:21 +0000 (15:42 +0000)]
Attempt to fix MSVC breakage from Major Version patch.

15 years agoFix wording of section comparing triggers and rules; old wording as
Bruce Momjian [Tue, 16 Dec 2008 03:12:08 +0000 (03:12 +0000)]
Fix wording of section comparing triggers and rules;  old wording as
confusing.

15 years agoDepartment of second thoughts: further experimentation with CREATE OR REPLACE
Tom Lane [Tue, 16 Dec 2008 00:56:12 +0000 (00:56 +0000)]
Department of second thoughts: further experimentation with CREATE OR REPLACE
VIEW suggests that it'd be worth spelling the error messages out in a little
more detail.  This seems to help with localizing the problem.

15 years agoImprove comment about why sleep is used by pg_standby to handle 'copy'
Bruce Momjian [Mon, 15 Dec 2008 22:13:02 +0000 (22:13 +0000)]
Improve comment about why sleep is used by pg_standby to handle 'copy'
file size problem.

15 years agoAdd documentation that pg_standby sleeps on Win32 because of 'copy' behavior.
Bruce Momjian [Mon, 15 Dec 2008 22:08:35 +0000 (22:08 +0000)]
Add documentation that pg_standby sleeps on Win32 because of 'copy' behavior.

15 years agoAdd comment about GNUWin32's cp not having the file system problem.
Bruce Momjian [Mon, 15 Dec 2008 21:39:25 +0000 (21:39 +0000)]
Add comment about GNUWin32's cp not having the file system problem.

15 years agoCode review for CREATE OR REPLACE VIEW patch. Do things in a saner order to
Tom Lane [Mon, 15 Dec 2008 21:35:31 +0000 (21:35 +0000)]
Code review for CREATE OR REPLACE VIEW patch.  Do things in a saner order to
result in hopefully-less-confusing error messages when the new definition
isn't compatible with the old; minor other cleanup.

15 years agoAdd missing 'break' in Win32 switch statement, reported by Martin Zaun
Bruce Momjian [Mon, 15 Dec 2008 21:11:54 +0000 (21:11 +0000)]
Add missing 'break' in Win32 switch statement, reported by Martin Zaun

15 years agoFix cast-away-const problem as well as bogus calculation of required buffer size.
Tom Lane [Mon, 15 Dec 2008 19:07:48 +0000 (19:07 +0000)]
Fix cast-away-const problem as well as bogus calculation of required buffer size.

15 years agoArrange for the pg_foo_is_visible and has_foo_privilege families of functions
Tom Lane [Mon, 15 Dec 2008 18:09:41 +0000 (18:09 +0000)]
Arrange for the pg_foo_is_visible and has_foo_privilege families of functions
to return NULL, instead of erroring out, if the target object is specified by
OID and we can't find that OID in the catalogs.  Since these functions operate
internally on SnapshotNow rules, there is a race condition when using them
in user queries: the query's MVCC snapshot might "see" a catalog row that's
already committed dead, leading to a failure when the inquiry function is
applied.  Returning NULL should generally provide more convenient behavior.
This issue has been complained of before, and in particular we are now seeing
it in the regression tests due to another recent patch.

15 years agoDo not try to change a const variable.
Michael Meskes [Mon, 15 Dec 2008 15:34:07 +0000 (15:34 +0000)]
Do not try to change a const variable.

15 years agoReduce the scaling factor for attstattarget to number-of-lexemes from 100
Tom Lane [Mon, 15 Dec 2008 15:06:31 +0000 (15:06 +0000)]
Reduce the scaling factor for attstattarget to number-of-lexemes from 100
to 10, to compensate for the recent change in default statistics target.
The original number was pulled out of the air anyway :-(, but it was picked
in the context of the old default, so holding the default size of the
MCELEM array constant seems the best thing.  Per discussion.

15 years agoRemove our dependencies on MB_CUR_MAX in favor of believing that
Tom Lane [Mon, 15 Dec 2008 14:55:50 +0000 (14:55 +0000)]
Remove our dependencies on MB_CUR_MAX in favor of believing that
pg_database_encoding_max_length() predicts the maximum character length
returned by wchar2char().  Per Hiroshi Inoue, MB_CUR_MAX isn't usable on
Windows because we allow encoding = UTF8 when the locale says differently;
and getting rid of it seems a good idea on general principles because it
narrows our dependence on libc's locale API just a little bit more.

Also install a check for overflow of the buffer size computation.

15 years agoSupport specifying filename for SSL certificate, key, root certificate store
Magnus Hagander [Mon, 15 Dec 2008 10:28:22 +0000 (10:28 +0000)]
Support specifying filename for SSL certificate, key, root certificate store
and certificate revokation list by using connection parameters or environment
variables.

Original patch by Mark Woodward, heavily reworked by Alvaro Herrera and
Magnus Hagander.

15 years agoRestore enforce_generic_type_consistency's pre-8.3 behavior of allowing an
Tom Lane [Sun, 14 Dec 2008 19:45:52 +0000 (19:45 +0000)]
Restore enforce_generic_type_consistency's pre-8.3 behavior of allowing an
actual argument type of ANYARRAY to match an argument declared ANYARRAY,
so long as ANYELEMENT etc aren't used.  I had overlooked the fact that this
is a possible case while fixing bug #3852; but it is possible because
pg_statistic contains columns declared ANYARRAY.  Per gripe from Corey Horton.

15 years agoReplace both send and receive BIO routines in the SSL code with our own,
Magnus Hagander [Sun, 14 Dec 2008 19:39:37 +0000 (19:39 +0000)]
Replace both send and receive BIO routines in the SSL code with our own,
calling recv() and send(). This makes the calls go through the socket
emulation code on Win32, making them for example properly interruptible.

15 years agoIncrease the default value of default_statistics_target from 10 to 100,
Tom Lane [Sat, 13 Dec 2008 19:13:44 +0000 (19:13 +0000)]
Increase the default value of default_statistics_target from 10 to 100,
and its maximum value from 1000 to 10000.  ALTER TABLE SET STATISTICS
similarly now allows a value up to 10000.  Per discussion.

15 years agoRemove pg_plan_queries()'s now-useless needSnapshot parameter. It's useless
Tom Lane [Sat, 13 Dec 2008 02:29:22 +0000 (02:29 +0000)]
Remove pg_plan_queries()'s now-useless needSnapshot parameter.  It's useless
in 8.3, too, but I'm not back-patching this change since it would break any
extension modules that might be calling that function.

15 years agoFix failure to ensure that a snapshot is available to datatype input functions
Tom Lane [Sat, 13 Dec 2008 02:00:20 +0000 (02:00 +0000)]
Fix failure to ensure that a snapshot is available to datatype input functions
when they are invoked by the parser.  We had been setting up a snapshot at
plan time but really it needs to be done earlier, before parse analysis.
Per report from Dmitry Koterov.

Also fix two related problems discovered while poking at this one:
exec_bind_message called datatype input functions without establishing a
snapshot, and SET CONSTRAINTS IMMEDIATE could call trigger functions without
establishing a snapshot.

Backpatch to 8.2.  The underlying problem goes much further back, but it is
masked in 8.1 and before because we didn't attempt to invoke domain check
constraints within datatype input.  It would only be exposed if a C-language
datatype input function used the snapshot; which evidently none do, or we'd
have heard complaints sooner.  Since this code has changed a lot over time,
a back-patch is hardly risk-free, and so I'm disinclined to patch further
than absolutely necessary.

15 years agoReduce some rel.h inclusions, and add pg_list.h to pg_proc_fn.h.
Alvaro Herrera [Fri, 12 Dec 2008 22:56:00 +0000 (22:56 +0000)]
Reduce some rel.h inclusions, and add pg_list.h to pg_proc_fn.h.

15 years agoUsing clause has to accept signed numeric constants too.
Michael Meskes [Fri, 12 Dec 2008 12:14:43 +0000 (12:14 +0000)]
Using clause has to accept signed numeric constants too.

15 years agoTo reduce confusion over whether VACUUM FULL is needed for anti-wraparound
Tom Lane [Thu, 11 Dec 2008 18:16:18 +0000 (18:16 +0000)]
To reduce confusion over whether VACUUM FULL is needed for anti-wraparound
vacuuming (it's not), say "database-wide VACUUM" instead of "full-database
VACUUM" in the relevant hint messages.  Also, document the permissions needed
to do this.  Per today's discussion.

15 years agoThe macros NULL_DEV and DEVNULL were both used to work around
Peter Eisentraut [Thu, 11 Dec 2008 10:25:17 +0000 (10:25 +0000)]
The macros NULL_DEV and DEVNULL were both used to work around
platform-specific spellings of /dev/null.  But one should be enough, so
settle on DEVNULL.

15 years agoMove carefully obscured SunOS 4 specific #include out of c.h into port
Peter Eisentraut [Thu, 11 Dec 2008 09:17:07 +0000 (09:17 +0000)]
Move carefully obscured SunOS 4 specific #include out of c.h into port
header file.  SunOS 4 is probably broken anyway, but this item stuck out as
completely weird.

15 years agoAppend major version number and for libraries soname major version number
Peter Eisentraut [Thu, 11 Dec 2008 07:34:09 +0000 (07:34 +0000)]
Append major version number and for libraries soname major version number
to the gettext domain name, to simplify parallel installations.

Also, rename set_text_domain() to pg_bindtextdomain(), because that is what
it does.

15 years agoTweak the tree descent loop in fsm_search_avail to not look at the
Tom Lane [Wed, 10 Dec 2008 17:11:18 +0000 (17:11 +0000)]
Tweak the tree descent loop in fsm_search_avail to not look at the
right child if it doesn't need to.  This saves some miniscule number
of cycles, but the ulterior motive is to avoid an optimization bug
known to exist in SCO's C compiler (and perhaps others?)