git.postgresql.org Git - postgresql.git/log
Tom Lane [2006年12月24日 00:29:20 +0000 (00:29 +0000)]
Code review for XML patch. Instill a bit of sanity in the location of
the XmlExpr code in various lists, use a representation that has some hope
of reverse-listing correctly (though it's still a de-escaping function
shy of correctness), generally try to make it look more like Postgres
coding conventions.
Tom Lane [2006年12月23日 04:56:50 +0000 (04:56 +0000)]
Suppress various compiler warnings in new xml code.
Remove unnecessary parentheses in if() statements.
Change a VACUUM manual page word from 'deleted' to 'expired', so DELETE
and UPDATE are clearly covered by the term.
Document that CREATE TYPE names should not begin with an underscore,
rather than being disallowed.
For GUC values, check for partial string matches on 'on' and 'off', but
require at least two characters for uniqueness. This now matches the
behavior of other boolean strings we support, per report from Gurjeet
Singh.
Tom Lane [2006年12月23日 00:43:13 +0000 (00:43 +0000)]
Restructure operator classes to allow improved handling of cross-data-type
cases. Operator classes now exist within "operator families". While most
families are equivalent to a single class, related classes can be grouped
into one family to represent the fact that they are semantically compatible.
Cross-type operators are now naturally adjunct parts of a family, without
having to wedge them into a particular opclass as we had done originally.
This commit restructures the catalogs and cleans up enough of the fallout so
that everything still works at least as well as before, but most of the work
needed to actually improve the planner's behavior will come later. Also,
there are not yet CREATE/DROP/ALTER OPERATOR FAMILY commands; the only way
to create a new family right now is to allow CREATE OPERATOR CLASS to make
one by default. I owe some more documentation work, too. But that can all
be done in smaller pieces once this infrastructure is in place.
Add a link to the developer's FAQ for my article about how companies can
work effectively with open source communities.
Slight adjustments to xml documentation to reflect functionality just
added.
Fix expected file.
Catalog version bump for SQL/XML changes.
Fix convertion for 'PFX flag N num'
Initial SQL/XML support: xml data type and initial set of functions.
8.3 release schedule is year 2007, not 2006.
Add timeline for next release to developer's FAQ.
Item done.
< o Improve xid wraparound detection by recording per-table rather
< than per-database
Interpret a dbName param to PQsetdbLogin as a conninfo string if it contains an = sign. Tom Lane and Andrew Dunstan.
Tom Lane [2006年12月18日 18:56:29 +0000 (18:56 +0000)]
Set pg_am.amstrategies to zero for index AMs that don't have fixed
operator strategy numbers, ie, GiST and GIN. This is almost cosmetic
enough to not need a catversion bump, but since the opr_sanity regression
test has to change in sync with the catalog entry, I figured I'd better
do one.
fix thinko in placement of TimeValStruct typedef in Windows case, as reported by Magnus.
Fix typo:
< While PostgreSQL clients runs fine limited-resource environments, the
> While PostgreSQL clients runs fine in limited-resource environments, the
Move entry into CLUSTER section:
< * Make CLUSTER preserve recently-dead tuples per MVCC requirements
> o Make CLUSTER preserve recently-dead tuples per MVCC requirements
enable \timing oputput for \copy commands
Tom Lane [2006年12月15日 18:42:26 +0000 (18:42 +0000)]
Fix some planner bugs exposed by reports from Arjen van der Meijden. These
are all in new-in-8.2 logic associated with indexability of ScalarArrayOpExpr
(IN-clauses) or amortization of indexscan costs across repeated indexscans
on the inside of a nestloop. In particular:
Fix some logic errors in the estimation for multiple scans induced by a
ScalarArrayOpExpr indexqual.
Include a small cost component in bitmap index scans to reflect the costs of
manipulating the bitmap itself; this is mainly to prevent a bitmap scan from
appearing to have the same cost as a plain indexscan for fetching a single
tuple.
Also add a per-index-scan-startup CPU cost component; while prior releases
were clearly too pessimistic about the cost of repeated indexscans, the
original 8.2 coding allowed the cost of an indexscan to effectively go to zero
if repeated often enough, which is overly optimistic.
Pay some attention to index correlation when estimating costs for a nestloop
inner indexscan: this is significant when the plan fetches multiple heap
tuples per iteration, since high correlation means those tuples are probably
on the same or adjacent heap pages.
Tom Lane [2006年12月15日 16:54:43 +0000 (16:54 +0000)]
Put JST back into the default set of timezone abbreviations;
was removed in an unexplainable moment of brain fade.
Back out double-run of PDF/PS output. Requires building bookindex.sgml
properly.
Remove SGML docs about openjade performance patch, and instead add
comment in style sheet where indenting code is commented out.
Backpatch to 8.2.X.
TODO item not wanted:
>
> * Embedded server (not wanted)
>
> While PostgreSQL clients runs fine limited-resource environments, the
> server requires multiple processes and a stable pool of resources to
> run reliabily and efficiently. Stripping down the PostgreSQL server
> to run in the same process address space as the client application
> would add too much complexity and failure cases.
Link to summary XML email, rather than thread top:
< * Consider changing documentation from SGML to XML
> * Consider changing documentation format from SGML to XML
< http://archives.postgresql.org/pgsql-docs/2006-12/msg00033.php
> http://archives.postgresql.org/pgsql-docs/2006-12/msg00152.php
Document issues for SGML and XML:
>
> * Consider changing documentation from SGML to XML
>
> http://archives.postgresql.org/pgsql-docs/2006-12/msg00033.php
>
Document patch needed to get PDF and PS output in a reasonable amount of
time.
Remove unneeded tab in file.
Run Jade twice when outputting Postscript and PDF so the index is
correct, add comments about other multiple runs in the Makefile.
Backpatch to 8.2.X.
Tom Lane [2006年12月14日 21:49:54 +0000 (21:49 +0000)]
Make --with-ldap build on Unixware, per Olivier Prenant.
Remove Windows port^W^Wobsolete template file.
Activate WIN32_STACK_RLIMIT override only on platforms where this is
necessary.
Tom Lane [2006年12月13日 05:54:48 +0000 (05:54 +0000)]
Put back yet another improperly-removed #include, per Mark Kirkwood.
Update entry:
< * Have EXPLAIN ANALYZE highlight poor optimizer estimates
> * Have EXPLAIN ANALYZE issue NOTICE messages when the estimated and
> actual row counts differ by a specified percentage
Tom Lane [2006年12月12日 21:31:02 +0000 (21:31 +0000)]
Fix planner to do the right thing when a degenerate outer join (one whose
joinclause doesn't use any outer-side vars) requires a "bushy" plan to be
created. The normal heuristic to avoid joins with no joinclause has to be
overridden in that case. Problem is new in 8.2; before that we forced the
outer join order anyway. Per example from Teodor.
Document that log_line_prefix %t does not print timezone on Win32.
Oops, removed:
< * Allow REINDEX CONCURRENTLY
Add:
> * Allow REINDEX CONCURRENTLY
Allow augmenting CPPFLAGS from the configure command line. This generally
works, but some platform templates overwrote it without asking.
Remove blank lines in HTML FAQ.
Add FAQ entry to mention using COALESCE() for concatenation of possible
NULLs.
Tom Lane [2006年12月10日 22:13:27 +0000 (22:13 +0000)]
Add a paramtypmod field to Param nodes. This is dead weight for Params
representing externally-supplied values, since the APIs that carry such
values only specify type not typmod. However, for PARAM_SUBLINK Params
it is handy to carry the typmod of the sublink's output column. This
is a much cleaner solution for the recently reported 'could not find
pathkey item to sort' and 'failed to find unique expression in subplan
tlist' bugs than my original 8.2-compatible patch. Besides, someday we
might want to support typmods for external parameters ...
Make separate targets for building printable documentation in A4 and
US letter paper formats.
Reorganize XSLT stylesheet support. Put common things into a separate
file (instead of repeating), add XSL-FO stylesheet and appropriate make
rules.
Add some information about increasing JadeTeX parameters.
Drop indentation of verbatim environments in print output. This increased
the build time by what seemed like infinity.
Generalize Texinfo rules. Prevent them from overriding the PostScript
build rules.
Tom Lane [Fri, 8 Dec 2006 19:50:53 +0000 (19:50 +0000)]
Remove the logId/logSeg fields from pg_control, because they are not needed
in normal operation, and we can avoid rewriting pg_control at every log
segment switch if we don't insist that these values be valid. Reducing
the number of pg_control updates is a good idea for both performance and
reliability. It does make pg_resetxlog's life a bit harder, but that seems
a good tradeoff; and anyway the change to pg_resetxlog amounts to automating
something people formerly needed to do by hand, namely look at the existing
pg_xlog files to make sure the new WAL start point was past them.
In passing, change the wording of xlog.c's "database system was interrupted"
messages: describe the pg_control timestamp as "last known up at" rather than
implying it is the exact time of service interruption. With this change the
timestamp will generally be the time of the last checkpoint, which could be
many minutes before the failure; and we've already seen indications that
people tend to misinterpret the old wording.
initdb forced due to change in pg_control layout. Simon Riggs and Tom Lane
Tom Lane [Fri, 8 Dec 2006 19:16:17 +0000 (19:16 +0000)]
Fix broken markup.
Neil Conway [Fri, 8 Dec 2006 02:15:07 +0000 (02:15 +0000)]
Fix the build for when SHOW_MEMORY_STATS is defined. The reference to
the nonexistent ShowStats variable is simply removed, per Gavin Sherry.
Tom Lane [Fri, 8 Dec 2006 00:40:27 +0000 (00:40 +0000)]
Avoid double free of _SPI_current->tuptable. AtEOSubXact_SPI() now tries to
release it in a subtransaction abort, but this neglects possibility that
someone outside SPI already did. Fix is for spi.c to forget about a tuptable
as soon as it's handed it back to the caller.
Per bug #2817 from Michael Andreen.
Tom Lane [Thu, 7 Dec 2006 19:33:40 +0000 (19:33 +0000)]
Repair incorrect placement of WHERE clauses when there are multiple,
rearrangeable outer joins and the WHERE clause is non-strict and mentions
only nullable-side relations. New bug in 8.2, caused by new logic to allow
rearranging outer joins. Per bug #2807 from Ross Cohen; thanks to Jeff
Davis for producing a usable test case.
Tom Lane [Wed, 6 Dec 2006 19:40:01 +0000 (19:40 +0000)]
Fix planning of SubLinks to ensure that Vars generated from transformation of
a sublink's test expression have the correct vartypmod, rather than defaulting
to -1. There's at least one place where this is important because we're
expecting these Vars to be exactly equal() to those appearing in the subplan
itself. This is a pretty klugy solution --- it would likely be cleaner to
change Param nodes to include a typmod field --- but we can't do that in the
already-released 8.2 branch.
Per bug report from Hubert Fongarnand.
Neil Conway [Wed, 6 Dec 2006 18:06:48 +0000 (18:06 +0000)]
Add a txn_start column to pg_stat_activity. This makes it easier to
identify long-running transactions. Since we already need to record
the transaction-start time (e.g. for now()), we don't need any
additional system calls to report this information.
Catversion bumped, initdb required.
Neil Conway [Wed, 6 Dec 2006 17:35:49 +0000 (17:35 +0000)]
Various improvements to the GUC description strings. Punctuate and
capitalize the strings like sentences. Remove unnecessarily
specific descriptions of the units used by GUC variables, since
we now allow any reasonable unit to be specified.
Change psql \\ example to use single quotes, per TOm.
Back out mention of port success from FAQs, per Tom, added by Simon.
Clean up psql -c documentation that uses \\.
Make URL to docs use /current/.
Fix documentation example of using psql \x with a SELECT command, per
Simon Riggs. Backpatch to 8.2.X.
Neil Conway [Tue, 5 Dec 2006 17:36:00 +0000 (17:36 +0000)]
Fix typos in comments and error messages in HStore. Patch from Filip
Rembialkowski, with some additional fixes by myself.
Update of port patches, HEAD patch only.
Simon Riggs
Fix pg_dump linking on Win32 with MSVS win32.mak:
The module link is insufficient.:-(
---- Sorry, japanese message change to xxx ---
link.exe @C:\DOCUME~1\hi-saito\LOCALS~1\Temp\nmk03360.
common.obj : error LNK2001: xxxxxx "_pg_qsort" xxxxxx
pg_dump_sort.obj : error LNK2001: xxxxx "_pg_qsort" xxxxx
.\Release\pg_dump.exe : fatal error LNK1120: xxxxxxx
NMAKE : fatal error U1077: 'link.exe' : xxxxx '0x460'
Stop.
Hiroshi Saito
Patch of Win32 Encoding problem for server messages using
FormatMessage() (This should have been in 8.2.0, patched to 8.2.X and
HEAD):
I think this problem to be complex....
http://archives.postgresql.org/pgsql-hackers/2006-11/msg00042.php
FormatMessage of windows cannot consider the encoding of the database.
However, I should try the solution now. It is necessary to clear the
problem.
Multi character-code exists together in message and log. It doesn't
consider
the data base encoding that the user intended....
The user in multi-byte country can try this.
http://inet.winpg.jp/~saito/pg_bug/MessageCheck.c
That is, it is likely to become it in this manner.(Japanese)
http://inet.winpg.jp/~saito/pg_bug/FormatMessage998.png
Hiroshi Saito
Fix core dump of ispell for case of non-successfull initialization.
Previous versions aren't affected.
Fix synonym dictionary init: string should be malloc'ed, not palloc'ed. Bug
introduced recently while fixing lowerstr().
Tom Lane [Mon, 4 Dec 2006 02:06:55 +0000 (02:06 +0000)]
Refactor ExecGetJunkAttribute to avoid searching for junk attributes
by name on each and every row processed. Profiling suggests this may
buy a percent or two for simple UPDATE scenarios, which isn't huge,
but when it's so easy to get ...
Tom Lane [Sun, 3 Dec 2006 21:40:07 +0000 (21:40 +0000)]
Fix LIMIT/OFFSET for null limit values. This worked before 8.2 but was broken
by the change to make limit values int8 instead of int4. (Specifically, you
can do DatumGetInt32 safely on a null value, but not DatumGetInt64.) Per
bug #2803 from Greg Johnson.
Tom Lane [Sat, 2 Dec 2006 16:43:12 +0000 (16:43 +0000)]
Stamp HEAD as 8.3devel.
Update most recent version from 8.2 to 8.2.0.
Collect the bits of wisdom about dtrace installation in the installation
chapter rather than scattering them across several incomplete fragments.
v8.2.0 is now released ...
Stamp 8.2, except configure.in.
Update for release 8.2.
Wording refinement for external references in man pages.
Don't ship spi_* man pages. (We don't do that anyway, but now it's automatic.)
Translation updates
Tom Lane [Sat, 2 Dec 2006 00:46:46 +0000 (00:46 +0000)]
Put release date in release notes.
Tom Lane [Sat, 2 Dec 2006 00:42:54 +0000 (00:42 +0000)]
Add some documentation for DTrace support. Simon Riggs
Make Options for Windows a second-level heading instead of first-level.
Tom Lane [Fri, 1 Dec 2006 23:46:46 +0000 (23:46 +0000)]
Editorial improvements for GIN documentation.
Tom Lane [Fri, 1 Dec 2006 21:17:51 +0000 (21:17 +0000)]
Some more supported-platforms updates: buildfarm hare is alive again,
and penguin reported in recently enough to justify the assumption that
we haven't broken ARM support in 8.2.
Tom Lane [Fri, 1 Dec 2006 20:49:53 +0000 (20:49 +0000)]
Document the recently-understood hazard that a rollback can release row-level
locks that logically should not be released, because when a subtransaction
overwrites XMAX all knowledge of the previous lock state is lost. It seems
unlikely that we will be able to fix this before 8.3...
Tom Lane [Fri, 1 Dec 2006 19:55:28 +0000 (19:55 +0000)]
Make the bgwriter's error recovery path do smgrcloseall(). On Windows this
should allow delete-pending files to actually go away, and thereby work
around the various complaints we've seen about 'permission denied'
errors in such cases. Should be reasonably harmless in any case...
Tom Lane [Fri, 1 Dec 2006 03:29:15 +0000 (03:29 +0000)]
Editorial improvements to backup and warm-standby documentation.
Tom Lane [Fri, 1 Dec 2006 03:19:48 +0000 (03:19 +0000)]
Minor wording improvements.
Tom Lane [Fri, 1 Dec 2006 01:04:36 +0000 (01:04 +0000)]
Adjust the description of locking to clarify that locks held by a
subtransaction are released if the subtransaction aborts --- in user-level
terminology, this means either rolling back to a savepoint or escaping from
a plpgsql exception block. Per recent suggestion from Simon.
Tom Lane [2006年11月30日 22:21:24 +0000 (22:21 +0000)]
Better solution to the tr problem: use sed instead. Per Martijn and Andrew.
Tom Lane [2006年11月30日 21:44:12 +0000 (21:44 +0000)]
Improve portability of 'tr' invocation in PGAC_ARG_CHECK. Reported by
Olivier Prenant, fixed by Peter.
Tom Lane [2006年11月30日 21:30:22 +0000 (21:30 +0000)]
Update supported-platforms list based on recent buildfarm results.
Fix typos
Tom Lane [2006年11月30日 18:29:12 +0000 (18:29 +0000)]
Minor adjustments to make failures in startup/shutdown behave more cleanly.
StartupXLOG and ShutdownXLOG no longer need to be critical sections, because
in all contexts where they are invoked, elog(ERROR) would be translated to
elog(FATAL) anyway. (One change in bgwriter.c is needed to make this true:
set ExitOnAnyError before trying to exit. This is a good fix anyway since
the existing code would have gone into an infinite loop on elog(ERROR) during
shutdown.) That avoids a misleading report of PANIC during semi-orderly
failures. Modify the postmaster to include the startup process in the set of
processes that get SIGTERM when a fast shutdown is requested, and also fix it
to not try to restart the bgwriter if the bgwriter fails while trying to write
the shutdown checkpoint. Net result is that "pg_ctl stop -m fast" does
something reasonable for a system in warm standby mode, and so should Unix
system shutdown (ie, universal SIGTERM). Per gripe from Stephen Harris and
some corner-case testing of my own.
Fix bug with page deletion. If inner page is removed and it tries to
remove page on next level linked from next inner page, ginScanToDelete()
wrongly sets parent page. Bug reveals when many item pointers from index
was deleted ( several hundred thousands).
Bug is discovered by hubert depesz lubaczewski <depesz@gmail.com>
Suppose, we need rc2 before release...
Fix Makefile problem which prevented installation on VPATH builds.
Tom Lane [2006年11月29日 20:12:31 +0000 (20:12 +0000)]
Ignore libedit/libreadline while probing for strlcpy and some other
standard functions. Per report from Stefan Kaltenbrunner.
Tom Lane [2006年11月29日 19:49:31 +0000 (19:49 +0000)]
More MSVC build support from Magnus.
Spelling fix
Tom Lane [2006年11月28日 22:54:18 +0000 (22:54 +0000)]
Add an example showing how to cope with mixed-case names in pg_dump
switches.
Tom Lane [2006年11月28日 19:37:03 +0000 (19:37 +0000)]
Update timezone data to tzdata2006p zic distribution. It seems Western
Australia decided to institute DST with one month's notice ... way to go,
politicians.
This is the main PostgreSQL git repository.
RSS
Atom