summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Update copyright for 2009.Bruce Momjian2009-01-011037-2061/+2061
|
* Fix an oversight in my patch of a couple weeks ago that ensured a snapshotTom Lane2009-01-011-6/+12
| | | | | | | | | | 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.
* Throw error if a <window definition> references a window that already has aTom Lane2008-12-313-14/+29
| | | | | 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.
* Fix another problem in SQL-MED \d displays: should have a clean failureTom Lane2008-12-311-1/+22
| | | | report if the command is attempted against an old server.
* Consistently use multi-line formatting for all ACL columns printed by psql'sTom Lane2008-12-312-65/+92
| | | | | | | | | 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
* Add a WINDOW attribute to CREATE FUNCTION, and teach pg_dump about it,Tom Lane2008-12-319-18/+70
| | | | | | | | | | | 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.
* Add some basic support for window frame clauses to the window-functionsTom Lane2008-12-3124-307/+757
| | | | | | | | 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.
* Reduce the last group of parallel regression tests to 19 tests, per failureTom Lane2008-12-302-7/+9
| | | | | on buildfarm member bear. Sync the test order in serial_schedule with that in parallel_schedule.
* The flag to mark dead tuples is nowadays called LP_DEAD, not LP_DELETE.Heikki Linnakangas2008-12-301-2/+2
| | | | Simon Riggs.
* Fix oversight in ALTER TABLE ENABLE/DISABLE RULE patch: the new enabledTom Lane2008-12-301-1/+3
| | | | | | | 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.
* Fix thinko in documentation of default window frame behavior,Tom Lane2008-12-291-2/+2
| | | | per Hitoshi Harada.
* Finally the last test.Michael Meskes2008-12-291-3/+3
|
* First rounf of whitespace changes. Everything but connect-test1 should be fine.Michael Meskes2008-12-2974-887/+888
|
* Tighten up a couple of regression test cases that can have platform-dependentTom Lane2008-12-292-7/+8
| | | | | results due to underspecified ordering. Per report from buildfarm member pika.
* Support window functions a la SQL:2008.Tom Lane2008-12-2892-317/+6716
| | | | Hitoshi Harada, with some kibitzing from Heikki and Tom.
* Make a couple of small changes to the tuplestore API, for the benefit of theTom Lane2008-12-273-27/+65
| | | | | | | | | | | | 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.)
* Remove unused include file, per ITAGAKI Takahiro. AFAICT this has beenTom Lane2008-12-261-45/+0
| | | | dead code since Postgres95.
* Change the name of dtrace wal tracepoints:Bruce Momjian2008-12-242-6/+6
| | | | | | TRACE_POSTGRESQL_WAL_BUFFER_WRITE_DIRTY Robert Lor
* Teach MSVC build system about building foreign data wrappers.Magnus Hagander2008-12-201-1/+10
| | | | Should fix recent buildfarm breakage.
* Add missing semicolon, per buildfarm results. Martin PihlakTom Lane2008-12-201-2/+2
|
* Fix various confusions of pointers and OIDs, unsafe assumptions about nulls,Tom Lane2008-12-201-17/+32
| | | | etc. I think this will fix the current buildfarm issues ...
* Don't use OidIsValid to check the return value of transformGenericOptions,Heikki Linnakangas2008-12-201-10/+10
| | | | | | 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.
* Add a new column proiswindow to pg_proc. It doesn't actually do anythingTom Lane2008-12-198-2143/+2169
| | | | | useful yet, but I'm tired of re-merging this aspect of the window functions patch.
* SQL/MED catalog manipulation facilitiesPeter Eisentraut2008-12-1976-123/+8450
| | | | | | | | 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
* Have psql's \d+ print reloptions. Extracted from Euler Taveira de Oliveira'sAlvaro Herrera2008-12-191-3/+22
| | | | | | reloptions patch for autovacuum and revised by me. Note that there doesn't seem to be a way to display an index's reloptions.
* When we added the ability to have zero-element ARRAY[] constructs by adding anTom Lane2008-12-192-5/+13
| | | | | | 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.
* Add a couple of cross-references to the docs about enum types, per aTom Lane2008-12-191-1/+12
| | | | recent gripe that the info is hard to find.
* Add "not" to wal journaling text.Bruce Momjian2008-12-181-2/+2
|
* Clarify documentation that journaling is not required for WAL or data files.Bruce Momjian2008-12-181-3/+3
|
* Fix oversight in my recent patch to allow ExecMakeFunctionResult to handleTom Lane2008-12-181-18/+18
| | | | | | | 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.
* Code review for function default parameters patch. Fix numerous problems asTom Lane2008-12-1827-439/+797
| | | | | per recent discussions. In passing this also fixes a couple of bugs in the previous variadic-parameters patch.
* Update documentation table describing how shared memory is used byBruce Momjian2008-12-181-25/+19
| | | | various facilities.
* Add note that TRUNCATE uses an access exclusive lock. This apparentlyPeter Eisentraut2008-12-181-1/+8
| | | | surprised/confused some users.
* Applied patch by ITAGAKI Takahiro <itagaki.takahiro@oss.ntt.co.jp> toMichael Meskes2008-12-173-47/+36
| | | | fix segfault on non-glibc systems.
* Don't reset pg_class.reltuples and relpages in VACUUM, if any pages wereHeikki Linnakangas2008-12-177-61/+94
| | | | | | | | | | | | | | | | | 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.
* The attached patch contains a couple of fixes in the existing probes andBruce Momjian2008-12-175-37/+79
| | | | | | | | | | | | | 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
* Add note to the shared memory sizing table about needing to use page count inAlvaro Herrera2008-12-161-1/+11
| | | | shared_buffers and wal_buffers, not size in bytes. Per discussion.
* Make heap_update() set newtup->t_tableOid correctly, for consistency withTom Lane2008-12-161-1/+2
| | | | | | | | | | 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.
* Attempt to fix MSVC breakage from Major Version patch.Andrew Dunstan2008-12-161-1/+2
|
* Fix wording of section comparing triggers and rules; old wording asBruce Momjian2008-12-161-8/+4
| | | | confusing.
* Department of second thoughts: further experimentation with CREATE OR REPLACETom Lane2008-12-162-8/+14
| | | | | 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.
* Improve comment about why sleep is used by pg_standby to handle 'copy'Bruce Momjian2008-12-151-7/+6
| | | | file size problem.
* Add documentation that pg_standby sleeps on Win32 because of 'copy' behavior.Bruce Momjian2008-12-151-2/+11
|
* Add comment about GNUWin32's cp not having the file system problem.Bruce Momjian2008-12-151-2/+3
|
* Code review for CREATE OR REPLACE VIEW patch. Do things in a saner order toTom Lane2008-12-154-38/+48
| | | | | result in hopefully-less-confusing error messages when the new definition isn't compatible with the old; minor other cleanup.
* Add missing 'break' in Win32 switch statement, reported by Martin ZaunBruce Momjian2008-12-151-1/+2
|
* Fix cast-away-const problem as well as bogus calculation of required buffer ↵Tom Lane2008-12-151-11/+16
| | | | size.
* Arrange for the pg_foo_is_visible and has_foo_privilege families of functionsTom Lane2008-12-153-8/+148
| | | | | | | | | | | 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.
* Do not try to change a const variable.Michael Meskes2008-12-152-32/+33
|
* Reduce the scaling factor for attstattarget to number-of-lexemes from 100Tom Lane2008-12-151-4/+4
| | | | | | | 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.