mirror of
https://github.com/postgres/postgres.git
synced 2025-07-30 11:03:19 +03:00
De-support floating-point timestamps.
Per discussion, the time has come to do this. The handwriting has been on the wall at least since 9.0 that this would happen someday, whenever it got to be too much of a burden to support the float-timestamp option. The triggering factor now is the discovery that there are multiple bugs in the code that attempts to implement use of integer timestamps in the replication protocol even when the server is built for float timestamps. The internal float timestamps leak into the protocol fields in places. While we could fix the identified bugs, there's a very high risk of introducing more. Trying to build a wall that would positively prevent mixing integer and float timestamps is more complexity than we want to undertake to maintain a long-deprecated option. The fact that these bugs weren't found through testing also indicates a lack of interest in float timestamps. This commit disables configure's --disable-integer-datetimes switch (it'll still accept --enable-integer-datetimes, though), removes direct references to USE_INTEGER_DATETIMES, and removes discussion of float timestamps from the user documentation. A considerable amount of code is rendered dead by this, but removing that will occur as separate mop-up. Discussion: https://postgr.es/m/26788.1487455319@sss.pgh.pa.us
This commit is contained in:
12
configure.in
12
configure.in
@ -122,13 +122,13 @@ PGAC_ARG_REQ(with, libs, [DIRS], [alternative spelling of --with-libraries]
|
||||
|
||||
|
||||
#
|
||||
# 64-bit integer date/time storage: enabled by default.
|
||||
# 64-bit integer date/time storage is now the only option, but to avoid
|
||||
# unnecessary breakage of build scripts, continue to accept an explicit
|
||||
# "--enable-integer-datetimes" switch.
|
||||
#
|
||||
AC_MSG_CHECKING([whether to build with 64-bit integer date/time support])
|
||||
PGAC_ARG_BOOL(enable, integer-datetimes, yes, [disable 64-bit integer date/time support],
|
||||
[AC_DEFINE([USE_INTEGER_DATETIMES], 1,
|
||||
[Define to 1 if you want 64-bit integer timestamp and interval support. (--enable-integer-datetimes)])])
|
||||
AC_MSG_RESULT([$enable_integer_datetimes])
|
||||
PGAC_ARG_BOOL(enable, integer-datetimes, yes, [obsolete option, no longer supported],
|
||||
[],
|
||||
[AC_MSG_ERROR([--disable-integer-datetimes is no longer supported])])
|
||||
|
||||
|
||||
#
|
||||
|
Reference in New Issue
Block a user