Commit Graph

27739 Commits

Author SHA1 Message Date
Tom Lane ccdb6627ee 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.
2009-01-02 01:16:02 +00:00
Bruce Momjian 65deb13436 Be smarter --- accept missing comma, and force comma if missing. 2009-01-01 18:31:55 +00:00
Bruce Momjian 34273b44a6 Mention src/interfaces/libpq/libpq.rc.in needs to be updated for
copyright too.
2009-01-01 18:23:10 +00:00
Bruce Momjian c4eaa9672a Make comma optional for copyright text change. 2009-01-01 18:21:56 +00:00
Bruce Momjian 2dca07d54e Add comma so this copyright notice is picked up in 2010. 2009-01-01 18:21:19 +00:00
Tom Lane 62b64cbb48 Fix a couple of missed copyright dates. 2009-01-01 17:59:40 +00:00
Bruce Momjian 511db38ace Update copyright for 2009. 2009-01-01 17:24:05 +00:00
Tom Lane 87081b2d35 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.
2009-01-01 17:12:16 +00:00
Tom Lane df0ea5a1cd 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.
2008-12-31 23:42:56 +00:00
Tom Lane eb273743ed Fix another problem in SQL-MED \d displays: should have a clean failure
report if the command is attempted against an old server.
2008-12-31 18:33:03 +00:00
Tom Lane 6672daace1 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
2008-12-31 18:07:47 +00:00
Tom Lane 26ce4e85a1 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.
2008-12-31 02:25:06 +00:00
Tom Lane 8e8854daa2 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.
2008-12-31 00:08:39 +00:00
Tom Lane 0fb9be7acf 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.
2008-12-30 17:11:26 +00:00
Heikki Linnakangas 4942ea2870 The flag to mark dead tuples is nowadays called LP_DEAD, not LP_DELETE.
Simon Riggs.
2008-12-30 16:24:37 +00:00
Tom Lane 1b1b0ac8d0 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.
2008-12-30 03:59:19 +00:00
Tom Lane 2c38b8c715 Fix thinko in documentation of default window frame behavior,
per Hitoshi Harada.
2008-12-29 18:23:53 +00:00
Michael Meskes bdfde2b390 Finally the last test. 2008-12-29 17:48:11 +00:00
Michael Meskes 3c82099c82 First rounf of whitespace changes. Everything but connect-test1 should be fine. 2008-12-29 17:07:06 +00:00
Tom Lane 2f806e540f Tighten up a couple of regression test cases that can have platform-dependent
results due to underspecified ordering.  Per report from buildfarm member
pika.
2008-12-29 02:58:11 +00:00
Tom Lane 95b07bc7f5 Support window functions a la SQL:2008.
Hitoshi Harada, with some kibitzing from Heikki and Tom.
2008-12-28 18:54:01 +00:00
Tom Lane 38e9348282 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.)
2008-12-27 17:39:00 +00:00
Tom Lane c8b69ed6a8 Remove unused include file, per ITAGAKI Takahiro. AFAICT this has been
dead code since Postgres95.
2008-12-26 17:51:04 +00:00
Bruce Momjian 4ee79fd20d Change the name of dtrace wal tracepoints:
TRACE_POSTGRESQL_WAL_BUFFER_WRITE_DIRTY

Robert Lor
2008-12-24 20:41:29 +00:00
Magnus Hagander 4fc6e2fdcf Teach MSVC build system about building foreign data wrappers.
Should fix recent buildfarm breakage.
2008-12-20 22:04:02 +00:00
Tom Lane 6d79871883 Add missing semicolon, per buildfarm results. Martin Pihlak 2008-12-20 16:02:55 +00:00
Tom Lane a1212d09a1 Fix various confusions of pointers and OIDs, unsafe assumptions about nulls,
etc.  I think this will fix the current buildfarm issues ...
2008-12-20 15:51:28 +00:00
Heikki Linnakangas cef8efc62d 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.
2008-12-20 09:40:56 +00:00
Tom Lane ea7d5199e5 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.
2008-12-19 18:25:20 +00:00
Peter Eisentraut cae565e503 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
2008-12-19 16:25:19 +00:00
Alvaro Herrera 1eec10a2de 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.
2008-12-19 14:39:58 +00:00
Tom Lane adac22bf8a 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.
2008-12-19 05:04:35 +00:00
Tom Lane e32014d85d Add a couple of cross-references to the docs about enum types, per a
recent gripe that the info is hard to find.
2008-12-19 01:34:19 +00:00
Bruce Momjian 382af3a954 Add "not" to wal journaling text. 2008-12-18 22:34:21 +00:00
Bruce Momjian fa6116a3da Clarify documentation that journaling is not required for WAL or data files. 2008-12-18 22:21:16 +00:00
Tom Lane 4ac592be6c 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.
2008-12-18 19:38:22 +00:00
Tom Lane 517ae4039e 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.
2008-12-18 18:20:35 +00:00
Bruce Momjian cee63eab8d Update documentation table describing how shared memory is used by
various facilities.
2008-12-18 17:03:09 +00:00
Peter Eisentraut a666d28543 Add note that TRUNCATE uses an access exclusive lock. This apparently
surprised/confused some users.
2008-12-18 10:45:00 +00:00
Michael Meskes e05c5a908b Applied patch by ITAGAKI Takahiro <itagaki.takahiro@oss.ntt.co.jp> to
fix segfault on non-glibc systems.
2008-12-17 16:52:07 +00:00
Heikki Linnakangas dcf8409985 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.
2008-12-17 09:15:03 +00:00
Bruce Momjian 5a90bc1fbe 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
2008-12-17 01:39:04 +00:00
Alvaro Herrera 5434e46986 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.
2008-12-16 19:30:43 +00:00
Tom Lane fc3297d828 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.
2008-12-16 16:26:08 +00:00
Andrew Dunstan 04ecc64310 Attempt to fix MSVC breakage from Major Version patch. 2008-12-16 15:42:21 +00:00
Bruce Momjian 7ac5727659 Fix wording of section comparing triggers and rules; old wording as
confusing.
2008-12-16 03:12:08 +00:00
Tom Lane 794ec7b063 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.
2008-12-16 00:56:12 +00:00
Bruce Momjian 1b92aeb93e Improve comment about why sleep is used by pg_standby to handle 'copy'
file size problem.
2008-12-15 22:13:02 +00:00
Bruce Momjian 30c6202a2a Add documentation that pg_standby sleeps on Win32 because of 'copy' behavior. 2008-12-15 22:08:35 +00:00
Bruce Momjian eb88e7ee2c Add comment about GNUWin32's cp not having the file system problem. 2008-12-15 21:39:25 +00:00