In type_sanity, check I/O functions of built-in types are not volatile.

We have a project policy that I/O functions must not be volatile, as per
commit aab353a60b95aadc00f81da0c6d99bde696c4b75, but we weren't doing
anything to enforce that.  In most usage the marking of the function
doesn't matter as long as its behavior is sane --- but I/O casts can
expose the marking as user-visible behavior, as per today's complaint
from Joe Van Dyk about contrib/ltree.

This test as such will only protect us against future errors in built-in
data types.  To catch the same error in contrib or third-party types,
perhaps we should make CREATE TYPE complain?  But that's a separate
issue from enforcing the policy for built-in types.
Update README.tuplock

This file was documenting an older version of patch 0ac5ad5134; update
it to match what was really committed

Author: Florian Pflug
psql: complain if pg_dump custom-format is detected

Apparently, this is a very common mistake for users to make; it is
better to have it fail reasonably rather than throw potentially a large
number of errors.  Since we have a magic string at the start of the
file, we can detect the case easily and there's no other possible useful
behavior anyway.

Author: Craig Ringer
Fix off-by-one error in 2781b4bea7db357be59f9a5fd73ca1eb12ff5a79.

Spotted by Tom Lane.
Oops, the commit accept pg_controldata -D datadir missed code changes.

I updated the docs and usage blurp, but forgot to commit the code changes
required.

Spotted by Michael Paquier.
Complain if too many options are passed to pg_controldata or pg_resetxlog.
Forgot #include "pg_getopt.h", now that pg_controldata uses getopt.

Needed at least on Windows.
Work around Windows locale name with non-ASCII character.

Windows has one a locale whose name contains a non-ASCII character:
"Norwegian (Bokmål)" (that's an 'a' with a ring on top). That causes
trouble; when passing it setlocale(), it's not clear what encoding the
argument should be in. Another problem is that the locale name is stored in
pg_database catalog table, and the encoding used there depends on what
server encoding happens to be in use when the database is created. For
example, if you issue the CREATE DATABASE when connected to a UTF-8
database, the locale name is stored in pg_database in UTF-8. As long as all
locale names are pure ASCII, that's not a problem.

To work around that, map the troublesome locale name to a pure-ASCII alias
of the same locale, "norwegian-bokmal".

Now, this doesn't change the existing values that are already in
pg_database and in postgresql.conf. Old clusters will need to be fixed
manually. Instructions for that need to be put in the release notes.

This fixes bug #11431 reported by Alon Siman-Tov. Backpatch to 9.2;
backpatching further would require more work than seems worth it.
Add native compiler and memory barriers for solaris studio.

Discussion: 20140925133459.GB9633@alap3.anarazel.de
Author: Oskari Saarenmaa