OSDN Git Service
Magnus Hagander [Fri, 29 Feb 2008 15:31:33 +0000 (15:31 +0000)]
Fix handling of restricted processes for Windows Vista (mainly),
by explicitly adding back the user to the DACL of the new process.
This fixes the failure case when executing as the Administrator
user, which had no permissions left at all after we dropped the
Administrators group.
Dave Page with some modifications from me
Bruce Momjian [Fri, 29 Feb 2008 14:56:50 +0000 (14:56 +0000)]
Update wording:
< * Add Oracle-style packages (Pavel)
> * Add features of Oracle-style packages (Pavel)
Peter Eisentraut [Fri, 29 Feb 2008 10:34:51 +0000 (10:34 +0000)]
Write the objfiles.txt rules in a way that is compatible with GNU make 3.78,
and simpler, too.
Neil Conway [Fri, 29 Feb 2008 02:49:39 +0000 (02:49 +0000)]
Fix several memory leaks when rescanning SRFs. Arrange for an SRF's
"multi_call_ctx" to be a distinct sub-context of the EState's per-query
context, and delete the multi_call_ctx as soon as the SRF finishes
execution. This avoids leaking SRF memory until the end of the current
query, which is particularly egregious when the SRF is scanned
multiple times. This change also fixes a leak of the fields of the
AttInMetadata struct in shutdown_MultiFuncCall().
Also fix a leak of the SRF result TupleDesc when rescanning a
FunctionScan node. The TupleDesc is allocated in the per-query context
for every call to ExecMakeTableFunctionResult(), so we should free it
after calling that function. Since the SRF might choose to return
a non-expendable TupleDesc, we only free the TupleDesc if it is
not being reference-counted.
Backpatch to 8.3 and 8.2 stable branches.
Magnus Hagander [Thu, 28 Feb 2008 12:17:59 +0000 (12:17 +0000)]
Support for building contrib/uuid-ossp with MSVC.
Original patch from Hiroshi Saito, modified by me.
Peter Eisentraut [Wed, 27 Feb 2008 20:31:01 +0000 (20:31 +0000)]
Change expand_subsys function so that it preserves the relative order of
the files passed as argument. This is desirable so that the dtrace rule
in src/backend/Makefile works.
Tom Lane [Wed, 27 Feb 2008 17:44:19 +0000 (17:44 +0000)]
If RelationBuildDesc() fails to open a critical system index, PANIC with
a relevant error message instead of just dumping core. Odd that nobody
reported this before Darren Reed.
Peter Eisentraut [Tue, 26 Feb 2008 18:01:26 +0000 (18:01 +0000)]
Add more clarification about SSH tunnels from Faheem Mitha.
Peter Eisentraut [Tue, 26 Feb 2008 16:07:16 +0000 (16:07 +0000)]
In the SSH setup instructions, change
ssh -L 3333:foo.com:5432 joe@foo.com
I think this should be changed to
ssh -L 3333:localhost:5432 joe@foo.com
The reason is that this assumes the postgres server on foo.com allows
connections from foo.com, which is not allowed by the default
listen_addresses setting. Add more detail explaining this.
pointed out by Faheem Mitha
Also change the example port number 3333 to 63333 so no one can complain
that we are stealing a reserved port number.
Peter Eisentraut [Tue, 26 Feb 2008 15:32:30 +0000 (15:32 +0000)]
Add information about format modifiers that apply to numeric formats.
These were previously only documented in the context of date/time formats.
Peter Eisentraut [Tue, 26 Feb 2008 14:42:27 +0000 (14:42 +0000)]
Fixed dtrace build
found by Magne Mæhre
Peter Eisentraut [Tue, 26 Feb 2008 14:26:16 +0000 (14:26 +0000)]
Don't build the win32 support files in the all target, only in distprep and
when they are actually needed as prerequisites.
Peter Eisentraut [Tue, 26 Feb 2008 13:48:57 +0000 (13:48 +0000)]
Fix uninstall target.
Peter Eisentraut [Tue, 26 Feb 2008 13:31:40 +0000 (13:31 +0000)]
Create two separate libpq.rc's: One that is built at build time, and one
that is shipped in the distribution, named libpq-dist.rc. This way the
build system doesn't get upset when a distributed file is forcibly
overwritten by during a normal build.
Peter Eisentraut [Tue, 26 Feb 2008 10:45:24 +0000 (10:45 +0000)]
Reorganize some of the exports list generation code. It seems that this
has been reinvented about four different times throughout history (aix,
cygwin, win32, darwin/linux) and a lot of the concepts are actually shared,
which the code now shows better.
Peter Eisentraut [Tue, 26 Feb 2008 10:30:06 +0000 (10:30 +0000)]
Escape # character in variable assignment
Peter Eisentraut [Tue, 26 Feb 2008 08:23:31 +0000 (08:23 +0000)]
Need more dependencies to get the build order right when objfiles.txt
doesn't exist yet.
Peter Eisentraut [Tue, 26 Feb 2008 07:20:38 +0000 (07:20 +0000)]
We don't need to rebuild objfiles.txt every time an object file changes.
So only rebuild when a makefile changes (which presumably defines the
file list somewhere), and only touch the file if an object changed. The
touch is necessary so the parent make knows something changed and
ultimately rebuilds postgres.
Peter Eisentraut [Tue, 26 Feb 2008 06:41:24 +0000 (06:41 +0000)]
Refactor the code that creates the shared library export files to appear
only once in Makefile.shlib and not in four copies.
Tom Lane [Tue, 26 Feb 2008 02:54:08 +0000 (02:54 +0000)]
Fix encode(...bytea..., 'escape') so that it converts all high-bit-set byte
values into \nnn octal escape sequences. When the database encoding is
multibyte this is *necessary* to avoid generating invalidly encoded text.
Even in a single-byte encoding, the old behavior seems very hazardous ---
consider for example what happens if the text is transferred to another
database with a different encoding. Decoding would then yield some other
bytea value than what was encoded, which is surely undesirable. Per gripe
from Hernan Gonzalez.
Backpatch to 8.3, but not further. This is a bit of a judgment call, but I
make it on these grounds: pre-8.3 we don't really have much encoding safety
anyway because of the convert() function family, and we would also have much
higher risk of breaking existing apps that may not be expecting this behavior.
8.3 is still new enough that we can probably get away with making this change
in the function's behavior.
Tom Lane [Mon, 25 Feb 2008 23:36:28 +0000 (23:36 +0000)]
Reject year zero during datetime input, except when it's a 2-digit year
(then it means 2000 AD). Formerly we silently interpreted this as 1 BC,
which at best is unwarranted familiarity with the implementation.
It's barely possible that some app somewhere expects the old behavior,
though, so we won't back-patch this into existing release branches.
Tom Lane [Mon, 25 Feb 2008 23:21:01 +0000 (23:21 +0000)]
Fix datetime input to behave correctly for Feb 29 in years BC.
Formerly, DecodeDate attempted to verify the day-of-the-month exactly, but
it was under the misapprehension that it would know whether we were looking
at a BC year or not. In reality this check can't be made until the calling
function (eg DecodeDateTime) has processed all the fields. So, split the
BC adjustment and validity checks out into a new function ValidateDate that
is called only after processing all the fields. In passing, this patch
makes DecodeTimeOnly work for BC inputs, which it never did before.
(The historical veracity of all this is nonexistent, of course, but if
we're going to say we support proleptic Gregorian calendar then we should
do it correctly. In any case the unpatched code is broken because it could
emit dates that it would then reject on re-inputting.)
Per report from Bernd Helmle. Back-patch as far as 8.0; in 7.x we were
not using our own calendar support and so this seems a bit too risky
to put into 7.4.
Peter Eisentraut [Mon, 25 Feb 2008 17:55:42 +0000 (17:55 +0000)]
Link postgres from all object files at once, to avoid the error-prone
SUBSYS.o step and allow for better optimization by the linker.
Instead of partial linking into SUBSYS.o, the list of object files is
assembled in objfiles.txt files that are expanded when the final
linking is done.
Because we are not yet sure how long command lines different platforms
can handle, the old way of linking is still available, by defining the
make variable PARTIAL_LINKING (e.g., make all PARTIAL_LINKING=1). If
we determine that this is necessary for some platforms, then we will
document this in a more prominent place.
Tom Lane [Sun, 24 Feb 2008 05:21:54 +0000 (05:21 +0000)]
Use our own getopt() and getopt_long() on Solaris, because that platform's
versions don't handle long options the way we want. Per Zdenek Kotala.
Tom Lane [Sat, 23 Feb 2008 19:23:33 +0000 (19:23 +0000)]
Avoid trying to print a NULL char pointer in --describe-config. On some
platforms this works, but on some it crashes. Zdenek Kotala
Tom Lane [Sat, 23 Feb 2008 19:11:45 +0000 (19:11 +0000)]
Change the declaration of struct varlena so that the length word is
represented as "char ...[4]" not "int32". Since the length word is never
supposed to be accessed via this struct member anyway, this won't break
any existing code that is following the rules. The advantage is that C
compilers will no longer assume that a pointer to struct varlena is
word-aligned, which prevents incorrect optimizations in TOAST-pointer
access and perhaps other places. gcc doesn't seem to do this (at least
not at -O2), but the problem is demonstrable on some other compilers.
I changed struct inet as well, but didn't bother to touch a lot of other
struct definitions in which it wouldn't make any difference because there
were other fields forcing int alignment anyway. Hopefully none of those
struct definitions are used for accessing unaligned Datums.
Tom Lane [Wed, 20 Feb 2008 22:46:24 +0000 (22:46 +0000)]
Rename miscadmin.h's PG_VERSIONSTR macro to PG_BACKEND_VERSIONSTR to
make it a bit clearer what it is, and get rid of duplicate definitions
in initdb and pg_ctl.
Tom Lane [Wed, 20 Feb 2008 22:44:16 +0000 (22:44 +0000)]
Make pg_regress -V consistent with the corresponding code in other
programs: use puts with a compile-time-constant string.
Tom Lane [Wed, 20 Feb 2008 22:18:15 +0000 (22:18 +0000)]
Fix mistakes in pg_ctl's code for "start -w" that tries to cope with
non-default settings for the postmaster's port number. The code to parse
command line options and postgresql.conf entries wasn't quite right about
whitespace or quotes, and it was coded in a not-very-readable way too.
Per bug #3969 from Itagaki Takahiro, though this is more extensive than his
proposed patch (which fixed only the whitespace problem).
This code has been broken since it was put in in 8.0, so patch all the way
back.
Tom Lane [Wed, 20 Feb 2008 17:44:09 +0000 (17:44 +0000)]
Put a CHECK_FOR_INTERRUPTS call into the loops that try to find a unique new
OID or new relfilenode. If the existing OIDs are sufficiently densely
populated, this could take a long time (perhaps even be an infinite loop),
so it seems wise to allow the system to respond to a cancel interrupt here.
Per a gripe from Jacky Leng.
Backpatch as far as 8.1. Older versions just fail on OID collision,
instead of looping.
Alvaro Herrera [Wed, 20 Feb 2008 14:31:35 +0000 (14:31 +0000)]
Improve error messages emitted when VACUUM and ANALYZE skip a table.
Per gripe from Clodoaldo Pinto Neto on
Message-ID: <a595de7a0801060326qbfc790ax2a60573043c2e2be@mail.gmail.com>
Alvaro Herrera [Wed, 20 Feb 2008 14:01:45 +0000 (14:01 +0000)]
Change error message to be able to differentiate the two cases. Per suggestion
from Jaime Casanova.
Peter Eisentraut [Tue, 19 Feb 2008 18:02:30 +0000 (18:02 +0000)]
Backport fixed AC_FUNC_FSEEKO
Magnus Hagander [Tue, 19 Feb 2008 16:15:14 +0000 (16:15 +0000)]
Un-break msvc port yet again (it started pulling in the Darwin
port files, which obviously didn't compile)
Peter Eisentraut [Tue, 19 Feb 2008 15:29:58 +0000 (15:29 +0000)]
More refactoring, so that the SUBSYS.o rules are now all in one place.
Peter Eisentraut [Tue, 19 Feb 2008 13:08:56 +0000 (13:08 +0000)]
This subdirectory has been unused, dead, and broken for 10 years.
Magnus Hagander [Tue, 19 Feb 2008 12:06:35 +0000 (12:06 +0000)]
Fix function prototype to silence compiler warnings.
Magnus Hagander [Tue, 19 Feb 2008 12:00:03 +0000 (12:00 +0000)]
Unbreak MSVC build after recent addition of HTMLDIR.
Peter Eisentraut [Tue, 19 Feb 2008 11:49:12 +0000 (11:49 +0000)]
Remove another target I forgot during the refactoring
Peter Eisentraut [Tue, 19 Feb 2008 10:30:09 +0000 (10:30 +0000)]
Refactor backend makefiles to remove lots of duplicate code
Bruce Momjian [Tue, 19 Feb 2008 01:05:28 +0000 (01:05 +0000)]
Put back code modularization of fseeko() configure checks.
Bruce Momjian [Tue, 19 Feb 2008 00:46:43 +0000 (00:46 +0000)]
Put fseeko check back in old location, in hopes of silencing build warnings.
Tom Lane [Mon, 18 Feb 2008 23:00:32 +0000 (23:00 +0000)]
Remove unnecessary opening of other relation in RI_FKey_keyequal_upd_pk
and RI_FKey_keyequal_upd_fk, as well as no-longer-needed calls of
ri_BuildQueryKeyFull. Aside from saving a few cycles, this avoids needless
deadlock risks when an update is not changing the columns that participate
in an RI constraint. Per a gripe from Alexey Nalbat.
Back-patch to 8.3. Earlier releases did have a need to open the other
relation due to the way in which they retrieved information about the RI
constraint, so this problem unfortunately can't easily be improved pre-8.3.
Tom Lane and Stephan Szabo
Bruce Momjian [Mon, 18 Feb 2008 21:46:22 +0000 (21:46 +0000)]
autoconf 2.61's AC_FUNC_FSEEKO reports success/failure differently, so
reorganize code for NetBSD/BSDi port/fseeko.c usage, and make code more
modular.
Peter Eisentraut [Mon, 18 Feb 2008 16:04:32 +0000 (16:04 +0000)]
Observe errors in makefile
Peter Eisentraut [Mon, 18 Feb 2008 14:51:48 +0000 (14:51 +0000)]
Added --htmldir option to pg_config, equivalent to the new configure option.
Michael Meskes [Sun, 17 Feb 2008 18:14:29 +0000 (18:14 +0000)]
- Removed duplicate include of ecpgtype.h which meant I had to adapt all expected results.
- Changed INFORMIX mode symbol definition yet again because the old way didn't work on NetBSD. Hopefully this one does.
Peter Eisentraut [Sun, 17 Feb 2008 16:36:43 +0000 (16:36 +0000)]
Upgrade to Autoconf 2.61:
- Change configure.in to use Autoconf 2.61 and update generated files.
- Update build system and documentation to support now directory variables
offered by Autoconf 2.61.
- Replace usages of PGAC_CHECK_ALIGNOF by AC_CHECK_ALIGNOF, now available
in Autoconf 2.61.
- Drop our patched version of AC_C_INLINE, as Autoconf now has the change.
Tom Lane [Sun, 17 Feb 2008 04:21:05 +0000 (04:21 +0000)]
Add back #include <time.h> in a couple of files that seem to need it
on Linux.
Tom Lane [Sun, 17 Feb 2008 02:09:32 +0000 (02:09 +0000)]
Replace time_t with pg_time_t (same values, but always int64) in on-disk
data structures and backend internal APIs. This solves problems we've seen
recently with inconsistent layout of pg_control between machines that have
32-bit time_t and those that have already migrated to 64-bit time_t. Also,
we can get out from under the problem that Windows' Unix-API emulation is not
consistent about the width of time_t.
There are a few remaining places where local time_t variables are used to hold
the current or recent result of time(NULL). I didn't bother changing these
since they do not affect any cross-module APIs and surely all platforms will
have 64-bit time_t before overflow becomes an actual risk. time_t should
be avoided for anything visible to extension modules, however.
Bruce Momjian [Sat, 16 Feb 2008 23:27:34 +0000 (23:27 +0000)]
Move item as done:
<
> * -Allow AS in "SELECT col AS label" to be optional in certain cases
>
< * Allow AS in "SELECT col AS label" to be optional (not wanted)
Tom Lane [Sat, 16 Feb 2008 21:51:04 +0000 (21:51 +0000)]
Update docs to reflect the fact that we can now deal with DST rules
outside the 32-bit-time_t range. Also, refer to Olson's tz database
as the 'zoneinfo' database, a name that upstream sometimes uses, not
'zic database' which they never use.
Tom Lane [Sat, 16 Feb 2008 21:16:04 +0000 (21:16 +0000)]
Update timezone code to track the upstream changes since 2003. In particular
this adds support for 64-bit tzdata files, which is needed to support DST
calculations beyond 2038. Add a regression test case to give some minimal
confidence that that really works.
Heikki Linnakangas
Bruce Momjian [Sat, 16 Feb 2008 21:14:08 +0000 (21:14 +0000)]
No need to use checkpoint_warning to log checkpoints --- we added
log_checkpoints in 8.3.
Bruce Momjian [Sat, 16 Feb 2008 21:11:32 +0000 (21:11 +0000)]
Add suggestion about how to set checkpoint_warning to log all
checkpoints.
Bruce Momjian [Sat, 16 Feb 2008 21:03:30 +0000 (21:03 +0000)]
Rename a libpq NOT_USED SSL function to
verify_peer_name_matches_certificate(), clarify some of the function's
variables and logic, and update a comment. This should make SSL
improvements easier in the future.
Tom Lane [Fri, 15 Feb 2008 22:17:06 +0000 (22:17 +0000)]
Allow AS to be omitted when specifying an output column name in SELECT
(or RETURNING), but only when the output name is not any SQL keyword.
This seems as close as we can get to the standard's syntax without a
great deal of thrashing. Original patch by Hiroshi Saito, amended by me.
Tom Lane [Fri, 15 Feb 2008 17:19:46 +0000 (17:19 +0000)]
Remove ancient restriction that LIMIT/OFFSET can't contain a sub-select.
This was probably protecting some implementation limitation when it was
put in, but as far as I can tell the planner and executor have no such
assumption anymore; the case seems to work fine. Per a gripe from
Grzegorz Jaskiewicz.
Michael Meskes [Fri, 15 Feb 2008 11:20:21 +0000 (11:20 +0000)]
Changed the way symbols are defined in C in INFORMIX mode.
Tom Lane [Thu, 14 Feb 2008 17:33:37 +0000 (17:33 +0000)]
Sync our regex code with upstream changes since last time we did this, which
was Tcl 8.4.8. The main changes are to remove the never-fully-implemented
code for multi-character collating elements, and to const-ify some stuff a
bit more fully. In combination with the recent security patch, this commit
brings us into line with Tcl 8.5.0.
Note that I didn't make any effort to duplicate a lot of cosmetic changes
that they made to bring their copy into line with their own style
guidelines, such as adding braces around single-line IF bodies. Most of
those we either had done already (such as ANSI-fication of function headers)
or there is no point because pgindent would undo the change anyway.
Michael Meskes [Thu, 14 Feb 2008 14:54:48 +0000 (14:54 +0000)]
- EXECUTE can return NOT FOUND so it should be checked here too.
- Changed regression test accordingly.
Michael Meskes [Thu, 14 Feb 2008 12:27:26 +0000 (12:27 +0000)]
Sorry, accidently committed a patch I'm working on. Reverting it.
The only correct change was:
- Added SQLSTATE macro closing bug #3961.
Michael Meskes [Thu, 14 Feb 2008 12:22:36 +0000 (12:22 +0000)]
*** empty log message ***
Bruce Momjian [Wed, 13 Feb 2008 22:46:55 +0000 (22:46 +0000)]
Correct XML markup typo, <book> -> </book>
XMLPARSE (DOCUMENT '<?xml
version="1.0"?><book><title>Manual</title><chapter>...</chapter></book>')
Backpatch to 8.3.X.
Bruce Momjian [Wed, 13 Feb 2008 22:44:06 +0000 (22:44 +0000)]
Add section to Migration talking about typical areas that change between
major releases.
Alvaro Herrera [Wed, 13 Feb 2008 21:09:24 +0000 (21:09 +0000)]
Update minor version bumping policy.
Bruce Momjian [Wed, 13 Feb 2008 18:30:21 +0000 (18:30 +0000)]
As sub-bullet decoration.
Bruce Momjian [Wed, 13 Feb 2008 18:29:08 +0000 (18:29 +0000)]
Update wording for minor library bumping.
Bruce Momjian [Wed, 13 Feb 2008 18:14:46 +0000 (18:14 +0000)]
Bump minor library version numbers for 8.4.
Bruce Momjian [Wed, 13 Feb 2008 18:10:23 +0000 (18:10 +0000)]
No longer necessary:
o update ecpg regression expected files for new library number
Tom Lane [Wed, 13 Feb 2008 03:40:38 +0000 (03:40 +0000)]
Stamp HEAD as 8.4devel.
Tom Lane [Tue, 12 Feb 2008 04:09:44 +0000 (04:09 +0000)]
Fix SPI_cursor_open() and SPI_is_cursor_plan() to push the SPI stack before
doing anything interesting, such as calling RevalidateCachedPlan(). The
necessity of this is demonstrated by an example from Willem Buitendyk:
during a replan, the planner might try to evaluate SPI-using functions,
and so we'd better be in a clean SPI context.
A small downside of this fix is that these two functions will now fail
outright if called when not inside a SPI-using procedure (ie, a
SPI_connect/SPI_finish pair). The documentation never promised or suggested
that that would work, though; and they are normally used in concert with
other functions, mainly SPI_prepare, that always have failed in such a case.
So the odds of breaking something seem pretty low.
In passing, make SPI_is_cursor_plan's error handling convention clearer,
and fix documentation's erroneous claim that SPI_cursor_open would
return NULL on error.
Before 8.3 these functions could not invoke replanning, so there is probably
no need for back-patching.
Magnus Hagander [Mon, 11 Feb 2008 19:55:11 +0000 (19:55 +0000)]
Update timezone mapping for Windows with new timezones added
in windows servicepacks.
Fix timezone mapping for "Mexico 2"
Tom Lane [Mon, 11 Feb 2008 19:14:30 +0000 (19:14 +0000)]
Repair VACUUM FULL bug introduced by HOT patch: the original way of
calculating a page's initial free space was fine, and should not have been
"improved" by letting PageGetHeapFreeSpace do it. VACUUM FULL is going to
reclaim LP_DEAD line pointers later, so there is no need for a guard
against the page being too full of line pointers, and having one risks
rejecting pages that are perfectly good move destinations.
This also exposed a second bug, which is that the empty_end_pages logic
assumed that any page with no live tuples would get entered into the
fraged_pages list automatically (by virtue of having more free space than
the threshold in the do_frag calculation). This assumption certainly
seems risky when a low fillfactor has been chosen, and even without
tunable fillfactor I think it could conceivably fail on a page with many
unused line pointers. So fix the code to force do_frag true when notup
is true, and patch this part of the fix all the way back.
Per report from Tomas Szepe.
Tom Lane [Sun, 10 Feb 2008 20:39:08 +0000 (20:39 +0000)]
Fix PageGetExactFreeSpace() so that it actually behaves sensibly
if pd_lower > pd_upper, rather than merely claiming to. This would
only matter if the page header were corrupt, which shouldn't occur,
but ...
Tom Lane [Fri, 8 Feb 2008 18:18:05 +0000 (18:18 +0000)]
Some small editorialization on the protocol documentation for GSSAPI/SSPI
authentication.
Tom Lane [Fri, 8 Feb 2008 17:58:46 +0000 (17:58 +0000)]
Since GSSAPI and SSPI authentication don't work in protocol version 2,
issue a helpful error message instead of sending unparsable garbage.
(It is clearly a design error that this doesn't work, but fixing it
is not worth the trouble at this point.) Per discussion.
Tom Lane [Thu, 7 Feb 2008 22:58:35 +0000 (22:58 +0000)]
Avoid misbehavior in foreign key checks when casting to a datatype for which
the parser supplies a default typmod that can result in data loss (ie,
truncation). Currently that appears to be only CHARACTER and BIT.
We can avoid the problem by specifying the type's internal name instead
of using SQL-spec syntax. Since the queries generated here are only used
internally, there's no need to worry about portability. This problem is
new in 8.3; before we just let the parser do whatever it wanted to resolve
the operator, but 8.3 is trying to be sure that the semantics of FK checks
are consistent. Per report from Harald Fuchs.
Bruce Momjian [Thu, 7 Feb 2008 22:28:54 +0000 (22:28 +0000)]
Add "automatically" to HOT release note description.
Tom Lane [Thu, 7 Feb 2008 21:07:55 +0000 (21:07 +0000)]
Some variants of ALTER OWNER tried to make the "object" field of the
statement be a list of bare C strings, rather than String nodes, which is
what they need to be for copyfuncs/equalfuncs to work. Fortunately these
node types never go out to disk (if they did, we'd likely have noticed the
problem sooner), so we can just fix it without creating a need for initdb.
This bug has been there since 8.0, but 8.3 exposes it in a more common
code path (Parse messages) than prior releases did. Per bug #3940 from
Vladimir Kokovic.
Tom Lane [Thu, 7 Feb 2008 20:19:47 +0000 (20:19 +0000)]
Add missing copyfuncs/equalfuncs support for AlterTSDictionaryStmt and
AlterTSConfigurationStmt. All utility statement node types are expected
to be supported here, though they do not have to have outfuncs/readfuncs
support. Found by running regression tests with COPY_PARSE_PLAN_TREES
enabled.
Magnus Hagander [Thu, 7 Feb 2008 17:58:16 +0000 (17:58 +0000)]
Fix msvc install for cases where msgfmt (from gettext) is in a directory
that contains spaces.
Per complaint from Gevik Babakhani, like the last one.
Tom Lane [Thu, 7 Feb 2008 17:53:53 +0000 (17:53 +0000)]
Fix silly mistake in expand_indexqual_rowcompare --- in converting a forboth()
into an iteration over three parallel lists, I had accidentally put the lnext
steps outside the loop. Sigh. Per bug #3938.
Tom Lane [Thu, 7 Feb 2008 17:09:51 +0000 (17:09 +0000)]
Fix CREATE TABLE ... LIKE ... INCLUDING INDEXES to not cause unwanted
tablespace permissions failures when copying an index that is in the
database's default tablespace. A side-effect of the change is that explicitly
specifying the default tablespace no longer triggers a permissions check;
this is not how it was done in pre-8.3 releases but is argued to be more
consistent. Per bug #3921 from Andrew Gilligan. (Note: I argued in the
subsequent discussion that maybe LIKE shouldn't copy index tablespaces
at all, but since no one indicated agreement with that idea, I've refrained
from doing it.)
Magnus Hagander [Thu, 7 Feb 2008 13:49:00 +0000 (13:49 +0000)]
Fix msvc install script to properly install NLS files when built with
gettext.
Michael Meskes [Thu, 7 Feb 2008 11:09:13 +0000 (11:09 +0000)]
- Fixed segfault in ecpg when using an array element.
- Free all memory in auto-prepare mode.
Magnus Hagander [Wed, 6 Feb 2008 15:13:25 +0000 (15:13 +0000)]
Fix very broken clean.bat for msvc install. The way we used subroutines
in .bat simply did not work, and it called them in the wrong order,
some several times, and some not at all. So this unrolls all subroutine
calls.
This should fix the issues with clean deleting the wrong files reported
by Dave Page.
While at it, add the "clean dist" option to act like "make distclean",
and no longer remove the flex/bison output files by default. This shuold
fix the problem reported by Pavel Golub in bug #3909.
Magnus Hagander [Tue, 5 Feb 2008 14:17:23 +0000 (14:17 +0000)]
Handle libraries in directories with spaces in them.
Gevik Babakhani
Tom Lane [Sun, 3 Feb 2008 16:24:08 +0000 (16:24 +0000)]
Fix mistaken duplicate reference to max_fsm_pages, per bug #3926.
Also make links clickable.
Tom Lane [Sat, 2 Feb 2008 23:30:23 +0000 (23:30 +0000)]
Minor wordsmithing in release notes' description of asynchronous commit.
Tom Lane [Sat, 2 Feb 2008 23:29:12 +0000 (23:29 +0000)]
Move example of turning off synchronous_commit to a more logical place,
to wit in the description of that variable rather than some other one.
Tom Lane [Sat, 2 Feb 2008 22:26:17 +0000 (22:26 +0000)]
Fix WaitOnLock() to ensure that the process's "waiting" flag is reset after
erroring out of a wait. We can use a PG_TRY block for this, but add a comment
explaining why it'd be a bad idea to use it for any other state cleanup.
Back-patch to 8.2. Prior releases had the same issue, but only with respect
to the process title, which is likely to get reset almost immediately anyway
after the transaction aborts, so it seems not worth changing them. In 8.2
and HEAD, the pg_stat_activity "waiting" flag could remain set incorrectly
for a long time.
Per report from Gurjeet Singh.
Marc G. Fournier [Fri, 1 Feb 2008 04:16:29 +0000 (04:16 +0000)]
configure tag'd 8.3.0 and built witih autoconf 2.59
Bruce Momjian [Fri, 1 Feb 2008 02:59:02 +0000 (02:59 +0000)]
Stamp 8.3 in CVS. _No_ update of configure/configure.in.
Bruce Momjian [Fri, 1 Feb 2008 02:55:41 +0000 (02:55 +0000)]
Update FAQ for most recent release as 8.3.
Bruce Momjian [Fri, 1 Feb 2008 02:41:10 +0000 (02:41 +0000)]
Update item:
< * Improve deadlock detection when deleting items from shared buffers
> * Improve deadlock detection when a page cleaning lock conflicts
> with a shared buffer that is pinned
Bruce Momjian [Thu, 31 Jan 2008 23:31:33 +0000 (23:31 +0000)]
Fix spelling typo in comment.
Bruce Momjian [Thu, 31 Jan 2008 23:30:31 +0000 (23:30 +0000)]
Add comment about possible URL changes for www7.hp.com:
<!-- If this URL chnages replace it with a URL to www.archive.org. -->
Bruce Momjian [Thu, 31 Jan 2008 23:03:16 +0000 (23:03 +0000)]
Update spoofing /tmp symlink instructions to be more specific about the
name of the needed symlink file.
Tom Lane [Thu, 31 Jan 2008 21:31:33 +0000 (21:31 +0000)]
Mention synchronize_seqscans GUC variable in release notes.
Update expected release date.