Commit Graph

6239 Commits

Author SHA1 Message Date
Ivan Lezhankin
a287443438 Merge remote-tracking branch 'upstream/master' into dwarf-folly 2021-02-08 18:36:41 +03:00
alexey-milovidov
3b43b0a1be
Merge pull request #20131 from azat/DateTime64-fix
DateTime64 fixes
2021-02-07 16:55:28 +03:00
Azat Khuzhin
46ff7d2ab0 Fix DateTime64 overflows 2021-02-07 02:24:31 +03:00
Alexey Milovidov
1209c02869 Fix overflow in mapPopulateSeries 2021-02-06 23:18:42 +03:00
tavplubix
1c5d6bbe44
Merge pull request #20051 from stigsb/materializemysql-system-tables-fix
Show details of MaterializeMySQL tables in `system.tables`
2021-02-06 14:50:11 +03:00
Azat Khuzhin
c4b5eed4ff Fix DateTime64 initialization (to match DateTime behaviour)
There was no specializations for toDateTime64(<numeric>), and because of
this default decimal conversion was used, however this is not enough for
DateTime/DateTime64 types, since the date may overflow and the proper
check is required (like DateTime has), and this what UBsan found [1]:

    ../src/IO/WriteHelpers.h:812:33: runtime error: index 508 out of bounds for type 'const char [201]' Received signal -3 Received signal Unknown signal (-3)

Backtrace:

    (gdb) bt
    0  LocalDateTime::LocalDateTime (this=0x7fffffff8418, year_=1970, month_=1 '\001', day_=1 '\001', hour_=2 '\002', minute_=0 '\000', second_=254 '\376') at LocalDateTime.h:83
    1  0x00000000138a5edb in DB::writeDateTimeText<(char)45, (char)58, (char)32, (char)46> (datetime64=..., scale=7, buf=..., date_lut=...) at WriteHelpers.h:852
    2  0x0000000019c379b4 in DB::DataTypeDateTime64::serializeText (this=0x7ffff5c4b0d8, column=..., row_num=0, ostr=..., settings=...) at DataTypeDateTime64.cpp:66
    3  0x0000000019d297e4 in DB::IDataType::serializeAsText (this=0x7ffff5c4b0d8, column=..., row_num=0, ostr=..., settings=...) at IDataType.cpp:387

  [1]: https://clickhouse-test-reports.s3.yandex.net/19527/cea8ae162ffbf92e5ed29304ab010704c5d611c8/fuzzer_ubsan/report.html#fail1

Also fix CAST for DateTime64
2021-02-06 13:04:53 +03:00
Azat Khuzhin
0627ba0e36 Fix timezone argument for DateTime64
It should be marked with always const, otherwise it will bail:

    Code: 44, e.displayText() = DB::Exception: Illegal column String of time zone argument of function, must be constant string: While processing toDateTime(-1, 1, 'GMT'), Stack trace (when copying this message, always include the lines below):
2021-02-06 13:04:53 +03:00
Azat Khuzhin
f4c2048bf2 Fix toDateTime64(toDate()/toDateTime()) for DateTime64
Maybe this is even does not worth it, but at least there was code that
assume that this should work - ToDateTime64Transform in
FunctionsConversion.h.
2021-02-06 13:04:53 +03:00
alexey-milovidov
5c281bd2f1
Merge pull request #20133 from ClickHouse/fix_if_tuple
Fix if with tuple then/else arguments
2021-02-06 09:52:54 +03:00
alexey-milovidov
dee8f1fbf2
Merge pull request #20132 from ClickHouse/fix-data-type-parser-exponential
Fix the case when DataType parser may have exponential complexity
2021-02-06 08:42:40 +03:00
alesapin
011109c82a
Merge pull request #17348 from xjewer/alex/CLICKHOUSE-606_deduplication_UUID
CLICKHOUSE-606: query deduplication based on parts' UUID
2021-02-05 22:47:34 +03:00
alesapin
f81a407cdd Fix if with tuple then/else arguments 2021-02-05 22:39:26 +03:00
Alexey Milovidov
60f2e89cfb Fix the case when DataType parser may have exponential complexity 2021-02-05 22:21:30 +03:00
alexey-milovidov
20a3b9782f
Merge pull request #20063 from hexiaoting/dev_mod
Add more tests for modulo of division of negative number
2021-02-05 17:26:24 +03:00
Stig Bakken
3fc1641d91 Show details of MaterializeMySQL tables in system.tables 2021-02-05 21:37:29 +08:00
alesapin
65d7b39cd6
Merge pull request #20073 from ClickHouse/fix-split-filter-remove-column
Fix removing of filter column when split filter actions.
2021-02-05 13:31:02 +03:00
tavplubix
f59dc7f40d
Merge pull request #20066 from havardk/multi-table-update
Fix handling of TABLE_MAP_EVENT from MySQL
2021-02-05 13:11:59 +03:00
hexiaoting
a379779f87 Merge remote-tracking branch 'origin/master' into dev_mod and add more test cases 2021-02-05 17:09:14 +08:00
vdimir
1e2c302248
Merge pull request #18377 from Jokser/disk-s3-backup-restore-metadata 2021-02-05 10:44:59 +03:00
Alexander Kuzmenkov
7bca563e5a
Merge pull request #20068 from ClickHouse/aku/long-flaky
detect unmarked long tests in flaky check
2021-02-05 10:07:19 +03:00
Alexander Kuzmenkov
cb791dbc7f
Update 01443_merge_truncate_long.sh 2021-02-05 10:06:53 +03:00
Alexander Kuzmenkov
a1bcd4b128
Update 01232_preparing_sets_race_condition_long.sh 2021-02-05 10:06:39 +03:00
Alexander Kuzmenkov
52b52ede22
Update 00840_long_concurrent_select_and_drop_deadlock.sh 2021-02-05 10:06:17 +03:00
alexey-milovidov
34151eea2c
Merge pull request #20067 from ClickHouse/mod-negative-type-promotion
Add type promotion for modulo of division of negative number
2021-02-05 09:31:46 +03:00
hexiaoting
b892fff406 Add alexey's fix: using another logic and more comments 2021-02-05 10:31:16 +08:00
Alexander Kuzmenkov
26020daca5 Merge remote-tracking branch 'origin/master' into HEAD 2021-02-04 20:58:25 +03:00
Alexander Kuzmenkov
3796a183ba Merge remote-tracking branch 'origin/master' into HEAD 2021-02-04 20:54:36 +03:00
Alexander Kuzmenkov
b0fba3dece mark as long 2021-02-04 20:51:32 +03:00
vdimir
30f98795bc
Merge remote-tracking branch 'upstream/master' into disk-s3-backup-restore-metadata 2021-02-04 18:38:28 +03:00
Nikolai Kochetov
4d66bc413c Update test. 2021-02-04 16:19:20 +03:00
Alexander Kuzmenkov
858043cd53 detect unmarked long tests in flaky check 2021-02-04 15:06:48 +03:00
alexey-milovidov
c12f2d460e
Merge pull request #19972 from ClickHouse/fix-rocksdb
Fix missing type check in EmbeddedRocksDB
2021-02-04 15:06:12 +03:00
Alexey Milovidov
a3ac276741 Add type promotion for modulo of division of negative number 2021-02-04 14:56:04 +03:00
Haavard Kvaalen
e6f1ce48fe Fix handling of TABLE_MAP_EVENT from MySQL
The MySQL replication code assumed that row update events would be
preceded by a single TABLE_MAP_EVENT.  However, if a single SQL
statement modifies rows in multiple tables, MySQL will first send
table map events for all involved tables, and then row update events.

Depending on circumstances, this could lead to an exception when the row
update was processed, the update could be incorrectly dropped, or the
update could be applied to the wrong table.
2021-02-04 12:49:10 +01:00
Alexander Kuzmenkov
02ca7386b1
Merge pull request #19951 from ClickHouse/aku/window-prototype-3
CURRENT ROW and offset for start of ROWS frame
2021-02-04 14:33:13 +03:00
alexey-milovidov
298a29ef52
Merge pull request #20049 from ClickHouse/point-in-polygon-ubsan
Avoid UBSan report in pointInPolygon
2021-02-04 13:51:30 +03:00
hexiaoting
81b0cc381d enlarge signed type for modulo function 2021-02-04 17:36:09 +08:00
Alexander Kuzmenkov
c1c71fc8e9 ROWS OFFSET frame end 2021-02-04 10:41:09 +03:00
Alexey Milovidov
ab30c95b41 Adjust perf test 2021-02-04 10:35:30 +03:00
Alexey Milovidov
55c7fdbbe4 Merge branch 'master' into fix-rocksdb 2021-02-04 08:30:02 +03:00
Alexey Milovidov
f467104919 Merge branch 'point-in-polygon-ubsan' of github.com:yandex/ClickHouse into point-in-polygon-ubsan 2021-02-04 08:27:15 +03:00
Alexey Milovidov
47a56b9d1d Merge branch 'master' into point-in-polygon-ubsan 2021-02-04 08:26:41 +03:00
Azat Khuzhin
984445b44b Fix UBsan reports in quantileTiming
UBsan reports [1]:

    ../src/AggregateFunctions/QuantileTiming.h:442:27: runtime error: 1.84467e+19 is outside the range of representable values of type 'unsigned long' Received signal -3 Received signal Unknown signal (-3)

  [1]: https://clickhouse-test-reports.s3.yandex.net/19971/e15f5d9cb5b36482d1ae9ca069074fb200f2ab37/fuzzer_ubsan/report.html#fail1

Follow-up for: #19394
2021-02-04 02:01:48 +03:00
Azat Khuzhin
cc43f92719 Fix tests *.reference files
Using:

    sed -i 's/MergeTree  with order/MergeTree with order/g' tests/queries/0_stateless/*.reference

Fixes: dc2afc4795 ("Fix double whitespace #18383")
2021-02-03 22:45:54 +03:00
alexey-milovidov
ca06d3b317
Merge branch 'master' into fix-rocksdb 2021-02-03 21:28:50 +03:00
alexey-milovidov
402c018d1e
Merge pull request #19947 from azat/dist-INSERT-block-structure-mismatch
Fix "Block structure mismatch" for INSERT into Distributed
2021-02-03 21:27:45 +03:00
alexey-milovidov
0aca4a740c
Update 01700_point_in_polygon_ubsan.sql 2021-02-03 21:26:03 +03:00
Alexey Milovidov
eb8b2e883a Add a test 2021-02-03 21:25:04 +03:00
Nikolai Kochetov
c39c965612
Merge pull request #19962 from keen-wolf/timezoneOffset
Implement the timezoneOffset function
2021-02-03 20:37:34 +03:00
Alexey Milovidov
82ab793731 Fix missing type check in StorageEmbeddedRocksDB 2021-02-03 20:35:23 +03:00