aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Refactor crosstab() to build and return a tuplestore instead of usingTom Lane2008-12-01
| | | | | | | value-per-call mode. This should be more efficient in normal usage, but the real problem with the prior coding was that it returned with a SPI call still active. That could cause problems if execution was interleaved with anything else that might use SPI.
* Fix dblink and tablefunc to not return with the wrong CurrentMemoryContext.Tom Lane2008-11-30
| | | | Per buildfarm results.
* Clean up the API for DestReceiver objects by eliminating the assumptionTom Lane2008-11-30
| | | | | | | | | | | | that a Portal is a useful and sufficient additional argument for CreateDestReceiver --- it just isn't, in most cases. Instead formalize the approach of passing any needed parameters to the receiver separately. One unexpected benefit of this change is that we can declare typedef Portal in a less surprising location. This patch is just code rearrangement and doesn't change any functionality. I'll tackle the HOLD-cursor-vs-toast problem in a follow-on patch.
* Add a "LIKE = typename" clause to CREATE TYPE for base types. This allowsTom Lane2008-11-30
| | | | | | | | | | | the basic representational details (typlen, typalign, typbyval, typstorage) to be copied from an existing type rather than listed explicitly in the CREATE TYPE command. The immediate reason for this is to provide a simple solution for add-on modules that want to define types represented as int8, float4, or float8: as of 8.4 the appropriate PASSEDBYVALUE setting is platform-specific and so it's hard for a SQL script to know what to do. This patch fixes the contrib/isn breakage reported by Rushabh Lathia.
* Remove inappropriate memory context switch in shutdown_MultiFuncCall().Tom Lane2008-11-30
| | | | | | | This was a thinko introduced in a patch from last February; it results in memory leakage if an SRF is shut down before the actual end of query, because subsequent code will be running in a longer-lived context than it's expecting to be.
* Fix recently-added array_agg tests to ensure they produce stable resultsTom Lane2008-11-29
| | | | | regardless of plan changes. Per intermittent buildfarm failures on "pigeon" and others.
* Make sure we give an appropriate user-facing error when attemptingTom Lane2008-11-29
| | | | | to drop a table that is referenced by an open cursor. Fix unstable ecpg regression test result that was produced by this oversight.
* Partial fix for fallout from temp-port changes. ecpg still needs more work,Tom Lane2008-11-28
| | | | but I think this is enough to turn the buildfarm green again.
* Fix an oversight in uninstall_isn.sql: must drop operator families explicitly.Tom Lane2008-11-28
|
* My recent fix for semijoin planning didn't actually work for a semijoin with aTom Lane2008-11-28
| | | | | | RHS that can't be unique-ified --- join_is_legal has to check that before deciding to build a join, else we'll have an unimplementable joinrel. Per report from Greg Stark.
* Cosmetic cleanups in contrib/isn (doesn't fix the passbyval problem)Tom Lane2008-11-28
|
* Support regular expressions in pg_ident.conf.Magnus Hagander2008-11-28
|
* Reduce risk of accidentally running temp-install regression tests againstPeter Eisentraut2008-11-28
| | | | | | | | | a mismatching installation. Pick a default port number calculated from the version number, and try a few times with other numbers if that one doesn't work. Check if we can connect to the port before starting our own postmaster, to detect some other server already running there. To simplify the code, drop --temp-port option and use --port for both temp-install and pre-installed case.
* Fix bug in the tsvector stats collection function, which caused a crash ifHeikki Linnakangas2008-11-27
| | | | the sample contains just a one tsvector, containing only one lexeme.
* Fix obsolete comment regarding FSM truncation.Heikki Linnakangas2008-11-27
|
* Don't force creation of the FSM on searches. It will still be createdHeikki Linnakangas2008-11-27
| | | | | as soon as the first page fills up, and is marked as (almost) full, though.
* Add that PL/Java is an implementation of SQL/JRT, and drop claim thatPeter Eisentraut2008-11-27
| | | | PL/pgSQL has much to do with SQL/PSM.
* Drop CLI related features from the list, since we don't track the ODBCPeter Eisentraut2008-11-27
| | | | business in core.
* Mark features related to WITH/SELECT as supported.Peter Eisentraut2008-11-27
|
* Fix #ifdeffed debugging code to work with relation forks.Heikki Linnakangas2008-11-27
|
* Tweak wording of DISCARD ALL description to avoid giving the impressionTom Lane2008-11-27
| | | | | that the presented list of equivalent operations is meant to be the primary definition of what it does. Per comment from Guillaume Smet.
* Fix minor memory leak introduced in recent SQL-functions hacking: theTom Lane2008-11-27
| | | | | | DestReceiver created during postquel_start needs to be destroyed during postquel_end. In a moment of brain fade I had assumed this would be taken care of by FreeQueryDesc, but it's not (and shouldn't be).
* Rely on relcache invalidation to update the cached size of the FSM.Heikki Linnakangas2008-11-26
|
* interval.c needs limits.hMichael Meskes2008-11-26
|
* Applied patch by Ron Mayer <rm_pg@cheapcomplexdevices.com> to merge the newMichael Meskes2008-11-26
| | | | interval style into ecpg.
* Tweak new PQExpBufferBroken macro to suppress warnings from pickierTom Lane2008-11-26
| | | | versions of gcc.
* Removed strchrnulMichael Meskes2008-11-26
|
* Let's see if using -c instead of -- style fixes the PGOPTIONS issue.Tom Lane2008-11-26
|
* When creating a varchar struct name braces must be discarded.Michael Meskes2008-11-26
|
* configure check for docbook2man program, used in the new XML-based manPeter Eisentraut2008-11-26
| | | | | page build target. This covers from-source, Debian, and Fedora installation variants.
* Feature F442 "Mixed column references in set functions" is supported.Peter Eisentraut2008-11-26
|
* Add %expect 0 to all parser input files to prevent conflicts slipping by.Peter Eisentraut2008-11-26
|
* Make DISCARD ALL discard advisory locks, too. Marko KreenTom Lane2008-11-26
|
* Adjust the behavior of the PQExpBuffer code to make it have well-definedTom Lane2008-11-26
| | | | | | | | | results (ie, an empty "broken" buffer) if memory overrun occurs anywhere along the way to filling the buffer. The previous coding would just silently discard portions of the intended buffer contents, as exhibited in trouble report from Sam Mason. Also, tweak psql's main loop to correctly detect and report such overruns. There's probably much more that should be done in this line, but this is a start.
* information_schema.key_column_usage.position_in_unique_constraint wasTom Lane2008-11-25
| | | | | misdocumented as not being implemented. In reality it has worked since the release of 8.2.
* Use ResourceOwners in the snapshot manager, instead of attempting to track themAlvaro Herrera2008-11-25
| | | | | | | | by hand. As an added bonus, the new code is smaller and more understandable, and the ugly loops are gone. This had been discussed all along but never implemented. It became clear that it really needed to be fixed after a bug report by Pavan Deolasee.
* Remove PGINTERVALSTYLE from the set of special environment variables forTom Lane2008-11-25
| | | | | | | | | libpq. As noted by Peter, adding this variable created a risk of unexpected connection failures when talking to older server versions, and since it doesn't do anything you can't do with PGOPTIONS, it doesn't seem really necessary. Removing it does occasion a few extra lines in pg_regress.c, but saving a getenv() call per libpq connection attempt is perhaps worth that anyway.
* Omit src/port/pipe.c on non-Windows platforms. It's useless and drawsTom Lane2008-11-25
| | | | complaints about empty object files on some platforms, eg Darwin.
* If pg_ctl stop fails, print an error message and exit (instead of going outPeter Eisentraut2008-11-25
| | | | | of our way to ignore the exit status). If this ever really happens, worst case you will not see the "score" at the bottom of the test run.
* Disable FNM_CASEFOLD. Need a proper solution later, but just commentMagnus Hagander2008-11-24
| | | | it out for now so the buildfarm recovers.
* Move FAQ_AIX information to installation instructions.Peter Eisentraut2008-11-24
| | | | | | The information on why the shared libraries are built the way they are was not relevant to end users and has been made a mailing list archive link in Makefile.shlib.
* Add support for matching wildcard server certificates to the new SSL code.Magnus Hagander2008-11-24
| | | | | This uses the function fnmatch() which is not available on all platforms (notably Windows), so import the implementation from NetBSD into src/port.
* CLUSTER VERBOSE and corresponding clusterdb --verbose optionPeter Eisentraut2008-11-24
| | | | Jim Cox and Peter Eisentraut
* Teach RequestCheckpoint() to wait and retry a few times if it can't signalTom Lane2008-11-23
| | | | | | | | the bgwriter immediately. This covers the case where the bgwriter is still starting up, as seen in a recent buildfarm failure. In future it might also assist with clean recovery after a bgwriter termination and restart --- right now the postmaster treats early bgwriter exit as a system crash, but that might not always be so.
* Switch the planner over to treating qualifications of a JOIN_SEMI join asTom Lane2008-11-22
| | | | | | | | | | | | | | | | | | | though it is an inner rather than outer join type. This essentially means that we don't bother to separate "pushed down" qual conditions from actual join quals at a semijoin plan node; which is okay because the restrictions of SQL syntax make it impossible to have a pushed-down qual that references the inner side of a semijoin. This allows noticeably better optimization of IN/EXISTS cases than we had before, since the equivalence-class machinery can now use those quals. Also fix a couple of other mistakes that had essentially disabled the ability to unique-ify the inner relation and then join it to just a subset of the left-hand relations. An example case using the regression database is select * from tenk1 a, tenk1 b where (a.unique1,b.unique2) in (select unique1,unique2 from tenk1 c); which is planned reasonably well by 8.3 and earlier but had been forcing a cartesian join of a/b in CVS HEAD.
* Minor copy-editing.Tom Lane2008-11-21
|
* Fix a few more format argument warnings.Magnus Hagander2008-11-21
|
* Document which GUC settings are enums and not strings, along with a shortMagnus Hagander2008-11-21
| | | | paragraph about what that means.
* Docs update for enumvals patch.Magnus Hagander2008-11-21
|
* Make the enumvals column of pg_settings be text[] instead of justMagnus Hagander2008-11-21
| | | | a comma separated string.