Remove unnecessary pg_verifymbstr() calls from tsvector/query in functions.

The input should've been validated well before it hits the input function.
Doing so again is a waste of cycles.
Force pgwin32_recv into nonblock mode when called from pgstat.c.

This should get rid of the usage of pgwin32_waitforsinglesocket entirely,
and perhaps thereby remove the race condition that's evidently still
present on some versions of Windows.  The previous arrangement was a bit
unsafe anyway, since waiting at the recv() would not allow pgstat to notice
postmaster death.
For testing purposes, reinsert a timeout in pgstat.c's wait call.

Test results from buildfarm members mastodon/narwhal (Windows Server 2003)
make it look like that platform just plain loses FD_READ events
occasionally, and the only reason our previous coding seemed to work was
that it timed out every couple of seconds and retried the whole operation.
Try to verify this by reinserting a finite timeout into the pgstat loop.
This isn't meant to be a permanent patch either, just to confirm or
disprove a theory.
Remove unused AC_DEFINE symbols

ENABLE_DTRACE            unused as of a7b7b07af340c73adee9959edf260695591a9496
HAVE_ERR_SET_MARK        unused as of 4ed4b6c54e5fab24ab2624d80e26f7546edc88ad
HAVE_FCVT                unused as of 4553e1d80f824291932cfde30aa24a76dd8f1941
HAVE_STRUCT_SOCKADDR_UN  unused as of b4cea00a1fc9d2270bfe9aeeee44915378d5f733
HAVE_SYSCONF             unused as of f83356c7f574bc69969f29dc7b430b286a0cd9f4
TM_IN_SYS_TIME           never used, obsolescent per Autoconf documentation
Assert that WaitLatchOrSocket callers cannot wait only for writability.

Since we have chosen to report socket EOF and error conditions via the
WL_SOCKET_READABLE flag bit, it's unsafe to wait only for
WL_SOCKET_WRITEABLE; the caller would never be notified of the socket
condition, and in some of these implementations WaitLatchOrSocket would
busy-wait until something else happens.  Add this restriction to the API
specification, and add Asserts to check that callers don't try to do that.

At some point we might want to consider adjusting the API to relax this
restriction, but until we have an actual use case for waiting on a
write-only socket, it seems premature to design a solution.
Put back AC_REQUIRE([AC_STRUCT_TM]).

The BSD-ish members of the buildfarm all seem to think removing this
was a bad idea.  It looks to me like it resulted in omitting the system
header inclusion necessary to detect the fields of struct tm correctly.
Revert "Add some temporary instrumentation to pgstat.c."

This reverts commit 7d88bb73f755f7fb5d847ef2319c21076054fb0e.
That instrumentation has served its purpose.
In pgstat.c, use a timeout in WaitLatchOrSocket only on Windows.

We have no need for a timeout here really, but some broken products from
Redmond seem to lose FD_READ events occasionally, and waking up and
retrying the recv() is the only known way to work around that.  Perhaps
somebody will be motivated to figure out a better answer here; but not I.
Fix bug in to_tsquery().

We were using memcpy() to copy to a possibly overlapping memory region,
which is a no-no. Use memmove() instead.
Remove stray nbsp character
Make xrefs to tables instead of assuming they appear below
Remove whitespace from end of lines

pgindent and perltidy should clean up the rest.
Fix a whitespace issue with the man pages

See 6ef24487967692604b07a4a54e71821a60fb729a for an explanation.  This
is the same for the new man pages.
Fix bug in freespace calculation in heap_multi_insert().

If the amount of freespace on page was less than the amount reserved by
fillfactor, the calculation would underflow.

This fixes bug #6643 reported by Tomonari Katsumata.
Improve error message for ALTER COLUMN TYPE coercion failure.

Per recent discussion, the error message for this was actually a trifle
inaccurate, since it said "cannot be cast" which might be incorrect.
Adjust that wording, and add a HINT suggesting that a USING clause might
be needed.
Change COLLATION keyword category

It was changed from unreserved to reserved as part of the COLLATION
FOR syntax, but it turns out that type_func_name_keyword is
sufficient.
Update SQL features/conformance information to SQL:2011
Update key words table for 9.2
file_fdw: Improve error message

The hint looked a bit confusing when there were no valid options to
hint about.
Fix bug in gistRelocateBuildBuffersOnSplit().

When we create a temporary copy of the old node buffer, in stack, we mustn't
leak that into any of the long-lived data structures. Before this patch,
when we called gistPopItupFromNodeBuffer(), it got added to the array of
"loaded buffers". After gistRelocateBuildBuffersOnSplit() exits, the
pointer added to the loaded buffers array points to garbage. Often that goes
unnotied, because when we go through the array of loaded buffers to unload
them, buffers with a NULL pageBuffer are ignored, which can often happen by
accident even if the pointer points to garbage.

This patch fixes that by marking the temporary copy in stack explicitly as
temporary, and refrain from adding buffers marked as temporary to the array
of loaded buffers.

While we're at it, initialize nodeBuffer->pageBlocknum to InvalidBlockNumber
and improve comments a bit. This isn't strictly necessary, but makes
debugging easier.