ClickHouse/programs
Vasily Nemkov 2d03d330bc Extended range of DateTime64 to years 1925 - 2238
The Year 1925 is a starting point because most of the timezones
switched to saner (mostly 15-minutes based) offsets somewhere
during 1924 or before. And that significantly simplifies implementation.

2238 is to simplify arithmetics for sanitizing LUT index access;
there are less than 0x1ffff days from 1925.

* Extended DateLUTImpl internal LUT to 0x1ffff items, some of which
  represent negative (pre-1970) time values.
  As a collateral benefit, Date now correctly supports dates up to 2149
  (instead of 2106).
* Added a new strong typedef ExtendedDayNum, which represents dates
  pre-1970 and post 2149.
* Functions that used to return DayNum now return ExtendedDayNum.
* Refactored DateLUTImpl to untie DayNum from the dual role of being
  a value and an index (due to negative time). Index is now a different
  type LUTIndex with explicit conversion functions from DatNum, time_t,
  and ExtendedDayNum.
* Updated DateLUTImpl to properly support values close to epoch start
  (1970-01-01 00:00), including negative ones.
* Reduced resolution of DateLUTImpl::Values::time_at_offset_change
  to multiple of 15-minutes to allow storing 64-bits of time_t in
  DateLUTImpl::Value while keeping same size.
* Minor performance updates to DateLUTImpl when building month LUT
  by skipping non-start-of-month days.
* Fixed extractTimeZoneFromFunctionArguments to work correctly
  with DateTime64.
* New unit-tests and stateless integration tests for both DateTime
  and DateTime64.
2021-02-24 17:08:35 +02:00
..
benchmark clickhouse-benchmark: add --reconnect option 2021-01-31 12:36:55 +03:00
client Extended range of DateTime64 to years 1925 - 2238 2021-02-24 17:08:35 +02:00
compressor compressor: remove extra check for seeking of input 2020-12-31 22:13:04 +03:00
copier Drop helping tables when the whole table is done in clickhouse-copier 2021-02-08 10:54:03 +08:00
extract-from-config Refactor CMake build files (#11390) 2020-06-09 13:54:49 +03:00
format Fix bug: no newline after exception message in some tools 2020-12-24 00:18:08 +03:00
git-import Fix error (CC @akuzm) 2020-12-19 01:07:52 +03:00
install Fix build 2021-01-04 19:38:43 +03:00
local Remove unneeded change from #18977 2021-01-16 18:08:21 +03:00
obfuscator better formatfactory 2020-12-30 06:07:30 +03:00
odbc-bridge Fix WriteBufferFromHTTPServerResponse usage in odbc-bridge 2021-02-20 10:15:38 +03:00
server Merge pull request #16193 from ClickHouse/database_replicated 2021-02-20 19:39:34 +03:00
clickhouse-split-helper Move all folders inside /dbms one level up (#9974) 2020-04-02 02:51:21 +03:00
CMakeLists.txt Add integrity checks for ClickHouse binary 2021-01-07 05:56:57 +03:00
config_tools.h.in Add git-import as a tool 2020-09-07 06:22:47 +03:00
main.cpp Add integrity checks for ClickHouse binary 2021-01-07 05:56:57 +03:00
ya.make Follow Arcadia ya.make rules 2020-11-16 21:24:58 +03:00