Skip to content

Commit 5f8d8d4

Browse files
committed
Merge remote-tracking branch 'pg/master' into fast2pc
2 parents 591841e + 4c46f83 commit 5f8d8d4

File tree

345 files changed

+18799
-5214
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

345 files changed

+18799
-5214
lines changed

config/c-library.m4

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -316,4 +316,34 @@ fi
316316
if test "$pgac_cv_type_locale_t" = 'yes (in xlocale.h)'; then
317317
AC_DEFINE(LOCALE_T_IN_XLOCALE, 1,
318318
[Define to 1 if `locale_t' requires <xlocale.h>.])
319-
fi])])# PGAC_HEADER_XLOCALE
319+
fi])# PGAC_TYPE_LOCALE_T
320+
321+
322+
# PGAC_FUNC_WCSTOMBS_L
323+
# --------------------
324+
# Try to find a declaration for wcstombs_l(). It might be in stdlib.h
325+
# (following the POSIX requirement for wcstombs()), or in locale.h, or in
326+
# xlocale.h. If it's in the latter, define WCSTOMBS_L_IN_XLOCALE.
327+
#
328+
AC_DEFUN([PGAC_FUNC_WCSTOMBS_L],
329+
[AC_CACHE_CHECK([for wcstombs_l declaration], pgac_cv_func_wcstombs_l,
330+
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
331+
[#include <stdlib.h>
332+
#include <locale.h>],
333+
[#ifndef wcstombs_l
334+
(void) wcstombs_l;
335+
#endif])],
336+
[pgac_cv_func_wcstombs_l='yes'],
337+
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
338+
[#include <stdlib.h>
339+
#include <locale.h>
340+
#include <xlocale.h>],
341+
[#ifndef wcstombs_l
342+
(void) wcstombs_l;
343+
#endif])],
344+
[pgac_cv_func_wcstombs_l='yes (in xlocale.h)'],
345+
[pgac_cv_func_wcstombs_l='no'])])])
346+
if test "$pgac_cv_func_wcstombs_l" = 'yes (in xlocale.h)'; then
347+
AC_DEFINE(WCSTOMBS_L_IN_XLOCALE, 1,
348+
[Define to 1 if `wcstombs_l' requires <xlocale.h>.])
349+
fi])# PGAC_FUNC_WCSTOMBS_L

configure

Lines changed: 55 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -10193,7 +10193,7 @@ fi
1019310193
## Header files
1019410194
##
1019510195

10196-
for ac_header in atomic.h crypt.h dld.h fp_class.h getopt.h ieeefp.h ifaddrs.h langinfo.h mbarrier.h poll.h pwd.h sys/ioctl.h sys/ipc.h sys/poll.h sys/pstat.h sys/resource.h sys/select.h sys/sem.h sys/shm.h sys/socket.h sys/sockio.h sys/tas.h sys/time.h sys/un.h termios.h ucred.h utime.h wchar.h wctype.h
10196+
for ac_header in atomic.h crypt.h dld.h fp_class.h getopt.h ieeefp.h ifaddrs.h langinfo.h mbarrier.h poll.h pwd.h sys/epoll.h sys/ioctl.h sys/ipc.h sys/poll.h sys/pstat.h sys/resource.h sys/select.h sys/sem.h sys/shm.h sys/socket.h sys/sockio.h sys/tas.h sys/time.h sys/un.h termios.h ucred.h utime.h wchar.h wctype.h
1019710197
do :
1019810198
as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
1019910199
ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
@@ -12364,6 +12364,59 @@ $as_echo "#define GETTIMEOFDAY_1ARG 1" >>confdefs.h
1236412364

1236512365
fi
1236612366

12367+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for wcstombs_l declaration" >&5
12368+
$as_echo_n "checking for wcstombs_l declaration... " >&6; }
12369+
if ${pgac_cv_func_wcstombs_l+:} false; then :
12370+
$as_echo_n "(cached) " >&6
12371+
else
12372+
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12373+
/* end confdefs.h. */
12374+
#include <stdlib.h>
12375+
#include <locale.h>
12376+
int
12377+
main ()
12378+
{
12379+
#ifndef wcstombs_l
12380+
(void) wcstombs_l;
12381+
#endif
12382+
;
12383+
return 0;
12384+
}
12385+
_ACEOF
12386+
if ac_fn_c_try_compile "$LINENO"; then :
12387+
pgac_cv_func_wcstombs_l='yes'
12388+
else
12389+
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12390+
/* end confdefs.h. */
12391+
#include <stdlib.h>
12392+
#include <locale.h>
12393+
#include <xlocale.h>
12394+
int
12395+
main ()
12396+
{
12397+
#ifndef wcstombs_l
12398+
(void) wcstombs_l;
12399+
#endif
12400+
;
12401+
return 0;
12402+
}
12403+
_ACEOF
12404+
if ac_fn_c_try_compile "$LINENO"; then :
12405+
pgac_cv_func_wcstombs_l='yes (in xlocale.h)'
12406+
else
12407+
pgac_cv_func_wcstombs_l='no'
12408+
fi
12409+
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
12410+
fi
12411+
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
12412+
fi
12413+
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $pgac_cv_func_wcstombs_l" >&5
12414+
$as_echo "$pgac_cv_func_wcstombs_l" >&6; }
12415+
if test "$pgac_cv_func_wcstombs_l" = 'yes (in xlocale.h)'; then
12416+
12417+
$as_echo "#define WCSTOMBS_L_IN_XLOCALE 1" >>confdefs.h
12418+
12419+
fi
1236712420

1236812421
# Some versions of libedit contain strlcpy(), setproctitle(), and other
1236912422
# symbols that that library has no business exposing to the world. Pending
@@ -14733,13 +14786,6 @@ $as_echo "#define USE_WIN32_SHARED_MEMORY 1" >>confdefs.h
1473314786
SHMEM_IMPLEMENTATION="src/backend/port/win32_shmem.c"
1473414787
fi
1473514788

14736-
# Select latch implementation type.
14737-
if test "$PORTNAME" != "win32"; then
14738-
LATCH_IMPLEMENTATION="src/backend/port/unix_latch.c"
14739-
else
14740-
LATCH_IMPLEMENTATION="src/backend/port/win32_latch.c"
14741-
fi
14742-
1474314789
# If not set in template file, set bytes to use libc memset()
1474414790
if test x"$MEMSET_LOOP_LIMIT" = x"" ; then
1474514791
MEMSET_LOOP_LIMIT=1024
@@ -15815,7 +15861,7 @@ fi
1581515861
ac_config_files="$ac_config_files GNUmakefile src/Makefile.global"
1581615862

1581715863

15818-
ac_config_links="$ac_config_links src/backend/port/dynloader.c:src/backend/port/dynloader/${template}.c src/backend/port/pg_sema.c:${SEMA_IMPLEMENTATION} src/backend/port/pg_shmem.c:${SHMEM_IMPLEMENTATION} src/backend/port/pg_latch.c:${LATCH_IMPLEMENTATION} src/include/dynloader.h:src/backend/port/dynloader/${template}.h src/include/pg_config_os.h:src/include/port/${template}.h src/Makefile.port:src/makefiles/Makefile.${template}"
15864+
ac_config_links="$ac_config_links src/backend/port/dynloader.c:src/backend/port/dynloader/${template}.c src/backend/port/pg_sema.c:${SEMA_IMPLEMENTATION} src/backend/port/pg_shmem.c:${SHMEM_IMPLEMENTATION} src/include/dynloader.h:src/backend/port/dynloader/${template}.h src/include/pg_config_os.h:src/include/port/${template}.h src/Makefile.port:src/makefiles/Makefile.${template}"
1581915865

1582015866

1582115867
if test "$PORTNAME" = "win32"; then
@@ -16539,7 +16585,6 @@ do
1653916585
"src/backend/port/dynloader.c") CONFIG_LINKS="$CONFIG_LINKS src/backend/port/dynloader.c:src/backend/port/dynloader/${template}.c" ;;
1654016586
"src/backend/port/pg_sema.c") CONFIG_LINKS="$CONFIG_LINKS src/backend/port/pg_sema.c:${SEMA_IMPLEMENTATION}" ;;
1654116587
"src/backend/port/pg_shmem.c") CONFIG_LINKS="$CONFIG_LINKS src/backend/port/pg_shmem.c:${SHMEM_IMPLEMENTATION}" ;;
16542-
"src/backend/port/pg_latch.c") CONFIG_LINKS="$CONFIG_LINKS src/backend/port/pg_latch.c:${LATCH_IMPLEMENTATION}" ;;
1654316588
"src/include/dynloader.h") CONFIG_LINKS="$CONFIG_LINKS src/include/dynloader.h:src/backend/port/dynloader/${template}.h" ;;
1654416589
"src/include/pg_config_os.h") CONFIG_LINKS="$CONFIG_LINKS src/include/pg_config_os.h:src/include/port/${template}.h" ;;
1654516590
"src/Makefile.port") CONFIG_LINKS="$CONFIG_LINKS src/Makefile.port:src/makefiles/Makefile.${template}" ;;

configure.in

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1183,7 +1183,7 @@ AC_SUBST(UUID_LIBS)
11831183
##
11841184

11851185
dnl sys/socket.h is required by AC_FUNC_ACCEPT_ARGTYPES
1186-
AC_CHECK_HEADERS([atomic.h crypt.h dld.h fp_class.h getopt.h ieeefp.h ifaddrs.h langinfo.h mbarrier.h poll.h pwd.h sys/ioctl.h sys/ipc.h sys/poll.h sys/pstat.h sys/resource.h sys/select.h sys/sem.h sys/shm.h sys/socket.h sys/sockio.h sys/tas.h sys/time.h sys/un.h termios.h ucred.h utime.h wchar.h wctype.h])
1186+
AC_CHECK_HEADERS([atomic.h crypt.h dld.h fp_class.h getopt.h ieeefp.h ifaddrs.h langinfo.h mbarrier.h poll.h pwd.h sys/epoll.h sys/ioctl.h sys/ipc.h sys/poll.h sys/pstat.h sys/resource.h sys/select.h sys/sem.h sys/shm.h sys/socket.h sys/sockio.h sys/tas.h sys/time.h sys/un.h termios.h ucred.h utime.h wchar.h wctype.h])
11871187

11881188
# On BSD, test for net/if.h will fail unless sys/socket.h
11891189
# is included first.
@@ -1423,6 +1423,7 @@ fi
14231423
PGAC_VAR_INT_TIMEZONE
14241424
AC_FUNC_ACCEPT_ARGTYPES
14251425
PGAC_FUNC_GETTIMEOFDAY_1ARG
1426+
PGAC_FUNC_WCSTOMBS_L
14261427

14271428
# Some versions of libedit contain strlcpy(), setproctitle(), and other
14281429
# symbols that that library has no business exposing to the world. Pending
@@ -1975,13 +1976,6 @@ else
19751976
SHMEM_IMPLEMENTATION="src/backend/port/win32_shmem.c"
19761977
fi
19771978

1978-
# Select latch implementation type.
1979-
if test "$PORTNAME" != "win32"; then
1980-
LATCH_IMPLEMENTATION="src/backend/port/unix_latch.c"
1981-
else
1982-
LATCH_IMPLEMENTATION="src/backend/port/win32_latch.c"
1983-
fi
1984-
19851979
# If not set in template file, set bytes to use libc memset()
19861980
if test x"$MEMSET_LOOP_LIMIT" = x"" ; then
19871981
MEMSET_LOOP_LIMIT=1024
@@ -2177,7 +2171,6 @@ AC_CONFIG_LINKS([
21772171
src/backend/port/dynloader.c:src/backend/port/dynloader/${template}.c
21782172
src/backend/port/pg_sema.c:${SEMA_IMPLEMENTATION}
21792173
src/backend/port/pg_shmem.c:${SHMEM_IMPLEMENTATION}
2180-
src/backend/port/pg_latch.c:${LATCH_IMPLEMENTATION}
21812174
src/include/dynloader.h:src/backend/port/dynloader/${template}.h
21822175
src/include/pg_config_os.h:src/include/port/${template}.h
21832176
src/Makefile.port:src/makefiles/Makefile.${template}

contrib/pageinspect/brinfuncs.c

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,23 @@ brin_page_type(PG_FUNCTION_ARGS)
4646
{
4747
bytea *raw_page = PG_GETARG_BYTEA_P(0);
4848
Page page = VARDATA(raw_page);
49+
int raw_page_size;
4950
char *type;
5051

52+
if (!superuser())
53+
ereport(ERROR,
54+
(errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
55+
(errmsg("must be superuser to use raw page functions"))));
56+
57+
raw_page_size = VARSIZE(raw_page) - VARHDRSZ;
58+
59+
if (raw_page_size != BLCKSZ)
60+
ereport(ERROR,
61+
(errcode(ERRCODE_INVALID_PARAMETER_VALUE),
62+
errmsg("input page too small"),
63+
errdetail("Expected size %d, got %d",
64+
BLCKSZ, raw_page_size)));
65+
5166
switch (BrinPageType(page))
5267
{
5368
case BRIN_PAGETYPE_META:
@@ -79,11 +94,12 @@ verify_brin_page(bytea *raw_page, uint16 type, const char *strtype)
7994

8095
raw_page_size = VARSIZE(raw_page) - VARHDRSZ;
8196

82-
if (raw_page_size < SizeOfPageHeaderData)
97+
if (raw_page_size != BLCKSZ)
8398
ereport(ERROR,
8499
(errcode(ERRCODE_INVALID_PARAMETER_VALUE),
85100
errmsg("input page too small"),
86-
errdetail("Expected size %d, got %d", raw_page_size, BLCKSZ)));
101+
errdetail("Expected size %d, got %d",
102+
BLCKSZ, raw_page_size)));
87103

88104
page = VARDATA(raw_page);
89105

@@ -316,6 +332,11 @@ brin_metapage_info(PG_FUNCTION_ARGS)
316332
bool nulls[4];
317333
HeapTuple htup;
318334

335+
if (!superuser())
336+
ereport(ERROR,
337+
(errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
338+
(errmsg("must be superuser to use raw page functions"))));
339+
319340
page = verify_brin_page(raw_page, BRIN_PAGETYPE_META, "metapage");
320341

321342
/* Build a tuple descriptor for our result type */

contrib/pg_trgm/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ EXTENSION = pg_trgm
77
DATA = pg_trgm--1.2.sql pg_trgm--1.0--1.1.sql pg_trgm--1.1--1.2.sql pg_trgm--unpackaged--1.0.sql
88
PGFILEDESC = "pg_trgm - trigram matching"
99

10-
REGRESS = pg_trgm
10+
REGRESS = pg_trgm pg_word_trgm
1111

1212
ifdef USE_PGXS
1313
PG_CONFIG = pg_config

0 commit comments

Comments
 (0)