| Commit message (Collapse) | Author | Age |
|
|
|
|
|
| |
deferred triggers: either one can create more work for the other,
so we have to loop till it's all gone. Per example from andrew@supernews.
Add a regression test to help spot trouble in this area in future.
|
|
|
|
|
|
| |
while completing execution of the cursor's query. Otherwise we get wrong
answers or even crashes from non-volatile functions called by the query.
Per report from andrew@supernews.
|
|
|
|
|
| |
that is a plain NULL and not a COALESCE with no inputs. Fixes crash
reported by Michael Williamson.
|
|
|
|
|
| |
into the wrong memory context, resulting in a query-lifespan memory leak.
Bug is new in 8.0, I believe. Per report from Rae Stiening.
|
| |
|
|
|
|
| |
outer side of an outer join. Per andrew@supernews.
|
| |
|
| |
|
|
|
|
|
|
|
| |
cases with binary-compatible relabeling. My first try was implicitly
assuming that all operators scalarineqsel is used for have binary-
compatible datatypes on both sides ... which is very wrong of course.
Per report from Michael Fuhr.
|
|
|
|
|
|
|
|
| |
January --- would return wrong year for 2005-01-01 and 2006-01-01.
per report from Robert Creager.
Backpatch to 8.0.X.
|
|
|
|
|
|
|
|
| |
exit. Without this, operations triggered during backend exit (such as
temp table deletions) won't be counted ... which given heavy usage of
temp tables can lead to pg_autovacuum falling way behind on the need
to vacuum pg_class and pg_attribute. Per reports from Steve Crawford
and others.
|
| |
|
|
|
|
|
|
|
|
| |
binary-compatible relabeling of one or both operands. examine_variable
should avoid stripping RelabelType from non-variable expressions, so that
they will continue to have the correct type; and convert_to_scalar should
just use that type and ignore the other input type. This isn't perfect
but it beats failing entirely. Per example from Michael Fuhr.
|
| |
|
| |
|
| |
|
|
|
|
| |
output ordering.
|
|
|
|
|
|
| |
when a zero-month interval is given. Per discussion with Karel.
Also, some desultory const-labeling of constant tables. More could be
done along that line.
|
|
|
|
|
|
| |
actual number of unremoved tuples as pg_class.reltuples. The idea of
trying to estimate a steady state condition still seems attractive, but
this particular implementation crashed and burned ...
|
|
|
|
|
|
| |
immunte to changes in libpq's usage of pgport between major versions.
Backpatch to 8.0.X.
|
|
|
|
|
|
| |
overly strong lock on pg_depend, and it wasn't closing the rel when done.
The latter bug was masked by the ResourceOwner code, which is something
that should be changed.
|
|
|
|
| |
DefineCustomRealVariable(). Thomas Hallgren
|
|
|
|
| |
Karel Zak
|
|
|
|
|
|
| |
should work on Windows now. Also, rename set_noblock to pg_set_noblock;
since it is included in libpq, the former name polluted application
namespace.
|
| |
|
|
|
|
|
| |
its private storage, because that belongs to the function that it is
supposed to call. Per report from Ezequiel Tolnay.
|
|
|
|
|
|
|
| |
linking to libpq. This insulates applications from changes in libpq's
usage of libpgport functions.
Backpatched to 8.0.X.
|
|
|
|
|
|
|
|
| |
never-yet-vacuumed relation. This restores the pre-8.0 behavior of
avoiding seqscans during initial data loading, while still allowing
reasonable optimization after a table has been vacuumed. Several
regression test cases revert to 7.4-like behavior, which is probably
a good sign. Per gripes from Keith Browne and others.
|
|
|
|
| |
creation fails ... no point in running the tests.
|
|
|
|
|
| |
per recent discussion concluding that this is the Right Thing. Add
regression test check for this behavior. Michael Fuhr
|
|
|
|
|
|
|
|
|
|
|
| |
currently does. This is now the default Win32 wal sync method because
we perfer o_datasync to fsync.
Also, change Win32 fsync to a new wal sync method called
fsync_writethrough because that is the behavior of _commit, which is
what is used for fsync on Win32.
Backpatch to 8.0.X.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
explicit paths, so that the log can be replayed in a data directory
with a different absolute path than the original had. To avoid forcing
initdb in the 8.0 branch, continue to accept the old WAL log record
types; they will never again be generated however, and the code can be
dropped after the next forced initdb. Per report from Oleg Bartunov.
We still need to think about what it really means to WAL-log CREATE
TABLESPACE commands: we more or less have to put the absolute path
into those, but how to replay in a different context??
|
|
|
|
|
|
| |
up-to-speed logic; in particular this will cause it to quote names that
match keywords. Remove unnecessary multibyte cruft from quote_literal
(all backend-internal encodings are 8-bit-safe).
|
|
|
|
| |
it's supposed to when --file option is used.
|
|
|
|
| |
before we attempt any file deletions in ShutdownPostgres. Per Tatsuo.
|
|
|
|
| |
bug on powerpc and amd64.
|
|
|
|
| |
backend exit. Per report from Bruce.
|
|
|
|
|
|
|
|
|
| |
is still alive. This improves our odds of not getting fooled by an
unrelated process when checking a stale lock file. Other checks already
in place, plus one newly added in checkDataDir(), ensure that we cannot
attempt to usurp the place of a postmaster belonging to a different userid,
so there is no need to error out. Add comments indicating the importance
of these other checks.
|
|
|
|
|
| |
Allow Win32 to support the O_SYNC open flag as an wal_sync_method
method.
|
|
|
|
| |
Per Neil.
|
|
|
|
|
|
|
| |
locale is C.
Backpatch to 8.0.X because some operating systems were throwing errors
for such operations, rather than ignoring the locale when it was C.
|
|
|
|
|
| |
client aplications so 7.4.X releases can be installed on the same
machine as 8.0.X.
|
|
|
|
|
| |
who for some reason isn't marked usecreatedb. Per report from Alexander
Pravking. Also fix sloppy coding in have_createdb_privilege().
|
|
|
|
|
|
|
|
| |
elog if the former has trouble writing its file. Code review for
Magnus' patch to redirect stderr to syslog on Windows (Bruce's version
seems right, but did some minor prettification).
Backpatch both changes to 8.0 branch.
|
|
|
|
| |
feature for Win32 and bcc.
|
|
|
|
|
|
|
|
|
| |
simpler 2Q algorithm, to avoid possible problems with the pending patent
on ARC. Testing so far suggests that there is little if any performance
loss from doing this.
Note that this patch is going into the 8.0 branch only; a much more
extensive revision is planned for HEAD.
|
|
|
|
|
|
| |
no held locks. This maintains the invariant that proclocks are present
only for procs that are holding or awaiting a lock; when this is not
true, LockRelease will fail. Per report from Stephen Clouse.
|
|
|
|
|
|
| |
indexscans involving partial indexes. These would always be dominated
by a simple indexscan on such an index, so there's no point in considering
them. Fixes overoptimism in a patch I applied last October.
|
|
|
|
|
|
| |
it was in 7.4, and add some comments explaining why it has to be this way.
I broke it for OR'd index predicates in a fit of code cleanup last summer.
Per example from Sergey Koshcheyev.
|