summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2008-01-21Improve description of bgwriter_lru_multiplier, per discussion.Tom Lane
2008-01-21Fix RS_isRegis() to agree exactly with RS_compile()'s idea of what's a validTom Lane
regis. Correct the latter's oversight that a bracket-expression needs to be terminated. Reduce the ereports to elogs, since they are now not expected to ever be hit (thus addressing Alvaro's original complaint). In passing, const-ify the string argument to RS_compile.
2008-01-20Fix psql \h output for case of no parameters (ie, list all the known commands)Tom Lane
to format properly for the actually needed column width, instead of having a hard-wired assumption about the longest command name length. Also make it respond to the current screen width. In passing, const-ify the constant table.
2008-01-20Split error message.Alvaro Herrera
2008-01-19Make pg_regress clean out the testtablespace directory only on Windows.Tom Lane
On other platforms it's better to let the Makefile handle it, but we want the regression tests to be invokable without make on Windows. A batch file would be a better solution, but no time for that before 8.3. Per my discovery that this breaks testing under SELinux, and subsequent discussion.
2008-01-18must commit after autoconf ... and yes, I used the right autoconfREL8_3_RC2Marc G. Fournier
2008-01-18Stamp release for 8.3RC2; configure will be stamped by packager.Bruce Momjian
2008-01-17Insert into getCopyDataMessage() the same logic that already existed in theTom Lane
main code path for enlarging libpq's input buffer in one swoop when needing to read a long data message. Without this, the code will double the buffer size, read more data, notice it still hasn't got the whole message, and repeat till it finally has a large enough buffer. Which wastes a lot of data-moving effort and also memory (since malloc probably can't do anything very useful with the freed-up smaller buffers). Not sure why this wasn't there already; certainly the COPY data path is a place where we're quite likely to see long data messages. I'm not backpatching though, since this is just a marginal performance issue rather than a real bug.
2008-01-17Fix subselect.c to avoid assuming that a SubLink's testexpr references eachTom Lane
subquery output column exactly once left-to-right. Although this is the case in the original parser output, it might not be so after rewriting and constant-folding, as illustrated by bug #3882 from Jan Mate. Instead scan the subquery's target list to obtain needed per-column information; this is duplicative of what the parser did, but only a couple dozen lines need be copied, and we can clean up a couple of notational uglinesses. Bug was introduced in 8.2 as part of revision of SubLink representation.
2008-01-17Fix ALTER INDEX RENAME so that if the index belongs to a unique or primary keyTom Lane
constraint, the constraint is renamed as well. This avoids inconsistent situations that could confuse pg_dump (not to mention humans). We might at some point provide ALTER TABLE RENAME CONSTRAINT as a more general solution, but there seems no reason not to allow doing it this way too. Per bug #3854 and related discussions.
2008-01-17Update Japanese FAQ.Bruce Momjian
Jun Kuwamura
2008-01-17Typo fix.Magnus Hagander
Erik Rijkers
2008-01-17pgcrypto doc updatesMagnus Hagander
Marko Kreen
2008-01-16Document the fact that COPY always uses the client encoding.Andrew Dunstan
2008-01-16Remove inappropriate cd commands, per David Wheeler. Also makeTom Lane
the PATH responsive to the installation prefix, which was the apparent intent of the previous edit, but not well executed.
2008-01-16Improve usage message for pgindent.Bruce Momjian
2008-01-16Fix core dump with buffer-overrun by too long infinitive. Add checking of usingTeodor Sigaev
fixed length arrays to prevent array's overrun. Per report by Hannes Dorbath <light@theendofthetunnel.de> and comments by Tom.
2008-01-15Be less wishy-washy in the documentation and comments about whether aTom Lane
ParameterStatus message can be sent during COPY OUT: it's definitely possible, since COPY from a SELECT subquery can trigger any user-defined function.
2008-01-15Prevent CLUSTER from decreasing a relation's relfrozenxid. BugTom Lane
introduced in rewrite to make CLUSTER MVCC-safe.
2008-01-15Revise memory management for libxml calls. Instead of keeping libxml's dataTom Lane
in whichever context happens to be current during a call of an xml.c function, use a dedicated context that will not go away until we explicitly delete it (which we do at transaction end or subtransaction abort). This makes recovery after an error much simpler --- we don't have to individually delete the data structures created by libxml. Also, we need to initialize and cleanup libxml only once per transaction (if there's no error) instead of once per function call, so it should be a bit faster. We'll need to keep an eye out for intra-transaction memory leaks, though. Alvaro and Tom.
2008-01-15Tweak new error message to conform to style guidelines.Tom Lane
2008-01-15Add check of headline method presence. Per report by Yoshiyuki Asaba ↵Teodor Sigaev
<y-asaba@sraoss.co.jp>
2008-01-15Re-enabled variables in fetch/move command.Michael Meskes
2008-01-15Somebody forgot to add this ERRCODE everywhere it should go ...Tom Lane
2008-01-14Add:Bruce Momjian
> > * Add the ability to automatically create materialized views > > Right now materialized views require the user to create triggers on the > main table to keep the summary table current. SQL syntax should be able > to manager the triggers and summary table automatically. A more > sophisticated implementation would automatically retrieve from the > summary table when the main table is referenced, if possible. >
2008-01-14Most recent Postgres version is 8.2.6, per report from Robert Treat.Bruce Momjian
2008-01-14Prevent pg_dump from dumping the comment (if any) on the 'public' schema.Tom Lane
This is to avoid uselessly requiring superuser permissions to restore the dump without errors. Pretty grotty, but no better alternative seems available, at least not in the near term.
2008-01-14Avoid cluttering the postmaster log with bogus complaintsTom Lane
during transaction abort, per my note from a couple days ago.
2008-01-14Fix an ancient oversight in libpq's handling of V3-protocol COPY OUT mode:Tom Lane
we need to be able to swallow NOTICE messages, and potentially also ParameterStatus messages (although the latter would be a bit weird), without exiting COPY OUT state. Fix it, and adjust the protocol documentation to emphasize the need for this. Per off-list report from Alexander Galler.
2008-01-14Mark autovacuum entries in pg_stat_activity so that they can be easilyAlvaro Herrera
distinguished from user-invoked commands. Per suggestion from Tom Lane.
2008-01-14Set valid return values even in case of an error to prevent segfaults.Michael Meskes
2008-01-14Fix pgstat_heap() to not be broken by syncscans starting from a blockTom Lane
higher than zero. Same problem as just detected in CREATE INDEX CONCURRENTLY.
2008-01-14Use an indexscan not a heapscan to search pg_index in get_pkey_attnames.Tom Lane
Noted while looking for heapscans that might need to start from block zero.
2008-01-14Fix CREATE INDEX CONCURRENTLY so that it won't use synchronized scan forTom Lane
its second pass over the table. It has to start at block zero, else the "merge join" logic for detecting which TIDs are already in the index doesn't work. Hence, extend heapam.c's API so that callers can enable or disable syncscan. (I put in an option to disable buffer access strategy, too, just in case somebody needs it.) Per report from Hannes Dorbath.
2008-01-13Fix a regression test that fails if default_text_search_config isn'tTom Lane
'english'.
2008-01-13Add note pointing out that read-only commands no longer consumeTom Lane
command IDs.
2008-01-13Changed prototype for ECPGdo because some compilers don't like int/enum ↵Michael Meskes
aliasing in there.
2008-01-12Update documentation for tsvector duplicate elimination:Bruce Momjian
! Duplicate positions for the same lexeme are discarded.
2008-01-12It turns out the LIBXML_TEST_VERSION macro calls xmlInitParser().Tom Lane
Therefore we must xmlCleanupParser(), or we risk leaving behind dangling pointers to whatever memory context is current when xml_init() is called. This seems to fix bug #3860, though we might still want the more invasive solution being worked on by Alvaro.
2008-01-12Fix two places in xml.c that neglected to check the return values ofNeil Conway
SPI_prepare() and SPI_cursor_open(), to silence a Coverity warning.
2008-01-12Minor perf tweak for _SPI_strdup(): if we're going to call strlen()Neil Conway
anyway, it is faster to memcpy() than to strcpy().
2008-01-12Fix logical errors in constraint exclusion: we cannot assume that a CHECKTom Lane
constraint yields TRUE for every row of its table, only that it does not yield FALSE (a NULL result isn't disallowed). This breaks a couple of implications that would be true in two-valued logic. I had put in one such mistake in an 8.2.5 patch: foo IS NULL doesn't refute a strict operator on foo. But there was another in the original 8.2 release: NOT foo doesn't refute an expression whose truth would imply the truth of foo. Per report from Rajesh Kumar Mallah. To preserve the ability to do constraint exclusion with one partition holding NULL values, extend relation_excluded_by_constraints() to check for attnotnull flags, and add col IS NOT NULL expressions to the set of constraints we hope to refute.
2008-01-11The original implementation of polymorphic aggregates didn't really get theTom Lane
checking of argument compatibility right; although the problem is only exposed with multiple-input aggregates in which some arguments are polymorphic and some are not. Per bug #3852 from Sokolov Yura.
2008-01-11Fix an old error in clause_selectivity: the default selectivity estimateTom Lane
for unhandled clause types ought to be 0.5, not 1.0. I fear I introduced this silliness due to misreading the intent of the very-poorly-structured code that was there when we inherited the file from Berkeley. The lack of sanity in this behavior was exposed by an example from Sim Zacks. (Arguably this is a bug fix and should be back-patched, but I'm a bit hesitant to introduce a possible planner behavior change in the back branches; it might detune queries that worked acceptably in the past.) While at it, make estimation for DistinctExpr do something marginally realistic, rather than just defaulting.
2008-01-11Add:Bruce Momjian
> * Add ability to trigger on TRUNCATE > > http://archives.postgresql.org/pgsql-sql/2008-01/msg00050.php
2008-01-11Fixed lexer to correctly parse C quotes.Michael Meskes
2008-01-11Fix a conceptual error in my patch of 2007-10-26 that avoided consideringTom Lane
clauseless joins of relations that have unexploited join clauses. Rather than looking at every other base relation in the query, the correct thing is to examine the other relations in the "initial_rels" list of the current make_rel_from_joinlist() invocation, because those are what we actually have the ability to join against. This might be a subset of the whole query in cases where join_collapse_limit or from_collapse_limit or full joins have prevented merging the whole query into a single join problem. This is a bit untidy because we have to pass those rels down through a new PlannerInfo field, but it's necessary. Per bug #3865 from Oleg Kharin.
2008-01-11Restructure the shutdown procedure for the archiver process to allow it toTom Lane
finish archiving everything (when there's no error), and to eliminate various hazards as best we can. This fixes a previous 8.3 patch that caused the postmaster to kill and then restart the archiver during shutdown (!?). The new behavior is that the archiver is allowed to run unmolested until the bgwriter has exited; then it is sent SIGUSR2 to tell it to do a final archiving cycle and quit. We only SIGQUIT the archiver if we want a panic stop; this is important since SIGQUIT will also be sent to any active archive_command. The postmaster also now doesn't SIGQUIT the stats collector until the bgwriter is done, since the bgwriter can send stats messages in 8.3. The postmaster will not exit until both the archiver and stats collector are gone; this provides some defense (not too bulletproof) against conflicting archiver or stats collector processes being started by a new postmaster instance. We continue the prior practice that the archiver will check for postmaster death immediately before issuing any archive_command; that gives some additional protection against conflicting archivers. Also, modify the archiver process to notice SIGTERM and refuse to issue any more archive commands if it gets it. The postmaster doesn't ever send it SIGTERM; we assume that any such signal came from init and is a notice of impending whole-system shutdown. In this situation it seems imprudent to try to start new archive commands --- if they aren't extremely quick they're likely to get SIGKILL'd by init. All per discussion.
2008-01-10Generate and include manifest in standalone libpq build on Windows.Magnus Hagander
Hiroshi Saito
2008-01-10vacuum_cost_limit has a minimum value of 1, not zero; updateBruce Momjian
postgresql.conf comment to match.