mirror of
https://github.com/postgres/postgres.git
synced 2025-07-27 12:41:57 +03:00
Extend yesterday's patch making BLCKSZ and RELSEG_SIZE configurable to also
let XLOG_BLCKSZ and XLOG_SEG_SIZE be set via configure. Per a proposal by Mark Wong, though I thought it better to call the switches after "wal" rather than "xlog".
This commit is contained in:
116
configure
vendored
116
configure
vendored
@ -1373,8 +1373,10 @@ Optional Packages:
|
||||
--with-libraries=DIRS look for additional libraries in DIRS
|
||||
--with-libs=DIRS alternative spelling of --with-libraries
|
||||
--with-pgport=PORTNUM set default port number [5432]
|
||||
--with-blocksize=BLOCKSIZE set block size in kB [8]
|
||||
--with-segsize=SEGSIZE set segment size in GB [1]
|
||||
--with-blocksize=BLOCKSIZE set table block size in kB [8]
|
||||
--with-segsize=SEGSIZE set table segment size in GB [1]
|
||||
--with-wal-blocksize=BLOCKSIZE set WAL block size in kB [8]
|
||||
--with-wal-segsize=SEGSIZE set WAL segment size in MB [16]
|
||||
--with-tcl build Tcl modules (PL/Tcl)
|
||||
--with-tclconfig=DIR tclConfig.sh is in DIR
|
||||
--with-perl build Perl modules (PL/Perl)
|
||||
@ -2603,7 +2605,7 @@ _ACEOF
|
||||
|
||||
|
||||
#
|
||||
# File segment size
|
||||
# Relation segment size
|
||||
#
|
||||
{ echo "$as_me:$LINENO: checking for segment size" >&5
|
||||
echo $ECHO_N "checking for segment size... $ECHO_C" >&6; }
|
||||
@ -2647,6 +2649,114 @@ cat >>confdefs.h <<_ACEOF
|
||||
_ACEOF
|
||||
|
||||
|
||||
#
|
||||
# WAL block size
|
||||
#
|
||||
{ echo "$as_me:$LINENO: checking for WAL block size" >&5
|
||||
echo $ECHO_N "checking for WAL block size... $ECHO_C" >&6; }
|
||||
|
||||
pgac_args="$pgac_args with_wal_blocksize"
|
||||
|
||||
|
||||
# Check whether --with-wal-blocksize was given.
|
||||
if test "${with_wal_blocksize+set}" = set; then
|
||||
withval=$with_wal_blocksize;
|
||||
case $withval in
|
||||
yes)
|
||||
{ { echo "$as_me:$LINENO: error: argument required for --with-wal-blocksize option" >&5
|
||||
echo "$as_me: error: argument required for --with-wal-blocksize option" >&2;}
|
||||
{ (exit 1); exit 1; }; }
|
||||
;;
|
||||
no)
|
||||
{ { echo "$as_me:$LINENO: error: argument required for --with-wal-blocksize option" >&5
|
||||
echo "$as_me: error: argument required for --with-wal-blocksize option" >&2;}
|
||||
{ (exit 1); exit 1; }; }
|
||||
;;
|
||||
*)
|
||||
wal_blocksize=$withval
|
||||
;;
|
||||
esac
|
||||
|
||||
else
|
||||
wal_blocksize=8
|
||||
fi
|
||||
|
||||
|
||||
case ${wal_blocksize} in
|
||||
1) XLOG_BLCKSZ=1024;;
|
||||
2) XLOG_BLCKSZ=2048;;
|
||||
4) XLOG_BLCKSZ=4096;;
|
||||
8) XLOG_BLCKSZ=8192;;
|
||||
16) XLOG_BLCKSZ=16384;;
|
||||
32) XLOG_BLCKSZ=32768;;
|
||||
64) XLOG_BLCKSZ=65536;;
|
||||
*) { { echo "$as_me:$LINENO: error: Invalid WAL block size. Allowed values are 1,2,4,8,16,32,64." >&5
|
||||
echo "$as_me: error: Invalid WAL block size. Allowed values are 1,2,4,8,16,32,64." >&2;}
|
||||
{ (exit 1); exit 1; }; }
|
||||
esac
|
||||
{ echo "$as_me:$LINENO: result: ${wal_blocksize}kB" >&5
|
||||
echo "${ECHO_T}${wal_blocksize}kB" >&6; }
|
||||
|
||||
|
||||
cat >>confdefs.h <<_ACEOF
|
||||
#define XLOG_BLCKSZ ${XLOG_BLCKSZ}
|
||||
_ACEOF
|
||||
|
||||
|
||||
#
|
||||
# WAL segment size
|
||||
#
|
||||
{ echo "$as_me:$LINENO: checking for WAL segment size" >&5
|
||||
echo $ECHO_N "checking for WAL segment size... $ECHO_C" >&6; }
|
||||
|
||||
pgac_args="$pgac_args with_wal_segsize"
|
||||
|
||||
|
||||
# Check whether --with-wal-segsize was given.
|
||||
if test "${with_wal_segsize+set}" = set; then
|
||||
withval=$with_wal_segsize;
|
||||
case $withval in
|
||||
yes)
|
||||
{ { echo "$as_me:$LINENO: error: argument required for --with-wal-segsize option" >&5
|
||||
echo "$as_me: error: argument required for --with-wal-segsize option" >&2;}
|
||||
{ (exit 1); exit 1; }; }
|
||||
;;
|
||||
no)
|
||||
{ { echo "$as_me:$LINENO: error: argument required for --with-wal-segsize option" >&5
|
||||
echo "$as_me: error: argument required for --with-wal-segsize option" >&2;}
|
||||
{ (exit 1); exit 1; }; }
|
||||
;;
|
||||
*)
|
||||
wal_segsize=$withval
|
||||
;;
|
||||
esac
|
||||
|
||||
else
|
||||
wal_segsize=16
|
||||
fi
|
||||
|
||||
|
||||
case ${wal_segsize} in
|
||||
1) ;;
|
||||
2) ;;
|
||||
4) ;;
|
||||
8) ;;
|
||||
16) ;;
|
||||
32) ;;
|
||||
64) ;;
|
||||
*) { { echo "$as_me:$LINENO: error: Invalid WAL segment size. Allowed values are 1,2,4,8,16,32,64." >&5
|
||||
echo "$as_me: error: Invalid WAL segment size. Allowed values are 1,2,4,8,16,32,64." >&2;}
|
||||
{ (exit 1); exit 1; }; }
|
||||
esac
|
||||
{ echo "$as_me:$LINENO: result: ${wal_segsize}MB" >&5
|
||||
echo "${ECHO_T}${wal_segsize}MB" >&6; }
|
||||
|
||||
|
||||
cat >>confdefs.h <<_ACEOF
|
||||
#define XLOG_SEG_SIZE (${wal_segsize} * 1024 * 1024)
|
||||
_ACEOF
|
||||
|
||||
|
||||
#
|
||||
# C compiler
|
||||
#
|
||||
|
Reference in New Issue
Block a user