summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2005-02-11Fix ANALYZE to accumulate some minimal statistics for an all-null column.Tom Lane
Per gripes from Mike Mascari and Bernd Heller.
2005-02-10Fix SPI cursor support to allow scanning the results of utility commandsTom Lane
that return tuples (such as EXPLAIN). Per gripe from Michael Fuhr. Side effect: fix an old bug that unintentionally disabled backward scans for all SPI-created cursors.
2005-02-10Fixed changelog entry to list correct bug reporter.Michael Meskes
2005-02-10Fixed more parsing bugs in other CREATE statements as pointed out by TANIDAMichael Meskes
Yutaka <tanida@sra.co.jp>.
2005-02-09ALTER TABLE ADD COLUMN exhibits a significant memory leak when adding aNeil Conway
column with a default expression. In that situation, we need to rewrite the heap relation. To evaluate the new default expression, we use ExecEvalExpr(); however, this can allocate memory in the current memory context, and ATRewriteTable() does not switch out of the active portal's heap memory context. The end result is a rather large memory leak (on the order of gigabytes for a reasonably sized table). This patch changes ATRewriteTable() to switch to the per-tuple memory context before beginning the per-tuple loop. It also removes an explicit heap_freetuple() in the loop, since that is no longer needed. In an unrelated change, I noticed the code was scanning through the attributes of the new tuple descriptor for each tuple of the old table. I changed this to use precomputation, which should slightly speed up the loop. Thanks to steve@deefs.net for reporting the leak.
2005-02-09Fixed bug in parsing of CREATE AS statement.Michael Meskes
2005-02-06Repair CLUSTER failure after ALTER TABLE SET WITHOUT OIDS. Turns outTom Lane
there are corner cases involving dropping toasted columns in which the previous coding would fail, too: the new version of the table might not have any TOAST table, but we'd still propagate possibly-wide values of dropped columns forward.
2005-02-05Fix bit-rot in ipc_test.c; it didn't include some stuff that pg_shmem.cTom Lane
now depends on.
2005-02-05Marginal hack to merge adjacent ReleaseBuffer/ReadBuffer calls intoTom Lane
ReleaseAndReadBuffer during GIST index searches. We already did this in btree and rtree, might as well do it here too.
2005-02-04Refactor some duplicated code in lock.c: create UnGrantLock(), move codeNeil Conway
from LockRelease() and LockReleaseAll() into it. From Heikki Linnakangas.
2005-02-03Fix minor thinko in logic to set dump order when dumping from a pre-7.3Tom Lane
database: aggregates should be dumped in the same pass as operators, not in the same pass as functions.
2005-02-03Ensure that all details of the ARC algorithm are hidden within freelist.c.Tom Lane
This refactoring does not change any algorithms or data structures, just remove visibility of the ARC datastructures from other source files.
2005-02-02Improve performance of fmgr.c calling routines for cases with more thanTom Lane
two arguments. Per suggestions from A. Ogawa.
2005-02-02Adjust constant-folding of CASE expressions so that the simple comparisonTom Lane
form of CASE (eg, CASE 0 WHEN 1 THEN ...) can be constant-folded as it was in 7.4. Also, avoid constant-folding result expressions that are certainly unreachable --- the former coding was a bit cavalier about this and could generate unexpected results for all-constant CASE expressions. Add regression test cases. Per report from Vlad Marchenko.
2005-02-02Add to release checklist:Bruce Momjian
* Update inet/cidr data types with newest Bind patches
2005-02-02Fixed bug in parsing of #line statement in declare section.Michael Meskes
2005-02-02Add support for temporary views, including documentation and regressionNeil Conway
tests. Contributed by Koju Iijima, review from Neil Conway, Gavin Sherry and Tom Lane. Also, fix error in description of WITH CHECK OPTION clause in the CREATE VIEW reference page: it should be "CASCADED", not "CASCADE".
2005-02-01Fix a bug induced by the list-rewrite that resulted in incrementing theNeil Conway
command counter more than necessary. Per report from Michael Fuhr.
2005-02-01Adjust estimate_num_groups() to not clamp per-relation group countTom Lane
estimate to less than the number of values estimated for any one grouping Var, as suggested by Manfred. This is intuitively right, and what's more it puts the plan choices in the subselect regression test back the way they were before ...
2005-02-01Adjust plpgsql to allow assignment to an element of an array that isTom Lane
initially NULL. For 8.0 we changed the main executor to have this behavior in an UPDATE of an array column, but plpgsql's equivalent case was overlooked. Per report from Sven Willenberger.
2005-02-01Sync inet formatting code with recent BIND releases. In particular,Tom Lane
fix bug with inconsistent selection of default mask length for "class D" addresses. Per report from Steve Atkins.
2005-01-28When dealing with multiple grouping columns coming from the same table,Tom Lane
clamp the estimated number of groups to table row count over 10, instead of table row count; this reflects a heuristic that people probably won't group over a near-unique set of columns, and the knowledge that we don't currently have any way to estimate the correlation of the columns better than guessing. This change creates a trivial plan change in one of the regression tests.
2005-01-28Improve planner's estimation of the space needed for HashAgg plans:Tom Lane
look at the actual aggregate transition datatypes and the actual overhead needed by nodeAgg.c, instead of using pessimistic round numbers. Per a discussion with Michael Tiemann.
2005-01-28pg_aggregate.h fails to compile standalone, for lack of an #includeTom Lane
defining List.
2005-01-28Adjust mkdir_p to do stat() before trying mkdir(). Avoids problems onTom Lane
Solaris and should be a little faster anyway, since in most scenarios all but perhaps the last path component will already exist.
2005-01-27Check that aggregate creator has the right to execute the transitionTom Lane
functions of the aggregate, at both aggregate creation and execution times.
2005-01-27Small patch to move get_grosysid() from catalog/aclchk.c toNeil Conway
utils/cache/lsyscache.c where it can be used by other things. Also cleans up both get_usesysid() and get_grosysid() a bit. From Stephen Frost.
2005-01-27Change heap_modifytuple() to require a TupleDesc rather than aNeil Conway
Relation. Patch from Alvaro Herrera, minor editorializing by Neil Conway.
2005-01-27Provide a more descriptive error message when the return type of an SRFNeil Conway
does not match what the query expected. From Brendan Jurd, minor editorializing by Neil Conway.
2005-01-27Generalize TRUNCATE to support truncating multiple tables in oneTom Lane
command. This is useful because we can allow truncation of tables referenced by foreign keys, so long as the referencing table is truncated in the same command. Alvaro Herrera
2005-01-27Add regression tests for recent cursor/savepoint bug fixed by Alvaro andNeil Conway
Tom.
2005-01-26Close all cursors created during a failed subtransaction. This is neededTom Lane
to avoid problems when a cursor depends on objects created or changed in the same subtransaction. We'd like to do better someday, but this seems the only workable answer for 8.0.1.
2005-01-26On Windows, set the postmaster executable's stack size to 4MB, so thatTom Lane
it agrees with the default value of max_stack_depth.
2005-01-26Minor tweak to avoid unnecessary memory bloat when dumping extremely wideTom Lane
column values in -d mode. Per report from Marty Scholes. This doesn't completely solve the issue, because we still need multiple copies of the field value, but at least one copy can be got rid of painlessly ...
2005-01-26Make pg_dump and pg_restore handle binary archive formats correctlyTom Lane
when using stdout/stdin on Windows.
2005-01-26Use SHGetFolderPath instead of SHGetSpecialFolderPath to find theTom Lane
APPDATA directory on Windows. Magnus Hagander
2005-01-25Fix breakage created by addition of separate 'acl pass' in pg_dump.Tom Lane
Also clean up incredibly poor style in TocIDRequired() usage.
2005-01-25Add missing "ko".Peter Eisentraut
2005-01-25Fixed segfault due to freeing a struct definition twice if it was a named ↵Michael Meskes
struct used in a typedef.
2005-01-25Regression tests for recent bugfix to ALTER TABLE ADD COLUMN: ensure thatNeil Conway
constraints on domain types are properly enforced, even if the newly added column has no default value. Per bug #1433.
2005-01-24Fix ALTER TABLE ADD COLUMN so that constraints of domain types areTom Lane
enforced properly when there is no explicit default value for the new column. Per report from Craig Perras.
2005-01-24Disallow LOAD to non-superusers. Per report from John Heasman.Tom Lane
2005-01-24Fix memory leak in rtdosplit, per report from Clive Page.Tom Lane
2005-01-23Document why CREATE CONSTRAINT TRIGGER doesn't tab complete.Bruce Momjian
2005-01-23The result of a FULL or RIGHT join can't be assumed to be sorted by theTom Lane
left input's sorting, because null rows may be inserted at various points. Per report from Ferenc Lutischá¸n.
2005-01-23Add tools/find_gt_lt to find < and > in SGML source.Bruce Momjian
Lowercase some uppercase tags so tools is more reliable at finding problems.
2005-01-23pg_dump dumped the wrong tablespace for an index (ie, the parent table'sTom Lane
tablespace instead of the index's own), except when the index was created as a constraint. Report and fix by Tanida Yutaka.
2005-01-23New routine _getObjectDescription() failed to cope with some aspects ofTom Lane
pre-7.3 pg_dump archive files: namespace isn't there, and in some cases te->tag may already be quotified. Per report from Alan Pevec and followup testing.
2005-01-22Mention issue with < and > in docs.Bruce Momjian
2005-01-22This patch updates the regression tests to allow "make installcheck" toNeil Conway
pass if "default_with_oids" is set to false. I took the approach of explicitly adding WITH OIDS to the CREATE TABLEs where necessary, rather than tweaking the default_with_oids GUC var.