OSDN Git Service
Tom Lane [Wed, 2 Apr 2008 18:31:50 +0000 (18:31 +0000)]
Revert my bad decision of about a year ago to make PortalDefineQuery
responsible for copying the query string into the new Portal. Such copying
is unnecessary in the common code path through exec_simple_query, and in
this case it can be enormously expensive because the string might contain
a large number of individual commands; we were copying the entire, long
string for each command, resulting in O(N^2) behavior for N commands.
(This is the cause of bug #4079.) A second problem with it is that
PortalDefineQuery really can't risk error, because if it elog's before
having set up the Portal, we will leak the plancache refcount that the
caller is trying to hand off to the portal. So go back to the design in
which the caller is responsible for making sure everything is copied into
the portal if necessary.
Magnus Hagander [Wed, 2 Apr 2008 14:42:56 +0000 (14:42 +0000)]
Convert three more guc settings to enum type:
default_transaction_isolation, session_replication_role and regex_flavor.
Bruce Momjian [Wed, 2 Apr 2008 02:11:47 +0000 (02:11 +0000)]
Remove due to survey/discussion:
<
< * Prefix command-line utilities like createuser with 'pg_'
<
< http://archives.postgresql.org/pgsql-hackers/2007-06/msg00025.php
<
Tom Lane [Tue, 1 Apr 2008 03:51:09 +0000 (03:51 +0000)]
Support EXECUTE USING in plpgsql.
Pavel Stehule, with some improvements by myself.
Tom Lane [Tue, 1 Apr 2008 03:09:30 +0000 (03:09 +0000)]
Add SPI-level support for executing SQL commands with one-time-use plans,
that is commands that have out-of-line parameters but the plan is prepared
assuming that the parameter values are constants. This is needed for the
plpgsql EXECUTE USING patch, but will probably have use elsewhere.
This commit includes the SPI functions and documentation, but no callers
nor regression tests. The upcoming EXECUTE USING patch will provide
regression-test coverage. I thought committing this separately made
sense since it's logically a distinct feature.
Tom Lane [Tue, 1 Apr 2008 00:48:33 +0000 (00:48 +0000)]
Fix an oversight I made in a cleanup patch over a year ago:
eval_const_expressions needs to be passed the PlannerInfo ("root") structure,
because in some cases we want it to substitute values for Param nodes.
(So "constant" is not so constant as all that ...) This mistake partially
disabled optimization of unnamed extended-Query statements in 8.3: in
particular the LIKE-to-indexscan optimization would never be applied if the
LIKE pattern was passed as a parameter, and constraint exclusion depending
on a parameter value didn't work either.
Tom Lane [Mon, 31 Mar 2008 16:59:26 +0000 (16:59 +0000)]
Apply my original fix for Taiki Yamaguchi's bug report about DISTINCT MAX().
Add some regression tests for plausible failures in this area.
Tom Lane [Mon, 31 Mar 2008 03:34:27 +0000 (03:34 +0000)]
Fix my brain fade in TRUNCATE triggers patch: can't release relcache refcounts
while EState still contains pointers to those relations. Exposed by the
CLOBBER_CACHE_ALWAYS tests that buildfarm member jaguar is running (I knew
those cycles would pay off...)
Tom Lane [Mon, 31 Mar 2008 02:43:14 +0000 (02:43 +0000)]
Use error message wordings for permissions checks on .pgpass and SSL private
key files that are similar to the one for the postmaster's data directory
permissions check. (I chose to standardize on that one since it's the most
heavily used and presumably best-wordsmithed by now.) Also eliminate explicit
tests on file ownership in these places, since the ensuing read attempt must
fail anyway if it's wrong, and there seems no value in issuing the same error
message for distinct problems. (But I left in the explicit ownership test in
postmaster.c, since it had its own error message anyway.) Also be more
specific in the documentation's descriptions of these checks. Per a gripe
from Kevin Hunter.
Tom Lane [Mon, 31 Mar 2008 01:31:43 +0000 (01:31 +0000)]
Fix a number of places that were making file-type tests infelicitously.
The places that did, eg,
(statbuf.st_mode & S_IFMT) == S_IFDIR
were correct, but there is no good reason not to use S_ISDIR() instead,
especially when that's what the other 90% of our code does. The places
that did, eg,
(statbuf.st_mode & S_IFDIR)
were flat out *wrong* and would fail in various platform-specific ways,
eg a symlink could be mistaken for a regular file on most Unixen.
The actual impact of this is probably small, since the problem cases
seem to always involve symlinks or sockets, which are unlikely to be
found in the directories that PG code might be scanning. But it's
clearly trouble waiting to happen, so patch all the way back anyway.
(There seem to be no occurrences of the mistake in 7.4.)
Tom Lane [Sun, 30 Mar 2008 18:10:20 +0000 (18:10 +0000)]
Show database access privileges in psql's \l command. For \l+, also show
database size, when available to the current user.
Andrew Gilligan
Tom Lane [Sun, 30 Mar 2008 17:50:11 +0000 (17:50 +0000)]
Display incoming as well as outgoing foreign-key constraints in psql's
\d output for a table.
Kenneth D'Souza, some changes by myself.
Neil Conway [Sun, 30 Mar 2008 04:08:15 +0000 (04:08 +0000)]
Enable 64-bit integer datetimes by default, per previous discussion.
This requires a working 64-bit integer type. If such a type cannot
be found, "--disable-integer-datetimes" can be used to switch
back to the previous floating point-based datetime implementation.
Tom Lane [Sat, 29 Mar 2008 19:40:12 +0000 (19:40 +0000)]
Improve description of \du and \dg, per suggestion from
Harald Armin Massa.
Tom Lane [Sat, 29 Mar 2008 19:19:14 +0000 (19:19 +0000)]
Improve psql's tab completion to handle completing attribute names in cases
where the relation name was schema-qualified, for example
UPDATE foo.bar SET <tab>
Also support cases where the relation name was quoted unnecessarily,
for example
UPDATE "foo" SET <tab>
Greg Sabino Mullane, slightly simplified by myself.
Tom Lane [Sat, 29 Mar 2008 00:15:28 +0000 (00:15 +0000)]
Revert my erroneous fix for Taiki Yamaguchi's DISTINCT MAX() bug.
Whatever we do about that, this isn't the path to the solution.
Bruce Momjian [Fri, 28 Mar 2008 15:18:42 +0000 (15:18 +0000)]
Done:
> * -Add ability to trigger on TRUNCATE
Heikki Linnakangas [Fri, 28 Mar 2008 15:00:28 +0000 (15:00 +0000)]
Clarify documentation on PITR and warm standby on the fact that the standby
restore_command should report failure on non-existent .backup and .history
files. Tidy up some related text along the way.
Patch by Markus Bertheau, with some editing by Simon Riggs and myself.
Bruce Momjian [Fri, 28 Mar 2008 03:29:49 +0000 (03:29 +0000)]
Add to TODO:
>
> o Add CASE capability to language (already in SQL)
>
> http://archives.postgresql.org/pgsql-hackers/2008-01/msg00696.php
>
>
Bruce Momjian [Fri, 28 Mar 2008 02:36:04 +0000 (02:36 +0000)]
Add:
> * Allow one transaction to see tuples using the snapshot of another
> transaction
>
> This would assist multiple backends in working together.
> http://archives.postgresql.org/pgsql-hackers/2008-01/msg00400.php
Tom Lane [Fri, 28 Mar 2008 02:00:11 +0000 (02:00 +0000)]
Department of second thoughts: the rule that ORDER BY and DISTINCT are
useless for an ungrouped-aggregate query holds regardless of whether
optimize_minmax_aggregates succeeds. So we might as well apply the
optimization in any case.
I'll leave 8.3 as it was, since this version is a tad more invasive
than my earlier patch.
Tom Lane [Fri, 28 Mar 2008 00:21:56 +0000 (00:21 +0000)]
Support statement-level ON TRUNCATE triggers. Simon Riggs
Bruce Momjian [Thu, 27 Mar 2008 20:37:43 +0000 (20:37 +0000)]
Add to TODO:
>
> * Consider being smarter about memory and external files used during
> sorts
>
> http://archives.postgresql.org/pgsql-hackers/2007-11/msg01101.php
> http://archives.postgresql.org/pgsql-hackers/2007-12/msg00045.php
Bruce Momjian [Thu, 27 Mar 2008 20:31:04 +0000 (20:31 +0000)]
Add URL for:
* Consider allowing control of upper/lower case folding of unquoted
identifiers
> http://archives.postgresql.org/pgsql-hackers/2008-03/msg00849.php
Tom Lane [Thu, 27 Mar 2008 19:06:14 +0000 (19:06 +0000)]
When we have successfully optimized a MIN or MAX aggregate into an indexscan,
the query result must be exactly one row (since we don't do this when there's
any GROUP BY). Therefore any ORDER BY or DISTINCT attached to the query is
useless and can be dropped. Aside from saving useless cycles, this protects
us against problems with matching the hacked-up tlist entries to sort clauses,
as seen in a bug report from Taiki Yamaguchi. We might need to work harder
if we ever try to optimize grouped queries with this approach, but this
solution will do for now.
Bruce Momjian [Thu, 27 Mar 2008 17:24:16 +0000 (17:24 +0000)]
Remove ipcclean utility command --- didn't work on all Unixes and on
Windows. Users should use their operating system tools instead.
Michael Meskes [Thu, 27 Mar 2008 08:40:02 +0000 (08:40 +0000)]
Sorry, copied wrong files.
Michael Meskes [Thu, 27 Mar 2008 07:56:02 +0000 (07:56 +0000)]
- Moved from PQsetdbLogin to PQconnectDB.
- Correctly parse connect options.
- Changed regression tests accordingly.
Tom Lane [Thu, 27 Mar 2008 03:57:34 +0000 (03:57 +0000)]
Reduce the need for frontend programs to include "postgres.h" by refactoring
inclusions in src/include/catalog/*.h files. The main idea here is to push
function declarations for src/backend/catalog/*.c files into separate headers,
rather than sticking them into the corresponding catalog definition file as
has been done in the past. This commit only carries out that idea fully for
pg_proc, pg_type and pg_conversion, but that's enough for the moment ---
if pg_list.h ever becomes unsafe for frontend code to include, we'll need
to work a bit more.
Zdenek Kotala
Alvaro Herrera [Wed, 26 Mar 2008 21:10:39 +0000 (21:10 +0000)]
Move the HTSU_Result enum definition into snapshot.h, to avoid including
tqual.h into heapam.h. This makes all inclusion of tqual.h explicit.
I also sorted alphabetically the includes on some source files.
Alvaro Herrera [Wed, 26 Mar 2008 18:48:59 +0000 (18:48 +0000)]
Rename snapmgmt.c/h to snapmgr.c/h, for consistency with other files.
Per complaint from Tom Lane.
Tom Lane [Wed, 26 Mar 2008 16:34:47 +0000 (16:34 +0000)]
Fix bad spelling and worse grammar in recent doc commits. Propagate
pg_dump --ignore-version comments into pg_dumpall and pg_restore pages.
Alvaro Herrera [Wed, 26 Mar 2008 16:20:48 +0000 (16:20 +0000)]
Separate snapshot management code from tuple visibility code, create a
snapmgmt.c file for the former. The header files have also been reorganized
in three parts: the most basic snapshot definitions are now in a new file
snapshot.h, and the also new snapmgmt.h keeps the definitions for snapmgmt.c.
tqual.h has been reduced to the bare minimum.
This patch is just a first step towards managing live snapshots within a
transaction; there is no functionality change.
Per my proposal to pgsql-patches on
20080318191940.GB27458@alvh.no-ip.org and
subsequent discussion.
Magnus Hagander [Wed, 26 Mar 2008 15:24:56 +0000 (15:24 +0000)]
Include \password in the psql help.
While at it, change the order of the documented options to be
alphabetically again.
Bruce Momjian [Wed, 26 Mar 2008 14:43:20 +0000 (14:43 +0000)]
Improve documentation for odd array slice behavior.
Bruce Momjian [Wed, 26 Mar 2008 14:32:22 +0000 (14:32 +0000)]
Strengthen warnings about using pg_dump's -i option.
Bruce Momjian [Wed, 26 Mar 2008 02:39:46 +0000 (02:39 +0000)]
Update TODO:
< o Consider invalidating the cache or keeping seperate cached
< copies when search_path changes
> o Consider keeping seperate cached copies when search_path changes
Bruce Momjian [Wed, 26 Mar 2008 01:49:51 +0000 (01:49 +0000)]
Added to TODO:
>
> * Consider transaction start/end performance improvements
>
> http://archives.postgresql.org/pgsql-hackers/2007-07/msg00948.php
> http://archives.postgresql.org/pgsql-hackers/2008-03/msg00361.php
Tom Lane [Wed, 26 Mar 2008 01:19:04 +0000 (01:19 +0000)]
Fix core dump in contrib/xml2's xpath_table() when the input query returns
a NULL value. Per bug #4058.
Neil Conway [Tue, 25 Mar 2008 22:50:27 +0000 (22:50 +0000)]
Update documentation for recent DTrace changes. Patch from Robert Lor.
Tom Lane [Tue, 25 Mar 2008 22:42:46 +0000 (22:42 +0000)]
Simplify and standardize conversions between TEXT datums and ordinary C
strings. This patch introduces four support functions cstring_to_text,
cstring_to_text_with_len, text_to_cstring, and text_to_cstring_buffer, and
two macros CStringGetTextDatum and TextDatumGetCString. A number of
existing macros that provided variants on these themes were removed.
Most of the places that need to make such conversions now require just one
function or macro call, in place of the multiple notational layers that used
to be needed. There are no longer any direct calls of textout or textin,
and we got most of the places that were using handmade conversions via
memcpy (there may be a few still lurking, though).
This commit doesn't make any serious effort to eliminate transient memory
leaks caused by detoasting toasted text objects before they reach
text_to_cstring. We changed PG_GETARG_TEXT_P to PG_GETARG_TEXT_PP in a few
places where it was easy, but much more could be done.
Brendan Jurd and Tom Lane
Bruce Momjian [Tue, 25 Mar 2008 20:18:18 +0000 (20:18 +0000)]
Done:
> * -Avoid tuple some tuple copying in sort routines
Neil Conway [Tue, 25 Mar 2008 19:26:54 +0000 (19:26 +0000)]
Add a new tuplestore API function, tuplestore_putvalues(). This is
identical to tuplestore_puttuple(), except it operates on arrays of
Datums + nulls rather than a fully-formed HeapTuple. In several places
that use the tuplestore API, this means we can avoid creating a
HeapTuple altogether, saving a copy.
Bruce Momjian [Tue, 25 Mar 2008 13:09:39 +0000 (13:09 +0000)]
Update TODO wording:
* Simplify integer cross-data-type operators
Alvaro Herrera [Tue, 25 Mar 2008 12:55:38 +0000 (12:55 +0000)]
Reword Win32 rint() item, per Tom.
Alvaro Herrera [Tue, 25 Mar 2008 12:50:47 +0000 (12:50 +0000)]
Add URLs to previous discussions, per Simon.
Michael Meskes [Tue, 25 Mar 2008 12:45:25 +0000 (12:45 +0000)]
added ECPGget_PGconn to exports.txt
Bruce Momjian [Tue, 25 Mar 2008 02:58:09 +0000 (02:58 +0000)]
Add to TODO:
>
> * Add SQL-standard array_agg() and unnest() array functions
>
> http://archives.postgresql.org/pgsql-hackers/2008-01/msg01017.php
>
Bruce Momjian [Tue, 25 Mar 2008 02:47:49 +0000 (02:47 +0000)]
Add to pl/pgsql TODO:
>
> o Consider invalidating the cache or keeping seperate cached
> copies when search_path changes
>
> http://archives.postgresql.org/pgsql-hackers/2008-01/msg01009.php
Bruce Momjian [Tue, 25 Mar 2008 02:41:21 +0000 (02:41 +0000)]
Add to TODO:
>
> * Add more cross-data-type operators
>
> http://archives.postgresql.org/pgsql-bugs/2008-01/msg00189.php
Bruce Momjian [Tue, 25 Mar 2008 02:38:34 +0000 (02:38 +0000)]
Add to TODO:
> * Detect deadlocks involving LockBufferForCleanup()
>
> http://archives.postgresql.org/pgsql-hackers/2008-01/msg00873.php
Bruce Momjian [Tue, 25 Mar 2008 02:33:37 +0000 (02:33 +0000)]
Add to psql TODO:
>
> o Improve display if enums
>
> http://archives.postgresql.org/pgsql-hackers/2008-01/msg00826.php
>
>
Bruce Momjian [Tue, 25 Mar 2008 02:23:43 +0000 (02:23 +0000)]
Add to TODO:
>
> o Fix port/rint.c to be spec-compliant
>
> http://archives.postgresql.org/pgsql-hackers/2008-01/msg00808.php
Bruce Momjian [Tue, 25 Mar 2008 02:17:17 +0000 (02:17 +0000)]
Add to TODO:
>
> * Consider sorting entries before inserting into btree index
>
> http://archives.postgresql.org/pgsql-general/2008-01/msg01010.php
Bruce Momjian [Tue, 25 Mar 2008 02:11:22 +0000 (02:11 +0000)]
Add to TODO:
>
> * Improve detection of shared memory segments being used by other
> FreeBSD jails
>
> http://archives.postgresql.org/pgsql-hackers/2008-01/msg00656.php
Bruce Momjian [Tue, 25 Mar 2008 00:42:23 +0000 (00:42 +0000)]
Add to TODO:
>
> * Move pgfoundry's xlogdump to /contrib and have it rely more closely
> on the WAL backend code
>
> http://archives.postgresql.org/pgsql-hackers/2007-11/msg00035.php
>
Bruce Momjian [Tue, 25 Mar 2008 00:28:54 +0000 (00:28 +0000)]
Add to TODO:
>
> * Have resource managers report the duration of their status changes
>
> http://archives.postgresql.org/pgsql-hackers/2007-10/msg01468.php
Bruce Momjian [Tue, 25 Mar 2008 00:14:53 +0000 (00:14 +0000)]
Add to TODO:
>
> * Be more aggressive about creating WAL files
>
> http://archives.postgresql.org/pgsql-hackers/2007-10/msg01325.php
Bruce Momjian [Tue, 25 Mar 2008 00:11:48 +0000 (00:11 +0000)]
Add:
> o Prevent concurrent CREATE TABLE table1 from sometimes returning
> a cryptic error message
>
> http://archives.postgresql.org/pgsql-bugs/2007-10/msg00169.php
Bruce Momjian [Tue, 25 Mar 2008 00:07:12 +0000 (00:07 +0000)]
Add to TODO:
>
> * Have /contrib/dblink reuse unnamed connections
>
> http://archives.postgresql.org/pgsql-hackers/2007-10/msg00895.php
Bruce Momjian [Tue, 25 Mar 2008 00:05:10 +0000 (00:05 +0000)]
Add to TODO:
> * Remove old-style routines for manipulating tuples
>
> http://archives.postgresql.org/pgsql-hackers/2007-10/msg00851.php
Bruce Momjian [Tue, 25 Mar 2008 00:02:03 +0000 (00:02 +0000)]
Add to TODO:
>
> * Create three versions of libpgport to simplify client code
>
> http://archives.postgresql.org/pgsql-hackers/2007-10/msg00154.php
>
Bruce Momjian [Tue, 25 Mar 2008 00:00:30 +0000 (00:00 +0000)]
Add to TODO:
>
> * Fix regular expression bug when using complex back-references
>
> http://archives.postgresql.org/pgsql-bugs/2007-10/msg00000.php
Bruce Momjian [Mon, 24 Mar 2008 23:46:21 +0000 (23:46 +0000)]
Add to TODO:
>
> * Allow xml arrays to be cast to other data types
>
> http://archives.postgresql.org/pgsql-hackers/2007-09/msg00981.php
> http://archives.postgresql.org/pgsql-hackers/2007-10/msg00231.php
> http://archives.postgresql.org/pgsql-hackers/2007-11/msg00471.php
>
Tom Lane [Mon, 24 Mar 2008 21:53:04 +0000 (21:53 +0000)]
When a relation has been proven empty by constraint exclusion, propagate that
knowledge up through any joins it participates in. We were doing that already
in some special cases but not in the general case. Also, defend against zero
row estimates for the input relations in cost_mergejoin --- this fix may have
eliminated the only scenario in which that can happen, but be safe. Per
report from Alex Solovey.
Tom Lane [Mon, 24 Mar 2008 19:47:35 +0000 (19:47 +0000)]
Use new errdetail_log() mechanism to provide a less klugy way of reporting
large numbers of dependencies on a role that couldn't be dropped.
Per a comment from Alvaro.
Tom Lane [Mon, 24 Mar 2008 19:12:49 +0000 (19:12 +0000)]
Fix various infelicities that have snuck into usage of errdetail() and
friends. Avoid double translation of some messages, ensure other messages
are exposed for translation (and make them follow the style guidelines),
avoid unsafe passing of an unpredictable message text as a format string.
Bruce Momjian [Mon, 24 Mar 2008 18:24:30 +0000 (18:24 +0000)]
Add to TODO:
>
> * Research reducing deTOASTing in more places
>
> http://archives.postgresql.org/pgsql-hackers/2007-09/msg00895.php
Tom Lane [Mon, 24 Mar 2008 18:22:36 +0000 (18:22 +0000)]
Adjust the recent patch for reporting of deadlocked queries so that we report
query texts only to the server log. This eliminates the issue of possible
leaking of security-sensitive data in other sessions' queries. Since the
log is presumed secure, we can now log the queries of all sessions involved
in the deadlock, whether or not they belong to the same user as the one
reporting the failure.
Tom Lane [Mon, 24 Mar 2008 18:08:47 +0000 (18:08 +0000)]
Add a new ereport auxiliary function errdetail_log(), which works the same as
errdetail except the string goes only to the server log, replacing the normal
errdetail there. This provides a reasonably clean way of dealing with error
details that are too security-sensitive or too bulky to send to the client.
This commit just adds the infrastructure --- actual uses to follow.
Bruce Momjian [Mon, 24 Mar 2008 17:48:07 +0000 (17:48 +0000)]
Add URL for:
* SMP scalability improvements
> http://archives.postgresql.org/pgsql-hackers/2007-09/msg00206.php
Bruce Momjian [Mon, 24 Mar 2008 17:41:16 +0000 (17:41 +0000)]
Add URL to:
* SMP scalability improvements
> http://archives.postgresql.org/pgsql-hackers/2008-03/msg00361.php
Bruce Momjian [Mon, 24 Mar 2008 17:29:35 +0000 (17:29 +0000)]
Add to TODO:
>
> * SMP scalability improvements
>
> http://archives.postgresql.org/pgsql-hackers/2007-07/msg00439.php
Bruce Momjian [Mon, 24 Mar 2008 16:11:27 +0000 (16:11 +0000)]
Add URL:
* Allow statistics last vacuum/analyze execution times to be displayed
without requiring stats_row_level to be enabled
>
> http://archives.postgresql.org/pgsql-docs/2007-04/msg00028.php
>
Bruce Momjian [Mon, 24 Mar 2008 16:05:45 +0000 (16:05 +0000)]
Add to TODO:
> * Improve reporting of UNION type mismatches
>
> http://archives.postgresql.org/pgsql-hackers/2007-04/msg00944.php
> http://archives.postgresql.org/pgsql-hackers/2008-03/msg00597.php
Bruce Momjian [Mon, 24 Mar 2008 14:17:06 +0000 (14:17 +0000)]
Update wording:
< o Allow pre/data/post files when dumping a single object, for
< performance reasons
> o Allow pre/data/post files when schema and data are dumped
> separately, for performance reasons
Bruce Momjian [Sun, 23 Mar 2008 12:36:59 +0000 (12:36 +0000)]
Update text:
< o Support pgxs
> o Support pgxs when using MSVC
Bruce Momjian [Sun, 23 Mar 2008 01:30:46 +0000 (01:30 +0000)]
Add:
> http://archives.postgresql.org/pgsql-patches/2008-02/msg00176.php
Bruce Momjian [Sun, 23 Mar 2008 01:26:53 +0000 (01:26 +0000)]
Re-add:
>
> * Avoid tuple some tuple copying in sort routines
>
> http://archives.postgresql.org/pgsql-hackers/2008-02/msg01206.php
Bruce Momjian [Sun, 23 Mar 2008 01:23:10 +0000 (01:23 +0000)]
Add:
>
> * Sort large UPDATE/DELETEs so it is done in heap order
>
> http://archives.postgresql.org/pgsql-hackers/2008-01/msg01119.php
Bruce Momjian [Sun, 23 Mar 2008 01:13:38 +0000 (01:13 +0000)]
Add URL for:
* Do async I/O for faster random read-ahead of data
Async I/O allows multiple I/O requests to be sent to the disk with
results coming back asynchronously.
> http://archives.postgresql.org/pgsql-patches/2008-01/msg00170.php
Bruce Momjian [Sun, 23 Mar 2008 00:56:54 +0000 (00:56 +0000)]
Done:
<
< * Avoid tuple some tuple copying in sort routines
<
< http://archives.postgresql.org/pgsql-hackers/2008-02/msg01206.php
Tom Lane [Sun, 23 Mar 2008 00:54:04 +0000 (00:54 +0000)]
Avoid a useless tuple copy within nodeMaterial. Neil Conway
Bruce Momjian [Sun, 23 Mar 2008 00:32:33 +0000 (00:32 +0000)]
Add to pg_dump TODO:
> o Allow pre/data/post files when dumping a single object, for
> performance reasons
>
> http://archives.postgresql.org/pgsql-hackers/2008-02/msg00205.php
>
Tom Lane [Sun, 23 Mar 2008 00:24:20 +0000 (00:24 +0000)]
Create a function quote_nullable(), which works the same as quote_literal()
except that it returns the string 'NULL', rather than a SQL null, when called
with a null argument. This is often a much more useful behavior for
constructing dynamic queries. Add more discussion to the documentation
about how to use these functions.
Brendan Jurd
Bruce Momjian [Sun, 23 Mar 2008 00:14:41 +0000 (00:14 +0000)]
Add to Win3 TODO:
>
> o Fix MSVC NLS support, like for to_char()
>
> http://archives.postgresql.org/pgsql-hackers/2008-02/msg00485.php
> http://archives.postgresql.org/pgsql-patches/2008-02/msg00038.php
Bruce Momjian [Sun, 23 Mar 2008 00:08:47 +0000 (00:08 +0000)]
Add to TODO:
>
> * Improve WAL concurrency by increasing lock granularity
>
> http://archives.postgresql.org/pgsql-hackers/2008-02/msg00556.php
>
Bruce Momjian [Sat, 22 Mar 2008 23:49:22 +0000 (23:49 +0000)]
Add to Win32 TODO
>
> o Support pgxs
Bruce Momjian [Sat, 22 Mar 2008 23:47:03 +0000 (23:47 +0000)]
Add to TODO:
>
> * Avoid tuple some tuple copying in sort routines
>
> http://archives.postgresql.org/pgsql-hackers/2008-02/msg01206.php
Bruce Momjian [Sat, 22 Mar 2008 22:52:26 +0000 (22:52 +0000)]
Add URL for TODO:
o Add checks to prevent a CREATE RULE views on inherited tables
> http://archives.postgresql.org/pgsql-general/2008-03/msg00077.php
Tom Lane [Sat, 22 Mar 2008 22:32:19 +0000 (22:32 +0000)]
Refactor to_char/to_date formatting code; primarily, replace DCH_processor
with two new functions DCH_to_char and DCH_from_char that have less confusing
APIs. Brendan Jurd
Bruce Momjian [Sat, 22 Mar 2008 22:06:12 +0000 (22:06 +0000)]
Add to TODO:
>
> o Add checks to prevent a CREATE RULE views on inherited tables
>
> http://archives.postgresql.org/pgsql-general/2008-02/msg01420.php
Tatsuo Ishii [Sat, 22 Mar 2008 01:55:14 +0000 (01:55 +0000)]
Add server side lo_import(filename, oid) function.
Bruce Momjian [Sat, 22 Mar 2008 01:47:38 +0000 (01:47 +0000)]
Add URL for:
* Simplify ability to create partitioned tables
> http://archives.postgresql.org/pgsql-hackers/2008-01/msg00387.php
Bruce Momjian [Sat, 22 Mar 2008 01:46:30 +0000 (01:46 +0000)]
Add URL for:
* Simplify ability to create partitioned tables
> http://archives.postgresql.org/pgsql-hackers/2008-01/msg00248.php
Bruce Momjian [Sat, 22 Mar 2008 01:44:42 +0000 (01:44 +0000)]
Add TODO:
>
> * Improve performance of shared invalidation queue for multiple CPUs
>
> http://archives.postgresql.org/pgsql-performance/2008-01/msg00023.php
Bruce Momjian [Sat, 22 Mar 2008 01:30:21 +0000 (01:30 +0000)]
Add URLs for:
* Simplify ability to create partitioned tables
This would allow creation of partitioned tables without requiring
creation of triggers or rules for INSERT/UPDATE/DELETE, and constraints
for rapid partition selection. Options could include range and hash
partition selection.
> http://archives.postgresql.org/pgsql-hackers/2008-01/msg00028.php
> http://archives.postgresql.org/pgsql-hackers/2008-01/msg00413.php
Tom Lane [Fri, 21 Mar 2008 22:41:48 +0000 (22:41 +0000)]
Remove TypeName struct's timezone flag, which has been write-only storage
for a very long time --- in current usage it's entirely redundant with the
name field.
Tom Lane [Fri, 21 Mar 2008 22:10:56 +0000 (22:10 +0000)]
Give an explicit error for serial[], rather than silently ignoring
the array decoration as the code had been doing.
Tom Lane [Fri, 21 Mar 2008 21:08:31 +0000 (21:08 +0000)]
Report the current queries of all backends involved in a deadlock
(if they'd be visible to the current user in pg_stat_activity).
This might look like it's subject to race conditions, but it's actually
pretty safe because at the time DeadLockReport() is constructing the
report, we haven't yet aborted our transaction and so we can expect that
everyone else involved in the deadlock is still blocked on some lock.
(There are corner cases where that might not be true, such as a statement
timeout triggering in another backend before we finish reporting; but at
worst we'd report a misleading activity string, so it seems acceptable
considering the usefulness of reporting the queries.)
Original patch by Itagaki Takahiro, heavily modified by me.