Commit Graph

240 Commits

Author SHA1 Message Date
Han Fei
f5c9d278ad use statistic to order prewhere conditions better 2023-08-09 22:57:49 +02:00
Anton Popov
b6ce725367 fix projection recalc 2023-08-08 14:06:42 +00:00
Anton Popov
fbe9f8d0f6 fix recalculation of skip indexes and projcetion in ALTER DELETE 2023-07-24 14:14:12 +00:00
Amos Bird
a66f68e5df
fix again 2023-06-05 01:48:13 +08:00
Amos Bird
e24c9267bc
fix 2023-06-04 20:06:27 +08:00
Amos Bird
92b2200c55
mutation stages can be empty 2023-06-04 18:32:12 +08:00
Amos Bird
97bd3f0483
Proper mutation of skip indices and projections 2023-06-04 18:32:08 +08:00
Anton Popov
612173e734 refactoring near alter conversions 2023-05-25 22:54:54 +00:00
Alexander Tokmakov
05ae7b2c2d fix some tests 2023-05-15 18:28:12 +02:00
Nikolai Kochetov
28484cd762
Merge pull request #48522 from ClickHouse/many-mutations-memory-limit
Reduce memory usage for multiple alter delete mutations.
2023-04-10 12:50:42 +02:00
Nikolai Kochetov
e8fb135180 Reduce memory usage for multiple alter delete mutations. 2023-04-06 19:07:53 +00:00
Antonio Andelic
0260b84bc3 Update only affected rows in KV storage 2023-04-05 16:12:14 +00:00
Antonio Andelic
1e3abc9e84 Add strict mode for KeeperMap 2023-03-31 14:24:32 +00:00
Maksim Kita
f1093716f0 Analyzer MutationsInterpreter fix 2023-03-01 18:03:41 +01:00
Maksim Kita
cbd961de98 Fixed code review issues 2023-02-18 17:06:00 +01:00
Maksim Kita
03f14f7c50 Analyzer fix MutationsInterpreter 2023-02-16 12:17:02 +01:00
Alexander Gololobov
96cb23a6a1 Break on first non-empty block 2023-01-31 15:49:56 +01:00
Alexander Gololobov
93b82a2c44 Use multithreaded executor in isStorageTouchedByMutations() 2023-01-30 23:48:52 +01:00
Alexander Gololobov
4eea3de654 Do not restrict count() query to 1 thread in isStorageTouchedByMutations() 2023-01-30 22:29:28 +01:00
Alexander Tokmakov
70d1adfe4b
Better formatting for exception messages (#45449)
* save format string for NetException

* format exceptions

* format exceptions 2

* format exceptions 3

* format exceptions 4

* format exceptions 5

* format exceptions 6

* fix

* format exceptions 7

* format exceptions 8

* Update MergeTreeIndexGin.cpp

* Update AggregateFunctionMap.cpp

* Update AggregateFunctionMap.cpp

* fix
2023-01-24 00:13:58 +03:00
Nikolai Kochetov
7701dc571e
Update MutationsInterpreter.cpp 2023-01-10 18:19:38 +01:00
Nikolai Kochetov
71333afd5a Fixing a test. 2023-01-10 16:40:10 +00:00
Nikolai Kochetov
4673b3fe1d
Revert "Revert "Custom reading for mutation"" 2023-01-10 16:31:01 +01:00
Alexander Tokmakov
c8ec130be4
Revert "Custom reading for mutation" 2023-01-10 17:51:30 +03:00
Nikolai Kochetov
11418963c0
Merge pull request #44653 from ClickHouse/custom-reading-for-mutation
Custom reading for mutation
2023-01-10 12:16:24 +01:00
Nikolai Kochetov
3e430b1b6e Add comments. Remove unused flag from Context. 2023-01-09 19:52:11 +00:00
Alexander Gololobov
ebb17c6a76 More generic fix 2023-01-09 12:06:58 +01:00
Ilya Yatsishin
4bedd2ca59
fix style 2023-01-06 15:16:44 +01:00
Mingliang Pan
c98e52e9ee
fix alter table ttl error when this table has light weight delete mask file (_row_exists.bin)
After  applying light weight delete to MergeTree table,  a delete mask file (_row_exists.bin) will appears in the wide part directory.  Then we execute "ALTER TABLE xxxxxx  MODIFY TTL xxxx" to this table, clickhouse will report error in log message:   "NOT_FOUND_COLUMN_IN_BLOCK, Not found column _row_exists  in block".   
The root cause of this bug is that:  in MutationsInterpreter::prepare(), when constructing the select columns,  it does not include the system columns, but only physic columns (not include _row_exists.bin).  however the output block of the execute pipeline contains _row_exists column, then error occurs.

this bug is severe, because mutate TTL will continuously to execute, never end. the only workaround is to truncate the whole table.

the fix is to return all columns including row_exists when executing alter table TTL query
2023-01-06 10:58:34 +08:00
Nikolai Kochetov
f629425f96
Merge pull request #44447 from ClickHouse/42637_Disallow_arrayJoin_in_mutations
Disallow arrayjoin in mutations
2023-01-05 18:00:16 +01:00
Smita Kulkarni
4f0b0236e3 Removed flag from ExpressionAnalyzer and added a check in MutationsInterpreter::addStreamsForLaterStages - 42637 Disallow arrayJoin in mutations 2023-01-04 09:56:44 +01:00
Nikolai Kochetov
9ecb9195ac Cleanup. 2022-12-30 17:45:25 +00:00
Nikolai Kochetov
5f38e17941 Fix integration test. 2022-12-30 16:20:06 +00:00
Nikolai Kochetov
3c02e208c8 Fix more tests. 2022-12-29 17:52:31 +00:00
Nikolai Kochetov
2dacdee58b Some fixes for lightweight deletes 2022-12-28 19:38:22 +00:00
Nikolai Kochetov
d8a398b0bd Use sequential source for mutations. 2022-12-27 20:47:49 +00:00
Nikolai Kochetov
c203aa054a Use sequential source for mutations. 2022-12-27 20:28:25 +00:00
Nikolai Kochetov
03352a15b6 Use sequential source for mutations. 2022-12-23 22:39:27 +00:00
Anton Popov
4b7f1e0cf2 fix mutations with setting 'max_streams_for_merge_tree_reading' 2022-12-21 01:59:53 +00:00
Smita Kulkarni
56fa477db6 Disallow array join in mutations
Implementation:
* Added a new parameter to ActionsVisitor::Data disallow_arrayjoin, which is set by MutationsIterator when it appends expression.
* ActionsVisitor uses disallow_arrayjoin and throws error when its used with mutations.
Testing:
* Added test for the same 02504_disallow_arrayjoin_in_mutations.sql.
2022-12-20 18:51:55 +01:00
lthaooo
d4dd6b05b2 optimize compact part mutation 2022-09-09 10:22:35 +08:00
Antonio Andelic
f043790e6d Add support for update 2022-08-31 14:33:53 +00:00
Antonio Andelic
0e6b3b870a Add support for delete in RocksDB 2022-08-31 13:08:27 +00:00
vdimir
5eb4cd39e0
Merge branch 'master' into refactor-prepared-sets 2022-08-10 11:47:49 +00:00
Maksim Kita
c030fd05e7 ActionsDAG rename index to outputs 2022-08-08 18:01:32 +02:00
Vladimir C
115506356c
Merge branch 'master' into refactor-prepared-sets 2022-07-27 19:57:23 +02:00
vdimir
8eecb9ef82
upd PreparedSets: rename/change signature of methods, add comments 2022-07-27 11:22:16 +00:00
vdimir
1e3fa2e01f
Refactor PreparedSets/SubqueryForSet 2022-07-26 18:39:02 +00:00
Alexander Gololobov
48de02a7b8 Capitalized const name 2022-07-25 16:32:16 +02:00
Alexander Gololobov
c8b3c574a4 Disable lightweight delete if table has projections 2022-07-24 12:21:47 +02:00
Alexander Gololobov
594195451e Cleanups 2022-07-24 12:21:18 +02:00
Alexander Gololobov
50bd8147fd Make lightweight delete work with compact parts (not in optimal way yet) 2022-07-21 17:59:34 +02:00
Alexander Gololobov
1ea9f143ff Leave only _row_exists-based implementation of lightweight delete 2022-07-21 11:26:13 +02:00
Alexander Gololobov
ae0d00083c Renamed __row_exists to _row_exists 2022-07-18 20:07:36 +02:00
Alexander Gololobov
f324ca9921 Cleanups 2022-07-18 20:07:22 +02:00
Alexander Gololobov
9de72d995a POC lightweight delete using __row_exists virtual column and prewhere-like filtering 2022-07-18 20:06:42 +02:00
jianmei zhang
9d27af7ee2 For some columns mutations, skip to apply deleted mask when read some columns. Also add unit test case 2022-07-15 12:32:41 +08:00
jianmei zhang
8696319d62 Support lightweight delete execution using string as deleted rows mask,also part of select can handle LWD 2022-07-15 12:32:41 +08:00
Anton Popov
5cf2c67410
Merge branch 'master' into fix-mutations-again 2022-06-03 14:17:05 +02:00
Anton Popov
cae2478b3f Revert "Merge pull request #37355 from ClickHouse/revert-37266-fix-mutations-with-object"
This reverts commit a53cfa9fca, reversing
changes made to 9acb42fcdb.
2022-06-01 10:57:20 +00:00
Nikolai Kochetov
3d84aae0ab Better. 2022-05-24 20:06:08 +00:00
Nikolai Kochetov
9756b759c6 Move some resources 2022-05-23 13:46:57 +00:00
Nikolai Kochetov
56feef01e7 Move some resources 2022-05-20 19:49:31 +00:00
Alexander Tokmakov
f787dc7097
Revert "Fix mutations in tables with columns of type Object" 2022-05-19 13:24:48 +03:00
Anton Popov
b6c5ab4fcf fix mutations in tables with columns of type Object 2022-05-16 18:26:53 +00:00
Robert Schulze
118e94523c
Activate clang-tidy warning "readability-container-contains"
This check suggests replacing <Container>.count() by
<Container>.contains() which is more speaking and in case of
multimaps/multisets also faster.
2022-04-18 23:53:11 +02:00
Alexander Tokmakov
da00beaf7f Merge branch 'master' into mvcc_prototype 2022-04-05 11:14:42 +02:00
Nikita Taranov
bd89fcafdb
Make SortDescription::column_name always non-empty (#35805) 2022-04-04 14:17:15 +02:00
Alexander Tokmakov
07d952b728 use snapshots for semistructured data, durability fixes 2022-03-17 18:26:18 +01:00
Anton Popov
e8ce091e68 Merge remote-tracking branch 'upstream/master' into HEAD 2022-01-21 20:11:18 +03:00
Amos Bird
62441f0a0f
Fix mutation when table contains projections (#33679) 2022-01-19 15:27:11 +03:00
Anton Popov
99ebabd822 Merge remote-tracking branch 'upstream/master' into HEAD 2021-12-17 19:02:29 +03:00
Anton Popov
0b68980977 fix MATERIALIZE TTL with WHERE and GROUP BY 2021-12-13 17:21:05 +03:00
Nikolai Kochetov
e41974fabf
Merge branch 'master' into fix-31538 2021-12-09 19:00:22 +03:00
Nikolai Kochetov
272c0bb35a Fix crash in case of MATERIALIZE COLUMN with no default expression. 2021-12-09 18:58:28 +03:00
Nikita Mikhaylov
9a6a1379fd
Merge pull request #32358 from nikitamikhaylov/mutation-livelock
Fixed empty mutations livelock
2021-12-08 15:43:19 +03:00
Nikita Mikhaylov
76f91c2c6c Done 2021-12-07 16:50:57 +00:00
Anton Popov
ef7ae7cb75 fix MATERIALIZE COLUMN in case when data type of expression is not equal to data type of column 2021-12-07 16:45:30 +03:00
tavplubix
04b98ee1d7
Revert "Fixed null pointer exception in MATERIALIZE COLUMN" 2021-11-24 14:56:12 +03:00
Vladimir Chebotarev
4f7f9795a1 Fixed null pointer exception in MATERIALIZE COLUMN. 2021-11-24 09:17:43 +03:00
Anton Popov
a20922b2d3 Merge remote-tracking branch 'origin/sparse-serialization' into HEAD 2021-11-09 15:36:25 +03:00
vdimir
cfb98d381c
Do not use default scalars in MutationsInterpreter::prepareInterpreterSelectQuery 2021-10-22 12:47:28 +03:00
vdimir
039af96b61
Set execute_scalar_subqueries in MutationsInterpreter only for MergeTree and prepareInterpreterSelectQuery 2021-10-21 18:05:46 +03:00
vdimir
ed0bb2cec2
Fix deadlock on ALTER with scalar subquery to the same table 2021-10-21 14:02:51 +03:00
alexey-milovidov
7beffb04ad
Merge pull request #29495 from ClickHouse/improvement_for_strange_mutations
Minor improvement for strange mutations
2021-10-17 20:57:06 +03:00
Nikolai Kochetov
a08c98d760 Move some files. 2021-10-16 17:03:50 +03:00
Nikolai Kochetov
2957971ee3 Remove some last streams. 2021-10-13 21:22:02 +03:00
Nikolai Kochetov
340b53ef85 Remove some more streams. 2021-10-08 17:03:54 +03:00
Alexander Tokmakov
afd69ef833 fix check for nondeterministic mutations 2021-10-07 15:24:40 +03:00
Nikolai Kochetov
d0c6f11fcb More. 2021-10-06 20:59:27 +03:00
Nikolai Kochetov
2b7d71d3a2 Fix some other tests. 2021-09-19 23:15:10 +03:00
Nikolai Kochetov
341553febd Fix build. 2021-09-16 20:40:42 +03:00
Nikolai Kochetov
b997214620 Rename QueryPipeline to QueryPipelineBuilder. 2021-09-14 20:48:18 +03:00
Anton Popov
4c388e3d84 Merge remote-tracking branch 'origin/sparse-serialization' into HEAD 2021-09-09 14:10:16 +03:00
Vladimir Chebotarev
de5daa22ab Revert "MATERIALIZE COLUMN xxx FINAL"
This reverts commit bf1430c1ec.
2021-08-30 11:50:26 +03:00
Vladimir Chebotarev
40bedd88e7 One more fix. 2021-08-30 11:50:01 +03:00
Vladimir Chebotarev
0d6e0181d6 MATERIALIZE COLUMN xxx FINAL 2021-08-30 11:49:59 +03:00
Vladimir Chebotarev
428657b14f 2. Draw the rest of that owl. 2021-08-30 11:49:26 +03:00
Vladimir Chebotarev
ce0850007f 1. Draw some circles. 2021-08-30 11:49:26 +03:00
mergify[bot]
ae22bab2c4
Merge branch 'master' into materialize_ttl_recalculate_only 2021-08-24 08:49:19 +00:00