- 02 Jul, 2006 3 commits
-
-
Bruce Momjian authored
> * -Add fillfactor to control reserved free space during index creation
-
Bruce Momjian authored
< o Add ALTER TABLE tab ADD/DROP INHERITS parent < < This allows tables to be added/removed from an inheritance < hierarchy. This is particularly useful for table partitioning. < http://archives.postgresql.org/pgsql-hackers/2006-05/msg00988.php < > o -Add ALTER TABLE tab INHERIT / NO INHERIT parent
-
Bruce Momjian authored
Open items: There were a few tangentially related issues that have come up that I think are TODOs. I'm likely to tackle one or two of these next so I'm interested in hearing feedback on them as well. . Constraints currently do not know anything about inheritance. Tom suggested adding a coninhcount and conislocal like attributes have to track their inheritance status. . Foreign key constraints currently do not get copied to new children (and therefore my code doesn't verify them). I don't think it would be hard to add them and treat them like CHECK constraints. . No constraints at all are copied to tables defined with LIKE. That makes it hard to use LIKE to define new partitions. The standard defines LIKE and specifically says it does not copy constraints. But the standard already has an option called INCLUDING DEFAULTS; we could always define a non-standard extension LIKE table INCLUDING CONSTRAINTS that gives the user the option to request a copy including constraints. . Personally, I think the whole attislocal thing is bunk. The decision about whether to drop a column from children tables or not is something that should be up to the user and trying to DWIM based on whether there was ever a local definition or the column was acquired purely through inheritance is hardly ever going to match up with user expectations. . And of course there's the whole unique and primary key constraint issue. I think to get any traction at all on this you have a prerequisite of a real partitioned table implementation where the system knows what the partition key is so it can recognize when it's a leading part of an index key. Greg Stark
-
- 01 Jul, 2006 2 commits
-
-
Tom Lane authored
ScalarArrayOpExpr index quals: we were estimating the right total number of rows returned, but treating the index-access part of the cost as if a single scan were fetching that many consecutive index tuples. Actually we should treat it as a multiple indexscan, and if there are enough of 'em the Mackert-Lohman discount should kick in.
-
Tom Lane authored
clauses containing no variables and no volatile functions. Such a clause can be used as a one-time qual in a gating Result plan node, to suppress plan execution entirely when it is false. Even when the clause is true, putting it in a gating node wins by avoiding repeated evaluation of the clause. In previous PG releases, query_planner() would do this for pseudoconstant clauses appearing at the top level of the jointree, but there was no ability to generate a gating Result deeper in the plan tree. To fix it, get rid of the special case in query_planner(), and instead process pseudoconstant clauses through the normal RestrictInfo qual distribution mechanism. When a pseudoconstant clause is found attached to a path node in create_plan(), pull it out and generate a gating Result at that point. This requires special-casing pseudoconstants in selectivity estimation and cost_qual_eval, but on the whole it's pretty clean. It probably even makes the planner a bit faster than before for the normal case of no pseudoconstants, since removing pull_constant_clauses saves one useless traversal of the qual tree. Per gripe from Phil Frost.
-
- 30 Jun, 2006 3 commits
-
-
Alvaro Herrera authored
-
Alvaro Herrera authored
-
Bruce Momjian authored
< * Add 128-bit Universally Unique Identifier (UUID) > * Add Globally/Universally Unique Identifier (GUID/UUID)
-
- 29 Jun, 2006 4 commits
-
-
Tom Lane authored
be delivered directly to the collector process. The extra process context swaps required to transfer data through the buffer process seem to outweigh any value the buffering might have. Per recent discussion and tests. I modified Bruce's draft patch to use poll() rather than select() where available (this makes a noticeable difference on my system), and fixed up the EXEC_BACKEND case.
-
Tom Lane authored
the order in which it visits tables is not dependent on the physical order of pg_constraint entries, and neither are the error messages it gives. This should correct recently-noticed instability in regression tests.
-
Bruce Momjian authored
> * Add 128-bit Universally Unique Identifier (UUID)
-
- 28 Jun, 2006 11 commits
-
-
Neil Conway authored
whose prototypes include the "List" type, so it ought to include the list header file.
-
Neil Conway authored
-
Neil Conway authored
made as part of the recent INCLUDING CONSTRAINTS patch. The text could stand further improvement, but this is at least a step in the right direction.
-
Bruce Momjian authored
> http://momjian.us/cgi-bin/pgsitc
-
Tom Lane authored
-
Tom Lane authored
tuple hash table entries. This addresses the problem previously noted that use of a 'physical tlist' in the input scan node could bloat the hash table entries far beyond what the planner expects. It's a better answer than my previous thought of undoing the physical tlist optimization, because we can also remove columns that are needed to compute the aggregate functions but aren't part of the grouping column set.
-
Tom Lane authored
-
Bruce Momjian authored
< o Add support for WITH HOLD cursors > o Add support for WITH HOLD and SCROLL cursors > > PL/pgSQL cursors should support the same syntax as > backend cursors. >
-
Bruce Momjian authored
Viktor Vislobokov
-
Teodor Sigaev authored
-
Teodor Sigaev authored
* new split algorithm (as proposed in http://archives.postgresql.org/pgsql-hackers/2006-06/msg00254.php) * possible call pickSplit() for second and below columns * add spl_(l|r)datum_exists to GIST_SPLITVEC - pickSplit should check its values to use already defined spl_(l|r)datum for splitting. pickSplit should set spl_(l|r)datum_exists to 'false' (if they was 'true') to signal to caller about using spl_(l|r)datum. * support for old pickSplit(): not very optimal but correct split * remove 'bytes' field from GISTENTRY: in any case size of value is defined by it's type. * split GIST_SPLITVEC to two structures: one for using in picksplit and second - for internal use. * some code refactoring * support of subsplit to rtree opclasses TODO: add support of subsplit to contrib modules
-
- 27 Jun, 2006 17 commits
-
-
Tom Lane authored
versions very unhappy, and shouldn't be there anyway.
-
Bruce Momjian authored
for every command, default to on.
-
Tom Lane authored
and batch files. Should reduce memory and I/O demands for such joins.
-
Bruce Momjian authored
-
Tom Lane authored
this someday, but right now it seems that posix_fadvise is immature to the point of being broken on many platforms ... and we don't have any benchmark evidence proving it's worth spending time on.
-
Bruce Momjian authored
* %Disallow changing default expression of a SERIAL column Dhanaraj M
-
Tom Lane authored
per-tuple space overhead for sorts in memory. I chose to replace the previous patch that tried to write out the bare minimum amount of data when sorting on disk; instead, just dump the MinimalTuples as-is. This wastes 3 to 10 bytes per tuple depending on architecture and null-bitmap length, but the simplification in the writetup/readtup routines seems worth it.
-
Bruce Momjian authored
> * -Disallow changing DEFAULT expression of a SERIAL column
-
Bruce Momjian authored
< * -Disallow changing DEFAULT expression of a SERIAL column > * %Disallow changing DEFAULT expression of a SERIAL column
-
Alvaro Herrera authored
analyzing, so that future analyze threshold calculations don't get confused. Also, make sure we correctly track the decrease of live tuples cause by deletes. Per report from Dylan Hansen, patches by Tom Lane and me.
-
Bruce Momjian authored
Greg Stark
-
Bruce Momjian authored
< * %Disallow changing DEFAULT expression of a SERIAL column? < < This should be done only if the existing SERIAL problems cannot be < fixed. < > * -Disallow changing DEFAULT expression of a SERIAL column
-
Bruce Momjian authored
Dhanaraj M
-
Bruce Momjian authored
Hiroshi Saito
-
Tom Lane authored
tuples with less header overhead than a regular HeapTuple, per my recent proposal. Teach TupleTableSlot code how to deal with these. As proof of concept, change tuplestore.c to store MinimalTuples instead of HeapTuples. Future patches will expand the concept to other places where it is useful.
-
Bruce Momjian authored
directory, not in device root, for permission reasons. Backpatch to 8.1.X.
-
Bruce Momjian authored
> o -Add PQescapeIdentifier()
-