- 18 Oct, 2008 1 commit
-
-
Peter Eisentraut authored
-
- 17 Oct, 2008 8 commits
-
-
Tom Lane authored
(I'm leaving GiST/GIN cleanup to Teodor.)
-
Alvaro Herrera authored
formatted_start_time.
-
Tom Lane authored
scanning; GiST and GIN do not, and it seems like too much trouble to make them do so. By teaching ExecSupportsBackwardScan() about this restriction, we ensure that the planner will protect a scroll cursor from the problem by adding a Materialize node. In passing, fix another longstanding bug in the same area: backwards scan of a plan with set-returning functions in the targetlist did not work either, since the TupFromTlist expansion code pays no attention to direction (and has no way to run a SRF backwards anyway). Again the fix is to make ExecSupportsBackwardScan check this restriction. Also adjust the index AM API specification to note that mark/restore support is unnecessary if the AM can't produce ordered output.
-
Tom Lane authored
set_rel_width(). The code had been catering for the possibility of different varnos in the relation targetlist, but this is impossible for a base relation (and if it were possible, putting all the widths in the same RelOptInfo would be wrong anyway).
-
Tom Lane authored
-
Teodor Sigaev authored
several fragments a-la Google. Sushant Sinha <sushant354@gmail.com>
-
Teodor Sigaev authored
Patch from Sushant Sinha <sushant354@gmail.com> http://archives.postgresql.org/pgsql-hackers/2008-07/msg00785.php
-
Teodor Sigaev authored
is NULL but SK_SEARCHNULL is not set. Add checking IS NULL of keys to set during key initialization. If key is NULL and SK_SEARCHNULL is not set then nothnig can be satisfied. With assert-enabled compilation that causes coredump. Bug was introduced in 8.3 by support of IS NULL index scan.
-
- 16 Oct, 2008 3 commits
-
-
Neil Conway authored
In the previous coding, the list of columns that needed to be hashed on was allocated in the per-query context, but we reallocated every time the Agg node was rescanned. Since this information doesn't change over a rescan, just construct the list of columns once during ExecInitAgg().
-
Tom Lane authored
ITAGAKI Takahiro
-
Tom Lane authored
according to the TupleDesc's natts, not the number of physical columns in the tuple. The previous coding would do the wrong thing in cases where natts is different from the tuple's column count: either incorrectly report error when it should just treat the column as null, or actually crash due to indexing off the end of the TupleDesc's attribute array. (The second case is probably not possible in modern PG versions, due to more careful handling of inheritance cases than we once had. But it's still a clear lack of robustness here.) The incorrect error indication is ignored by all callers within the core PG distribution, so this bug has no symptoms visible within the core code, but it might well be an issue for add-on packages. So patch all the way back.
-
- 14 Oct, 2008 10 commits
-
-
Tom Lane authored
lengthof(SysAtt) not FirstLowInvalidHeapAttributeNumber, for consistency with the other uses of the SysAtt array, and to make it clearer that it doesn't walk off the end of that array.
-
Tom Lane authored
Formerly, the lack of any opclasses that could accept such data was enough of a defense, but now with a "record" opclass we need to check more carefully. (You can still use that opclass for an index, but you have to store a named composite type not an anonymous one.)
-
Tom Lane authored
pointers. This is only a whitespace change, which ought to be ignored by regression testing, but for some reason buildfarm member spoonbill doesn't like it.
-
Alvaro Herrera authored
by renaming the new copies after the catalog games.
-
Tom Lane authored
the timestamp types. Turns out this doesn't even reduce the available range of dates, since the restriction to dates that work for Julian-date arithmetic is much tighter than the int32 range anyway. Per a longstanding TODO item.
-
Tom Lane authored
returning a failure code that none of its callers bothered to check for.
-
Michael Meskes authored
-
Heikki Linnakangas authored
fsync requests. This should fix the installcheck failure of the buildfarm member "kudu".
-
Tom Lane authored
depth-first search order. Upon close reading of SQL:2008, it seems that the spec's SEARCH DEPTH FIRST and SEARCH BREADTH FIRST options do not actually guarantee any particular result order: what they do is provide a constructed column that the user can then sort on in the outer query. So this is actually just as much functionality ...
-
Tom Lane authored
detection.
-
- 13 Oct, 2008 4 commits
-
-
Tom Lane authored
pseudo-type record[] to represent arrays of possibly-anonymous composite types. Since composite datums carry their own type identification, no extra knowledge is needed at the array level. The main reason for doing this right now is that it is necessary to support the general case of detection of cycles in recursive queries: if you need to compare more than one column to detect a cycle, you need to compare a ROW() to an array built from ROW()s, at least if you want to do it as the spec suggests. Add some documentation and regression tests concerning the cycle detection issue.
-
Tom Lane authored
-
Tom Lane authored
-
Tom Lane authored
RecursiveUnion to which it refers. It turns out that we can just postpone the relevant initialization steps until the first exec call for the node, by which time the ancestor node must surely be initialized. Per report from Greg Stark.
-
- 11 Oct, 2008 1 commit
-
-
Alvaro Herrera authored
-
- 10 Oct, 2008 4 commits
-
-
Tom Lane authored
Per gripe from Bill Thoen.
-
Tom Lane authored
for bitmap index scans. Per report and test case from Kevin Grittner.
-
Tom Lane authored
Depesz Lubaczewski. In HEAD, also move a couple of other cases to make the code ordering match up with ProcessUtility.
-
Michael Meskes authored
-
- 09 Oct, 2008 8 commits
-
-
Tom Lane authored
-
Alvaro Herrera authored
-
Tom Lane authored
it can handle functions returning setof record. The case was left undone originally, but it turns out to be simple to fix.
-
Alvaro Herrera authored
-
Alvaro Herrera authored
the ereport macro. Included in this commit are enough files for starting plpgsql, plpython, plperl and pltcl translations.
-
Tom Lane authored
the isTrigger state explicitly, not rely on nonzero-ness of trigrelOid to indicate trigger-hood, because trigrelOid will be left zero when compiling for validation. The (useless) function hash entry built by the validator was able to match an ordinary non-trigger call later in the same session, thereby bypassing the check that is supposed to prevent such a call. Per report from Alvaro. It might be worth suppressing the useless hash entry altogether, but that's a bigger change than I want to consider back-patching. Back-patch to 8.0. 7.4 doesn't have the problem because it doesn't have validation mode.
-
Tom Lane authored
Report and fix by Michael McMaster. Some minor code beautification by me, also avoid memory leaks in the special-case paths.
-
Heikki Linnakangas authored
to process any pending unlinks for the source database. Before, if you dropped a relation in the template database just before CREATE DATABASE, and a checkpoint happened during copydir(), the checkpoint might delete a file that we're just about to copy, causing lstat() in copydir() to fail with ENOENT. Backpatch to 8.3, where the pending unlinks were introduced. Per report by Matthew Wakeling and analysis by Tom Lane.
-
- 08 Oct, 2008 1 commit
-
-
Tom Lane authored
of referencing a WITH item that's not yet in scope according to the SQL spec's semantics. This seems to be an easy error to make, and the bare "relation doesn't exist" message doesn't lead one's mind in the correct direction to fix it.
-