Commit Graph

24513 Commits

Author SHA1 Message Date
Tom Lane c7ff7663e4 Get rid of the separate EState for subplans, and just let them share the
parent query's EState.  Now that there's a single flat rangetable for both
the main plan and subplans, there's no need anymore for a separate EState,
and removing it allows cleaning up some crufty code in nodeSubplan.c and
nodeSubqueryscan.c.  Should be a tad faster too, although any difference
will probably be hard to measure.  This is the last bit of subsidiary
mop-up work from changing to a flat rangetable.
2007-02-27 01:11:26 +00:00
Tom Lane 4756ff3dca Put back copyObject() call I removed in a fit of brain fade. This one
is still needed despite cleanups in setrefs.c, because the point is to
let the inserted Result node compute a different tlist than its input
node does.  Per example from Jeremy Drake.
2007-02-25 17:44:01 +00:00
Bruce Momjian 7395c76159 Update Solaris FAQ. 2007-02-23 23:22:33 +00:00
Tom Lane 655aa5b330 Now that plans have flat rangetable lists, it's a lot easier to get EXPLAIN to
drill down into subplan targetlists to print the referent expression for an
OUTER or INNER var in an upper plan node.  Hence, make it do that always, and
banish the old hack of showing "?columnN?" when things got too complicated.

Along the way, fix an EXPLAIN bug I introduced by suppressing subqueries from
execution-time range tables: get_name_for_var_field() assumed it could look at
rte->subquery to find out the real type of a RECORD var.  That doesn't work
anymore, but instead we can look at the input plan of the SubqueryScan plan
node.
2007-02-23 21:59:45 +00:00
Bruce Momjian 9cc2a71c38 Move BLCKSZ < 1024 check to guc.c. 2007-02-23 21:36:19 +00:00
Bruce Momjian e7aa8ab2ab Spelling fix. 2007-02-23 20:37:59 +00:00
Bruce Momjian 53ec43b41b Update Solaris FAQ wording, per Peter. 2007-02-23 20:30:08 +00:00
Bruce Momjian 1449e6f981 Update upgrade FAQ info. 2007-02-23 19:06:22 +00:00
Bruce Momjian b950596ffd Update Solaris FAQ.
Zdenek Kotala
2007-02-23 18:38:19 +00:00
Bruce Momjian 7031dd6869 Add psql \prompt capability.
Chad Wagner
2007-02-23 18:20:59 +00:00
Tom Lane cc77005df7 Change Agg and Group nodes so that Vars contained in their targetlists
and quals have varno OUTER, rather than zero, to indicate a reference to
an output of their lefttree subplan.  This is consistent with the way
that every other upper-level node type does it, and allows some simplifications
in setrefs.c and EXPLAIN.
2007-02-22 23:44:25 +00:00
Tom Lane 3c5985b473 Fix bug I introduced in recent patch to make hash joins discard null tuples
immediately: ExecHashGetHashValue failed to restore the caller's memory
context before taking the failure exit.
2007-02-22 22:49:27 +00:00
Tom Lane eab6b8b27e Turn the rangetable used by the executor into a flat list, and avoid storing
useless substructure for its RangeTblEntry nodes.  (I chose to keep using the
same struct node type and just zero out the link fields for unneeded info,
rather than making a separate ExecRangeTblEntry type --- it seemed too
fragile to have two different rangetable representations.)

Along the way, put subplans into a list in the toplevel PlannedStmt node,
and have SubPlan nodes refer to them by list index instead of direct pointers.
Vadim wanted to do that years ago, but I never understood what he was on about
until now.  It makes things a *whole* lot more robust, because we can stop
worrying about duplicate processing of subplans during expression tree
traversals.  That's been a constant source of bugs, and it's finally gone.

There are some consequent simplifications yet to be made, like not using
a separate EState for subplans in the executor, but I'll tackle that later.
2007-02-22 22:00:26 +00:00
Bruce Momjian 849000c782 Remove extra tab. 2007-02-21 23:22:42 +00:00
Bruce Momjian 7c656baf15 Remove tabs from SGML reference files, so their addition can be detected
in the future.
2007-02-21 23:21:12 +00:00
Bruce Momjian 8c98fd6e7f Update upgrade wording. 2007-02-21 22:54:11 +00:00
Bruce Momjian 50c7e83cd7 Update new optional VACUUM FULL hint for translations, per Alvaro. 2007-02-21 22:47:45 +00:00
Bruce Momjian 3aa37600aa Move increase FSM warning to after lazy_truncate_heap() because the
function might reduce the number of free pages in the table.  Recommend
VACUUM FULL only if 20% free.

Simon Riggs.
2007-02-21 22:15:21 +00:00
Bruce Momjian 6f519ad01c btree source code cleanups:
I refactored findsplitloc and checksplitloc so that the division of
labor is more clear IMO. I pushed all the space calculation inside the
loop to checksplitloc.

I also fixed the off by 4 in free space calculation caused by
PageGetFreeSpace subtracting sizeof(ItemIdData), even though it was
harmless, because it was distracting and I felt it might come back to
bite us in the future if we change the page layout or alignments.
There's now a new function PageGetExactFreeSpace that doesn't do the
subtraction.

findsplitloc now tries the "just the new item to right page" split as
well. If people don't like the refactoring, I can write a patch to just
add that.

Heikki Linnakangas
2007-02-21 20:02:17 +00:00
Bruce Momjian 526b1d6979 Update FAQ about minor updates. 2007-02-21 19:48:02 +00:00
Bruce Momjian 9bc6af8026 Update Japanese FAQ.
Jun Kuwamura
2007-02-21 17:23:49 +00:00
Bruce Momjian bded8fdd8d Update URL in German FAQ for bug form, per Schima, Fabian 2007-02-21 16:49:37 +00:00
Bruce Momjian 28ebe6b5d0 Update Chinese FAQs to have two versions, a traditional Chinese version (Taiwan)
and a Simplified version (China (PRC)).

Backpatch to 8.2.X.

Daojing.Zhou
2007-02-21 16:42:36 +00:00
Bruce Momjian c1958e5bd4 Fix typo, per Dave Page. 2007-02-21 16:09:01 +00:00
Bruce Momjian 3986d713ac Update minor release text. 2007-02-21 16:08:05 +00:00
Bruce Momjian 6765df9174 Add configure --enable-profiling to enable GCC profiling. Patches from
Korry Douglas and Nikhil S
2007-02-21 15:12:39 +00:00
Bruce Momjian 879caf1369 Update upgrade text. 2007-02-21 15:07:35 +00:00
Magnus Hagander 49cc503f54 Revert changes to process pg_proc.h entries without OIDs. We're not supposed
to have such entries, and want to be notified when we do...
Leave the plain bugfix in genbki.
2007-02-21 12:28:27 +00:00
Bruce Momjian f8e9fb2d87 Update URL for set-returning functions. 2007-02-21 03:50:57 +00:00
Andrew Dunstan afc7e0d848 Allow pltcl args to spi_prepare and plpython args to plpy.prepare to be standard type aliases as well as those known in pg_type. Similar to recent change in plperl. 2007-02-21 03:27:32 +00:00
Bruce Momjian 80ab3e0d34 Add URL for:
o Allow row and record variables to be set to NULL constants,
        and allow NULL tests on such variables
2007-02-21 01:08:58 +00:00
Bruce Momjian 272b6ef20d Prevent BLCKSZ < 1024, and have initdb test shared buffers based on the
BLCKSZ value.
2007-02-20 23:49:38 +00:00
Bruce Momjian 4816b0f452 Add:
>
> * Consider decreasing the amount of memory used by PrivateRefCount
>
>   http://archives.postgresql.org/pgsql-hackers/2006-11/msg00797.php
>   http://archives.postgresql.org/pgsql-hackers/2007-01/msg00752.php
>
2007-02-20 23:39:03 +00:00
Bruce Momjian 57352df66d Fix markup. 2007-02-20 23:14:19 +00:00
Bruce Momjian e152949ee2 Change $(CC) to $(COMPILER) on Solaris gcc so -m64 is passed into the
shared link line.
2007-02-20 22:45:57 +00:00
Bruce Momjian a64e85eb68 Add:
> * Increase locking when DROPing objects so dependent objects cannot
>   get dropped while the DROP operation is happening
>
>   http://archives.postgresql.org/pgsql-hackers/2007-01/msg00937.php
2007-02-20 22:29:28 +00:00
Bruce Momjian 6e6dab8c87 Add URL for:
o Allow UPDATE/DELETE WHERE CURRENT OF cursor
> 	  http://archives.postgresql.org/pgsql-hackers/2007-01/msg01014.php
2007-02-20 22:23:05 +00:00
Bruce Momjian 916ecf2d5d Add:
>
> * Add missing operators for geometric data types
>
>   Some geometric types do not have the full suite of geometric operators,
>   e.g. box @> point
>
2007-02-20 21:22:35 +00:00
Bruce Momjian b92767d525 Update "encode" documentation to mention that 'escape' only changes null
bytes and backslashes, remove "ASCII" mention.  Backpatch to 8.2.X.
2007-02-20 19:59:04 +00:00
Bruce Momjian 298de77d51 Update pgpass Win32 wording. 2007-02-20 19:35:17 +00:00
Bruce Momjian 8e1ccad519 Update information_schema documentation to match system tables.
Backpatch to 8.2.X.
2007-02-20 18:47:25 +00:00
Bruce Momjian ddd8817f45 Wording improvement. 2007-02-20 18:18:05 +00:00
Bruce Momjian 571df93cff More clearly document that most PostgreSQL utilities support libpq
environment variables.  Backpatch to 8.2.X.
2007-02-20 18:10:59 +00:00
Tom Lane ecba519d4e Adjust user-facing documentation to explain why we don't check pgpass
file permissions on Windows.
2007-02-20 17:47:04 +00:00
Tom Lane 9cbd0c155d Remove the Query structure from the executor's API. This allows us to stop
storing mostly-redundant Query trees in prepared statements, portals, etc.
To replace Query, a new node type called PlannedStmt is inserted by the
planner at the top of a completed plan tree; this carries just the fields of
Query that are still needed at runtime.  The statement lists kept in portals
etc. now consist of intermixed PlannedStmt and bare utility-statement nodes
--- no Query.  This incidentally allows us to remove some fields from Query
and Plan nodes that shouldn't have been there in the first place.

Still to do: simplify the execution-time range table; at the moment the
range table passed to the executor still contains Query trees for subqueries.

initdb forced due to change of stored rules.
2007-02-20 17:32:18 +00:00
Bruce Momjian 71b0cf2f6b Remove, item not needed for Win32:
< 	o Check .pgpass file permissions
>
2007-02-20 15:21:42 +00:00
Bruce Momjian 2d848857ee Add comment that on Win32, we don't need to check the .pgpass file
permission, per Magnus.
2007-02-20 15:20:51 +00:00
Bruce Momjian b16dab66a7 Remove "History" sections for pg_dump and pg_restore. I don't think
anyone cares because the last history change was for PostgreSQL 7.1.
2007-02-20 15:01:17 +00:00
Bruce Momjian ff0d71e263 Spell check on array patch. 2007-02-20 14:54:47 +00:00
Bruce Momjian bfc53d7da4 Add for WIN32:
<
> 	o Check .pgpass file permissions
2007-02-20 14:48:47 +00:00