- 28 Mar, 2005 1 commit
-
-
Tom Lane authored
really ought to run before canonicalize_qual, because it can now produce forms that canonicalize_qual knows how to improve (eg, NOT clauses). Also, because eval_const_expressions already knows about flattening nested ANDs and ORs into N-argument form, the initial flatten_andors pass in canonicalize_qual is now completely redundant and can be removed. This doesn't save a whole lot of code, but the time and palloc traffic eliminated is a useful gain on large expression trees.
-
- 27 Mar, 2005 4 commits
-
-
Tom Lane authored
access: define new index access method functions 'amgetmulti' that can fetch multiple TIDs per call. (The functions exist but are totally untested as yet.) Since I was modifying pg_am anyway, remove the no-longer-needed 'rel' parameter from amcostestimate functions, and also remove the vestigial amowner column that was creating useless work for Alvaro's shared-object-dependencies project. Initdb forced due to changes in pg_am.
-
Tom Lane authored
that is 'x = true' becomes 'x' and 'x = false' becomes 'NOT x'. This isn't all that amazingly useful in itself, but it ensures that we will recognize the different forms as being logically equivalent when checking partial index predicates. Per example from Patrick Clery.
-
Tom Lane authored
clean up itup.h a little bit.
-
Tom Lane authored
structs. There are many places in the planner where we were passing both a rel and an index to subroutines, and now need only pass the index struct. Notationally simpler, and perhaps a tad faster.
-
- 26 Mar, 2005 7 commits
-
-
Tom Lane authored
for boolean indexes. Previously we would only use such an index with WHERE clauses like 'indexkey = true' or 'indexkey = false'. The new code transforms the cases 'indexkey', 'NOT indexkey', 'indexkey IS TRUE', and 'indexkey IS FALSE' into one of these. While this is only marginally useful in itself, I intend soon to change constant-expression simplification so that 'foo = true' and 'foo = false' are reduced to just 'foo' and 'NOT foo' ... which would lose the ability to use boolean indexes for such queries at all, if the indexscan machinery couldn't make the reverse transformation.
-
Tom Lane authored
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.
-
Tom Lane authored
checkInsertTargets(). Avoids O(N^2) behavior on wide target lists.
-
Tom Lane authored
-
Tom Lane authored
-
Tom Lane authored
output ordering.
-
Tom Lane authored
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.
-
- 25 Mar, 2005 14 commits
-
-
Bruce Momjian authored
This reduces header file install from 8 seconds to 0.40 seconds.
-
Bruce Momjian authored
> o Do VACUUM FULL if table is nearly empty?
-
Tom Lane authored
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 ...
-
Tom Lane authored
executing a statement that fires triggers. Formerly this time was included in "Total runtime" but not otherwise accounted for. As a side benefit, we avoid re-opening relations when firing non-deferred AFTER triggers, because the trigger code can re-use the main executor's ResultRelInfo data structure.
-
Tom Lane authored
when open references remain during normal cleanup of a resource owner. This restores the system's ability to warn about leaks to what it was before 8.0. Not really a user-level bug, but helpful for development.
-
Bruce Momjian authored
immunte to changes in libpq's usage of pgport between major versions.
-
Tom Lane authored
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.
-
Tom Lane authored
-
Tom Lane authored
DefineCustomRealVariable(). Thomas Hallgren
-
Tom Lane authored
Karel Zak
-
Tom Lane authored
Correct one mis-setting of freeval (which could at worst leak a few bytes until the trigger exits, so it's no big deal).
-
Bruce Momjian authored
-
-
Tom Lane authored
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.
-
- 24 Mar, 2005 14 commits
-
-
Tom Lane authored
-
Tom Lane authored
its private storage, because that belongs to the function that it is supposed to call. Per report from Ezequiel Tolnay.
-
Bruce Momjian authored
linking to libpq. This insulates applications from changes in libpq's usage of libpgport functions. Backpatched to 8.0.X.
-
Tom Lane authored
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.
-
Bruce Momjian authored
* Touch the socket and lock file at least every hour, to * ensure that they are not removed by overzealous /tmp-cleaning * tasks. Set to 58 minutes so a cleaner never sees the * file as an hour old.
-
Tom Lane authored
creation fails ... no point in running the tests.
-
Tom Lane authored
per recent discussion concluding that this is the Right Thing. Add regression test check for this behavior. Michael Fuhr
-
Bruce Momjian authored
prevent complaints from laptop users who don't like their hard drives starting up every 10 minutes.
-
Bruce Momjian authored
< > * Add GUC to issue notice about queries that use unjoined tables
-
Bruce Momjian authored
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.
-
Bruce Momjian authored
-
Tom Lane authored
-
Bruce Momjian authored
< * Add ANSI INTERVAL handling > * Add ISo INTERVAL handling < o Interpret syntax that isn't uniquely ANSI or PG, like '1:30' or < '1' as ANSI syntax, e.g. interpret '1:30' MINUTE TO SECOND as > o Interpret syntax that isn't uniquely ISO or PG, like '1:30' or > '1' as ISO syntax, e.g. interpret '1:30' MINUTE TO SECOND as 649c649 < * Add pre-parsing phase that converts non-ANSI syntax to supported > * Add pre-parsing phase that converts non-ISO syntax to supported
-
Neil Conway authored
per request from Tom.
-