E.50.2. Changes

In the previous minor releases we added a patch to
fsync everything in the
data directory after a crash. Unfortunately its response
to any error condition was to fail, thereby preventing
the server from starting up, even when the problem was
quite harmless. An example is that an unwritable file in
the data directory would prevent restart on some
platforms; but it is common to make SSL certificate files
unwritable by the server. Revise this behavior so that
permissions failures are ignored altogether, and other
types of failures are logged but do not prevent
continuing.

Also apply the same rules in initdb --sync-only. This case is less
critical but it should act similarly.

Fix pg_get_functiondef()
to show functions' LEAKPROOF
property, if set (Jeevan Chalke)

Fix pushJsonbValue() to
unpack jbvBinary objects
(Andrew Dunstan)

This change does not affect any behavior in the core
code as of 9.4, but it avoids a corner case for possible
third-party callers.