Commit Graph

66 Commits

Author SHA1 Message Date
Alexey Milovidov
1ea236c91d Remove useless code around locks 2020-03-28 05:09:29 +03:00
CurtizJ
2797873921 code cleanup 2020-01-16 19:19:03 +03:00
CurtizJ
27750f0cd4 Merge remote-tracking branch 'upstream/master' into polymorphic-parts 2020-01-15 19:36:35 +03:00
CurtizJ
bae3aa3c6e simplify data part checking 2020-01-13 17:56:22 +03:00
Alexander Tokmakov
cf5c998b30 refactor storage name 2019-12-26 19:23:38 +03:00
Alexey Milovidov
8579c26efb Changed repository URL 2019-09-23 19:18:19 +03:00
alesapin
3925a3bd13 Generalize check query 2019-07-03 16:17:19 +03:00
Alexander Kuzmenkov
43655a8db7 Add system.detached_parts table.
https://github.com/yandex/ClickHouse/issues/5164
2019-05-21 15:06:36 +03:00
Alexey Milovidov
a6ca9f266f Removed huge chunk of bad code 2019-05-03 05:00:57 +03:00
alesapin
95a8be569d Check marks for adaptive granularity 2019-03-20 19:18:13 +03:00
Alexey Zatelepin
3344955154 separate Read and Write lock holders, better method names 2019-03-07 21:10:21 +03:00
Alexey Zatelepin
c5dde2c9fd get rid of default query_id value in RWLock::getLock [#CLICKHOUSE-3789] 2019-02-28 12:37:05 +03:00
Alexey Milovidov
0861af12a3 Fixed thread names 2019-02-11 00:15:14 +03:00
Nikita Vasilev
a1b0dede07 Data Skipping Indices (#4143)
* made index parser

* added index parsing

* some fixes

* added index interface and factory

* fixed compilation

* ptrs

* added indexParts

* indextypes

* index condition

* IndexCondition

* added indexes in selectexecutor

* fix

* changed comment

* fix

* added granularity

* comments

* fix

* fix

* added writing indexes

* removed indexpart class

* fix

* added setSkipIndexes

* add rw for MergeTreeIndexes

* fixes

* upd error

* fix

* fix

* reading

* test index

* fixed nullptr error

* fixed

* fix

* unique names

* asts -> exprlist

* minmax index

* fix

* fixed select

* fixed merging

* fixed mutation

* working minmax

* removed test index

* fixed style

* added indexes to checkDataPart

* added tests for minmax index

* fixed constructor

* fix style

* fixed includes

* fixed setSkipIndexes

* added indexes meta to zookeeper

* added parsing

* removed throw

* alter cmds parse

* fix

* added alter

* fix

* alters fix

* fix alters

* fix "after"

* fixed alter

* alter fix + test

* fixes

* upd setSkipIndexes

* fixed alter bug with drop all indices

* fix metadata editing

* new test and repl fix

* rm test files

* fixed repl alter

* fix

* fix

* indices

* MTReadStream

* upd test for bug

* fix

* added useful parsers and ast classes

* fix

* fix comments

* replaced columns

* fix

* fixed parsing

* fixed printing

* fix err

* basic IndicesDescription

* go to IndicesDescr

* moved indices

* go to indicesDescr

* fix test minmax_index*

* fixed MT alter

* fixed bug with replMT indices storing in zk

* rename

* refactoring

* docs ru

* docs ru

* docs en

* refactor

* rename tests

* fix docs

* refactoring

* fix

* fix

* fix

* fixed style

* unique idx

* unique

* fix

* better minmax calculation

* upd

* added getBlock

* unique_condition

* added termForAST

* unique

* fixed not

* uniqueCondition::mayBeTrueOnGranule

* fix

* fixed bug with double column

* is always true

* fix

* key set

* spaces

* test

* tests

* fix

* unique

* fix

* fix

* fixed bug with duplicate column

* removed unused data

* fix

* fixes

* __bitSwapLastTwo

* fix
2019-02-05 17:50:25 +03:00
Alexey Zatelepin
0f8e5f8522 Merge branch 'master' into zk-columns-compact-storage
Conflicts:
	dbms/src/Storages/StorageReplicatedMergeTree.cpp
2019-01-16 17:45:16 +03:00
Alexey Milovidov
1d4701b0bc Added some warnings from clang's -Weverything 2019-01-04 15:10:00 +03:00
Alexey Milovidov
e33e5150b7 Miscellaneous [#CLICKHOUSE-2] 2019-01-02 09:44:36 +03:00
Alexey Zatelepin
9bd09b44ed introduce ReplicatedMergeTreePartHeader [#CLICKHOUSE-4024]
Conflicts:
	dbms/src/Common/ErrorCodes.cpp
2018-12-29 17:11:16 +03:00
Ivan Lezhankin
8b5a05947c Remove redundant information from RWLock.
And fix broken exception in some race conditions
2018-11-28 18:50:52 +03:00
alexey-milovidov
2c2d75cceb
Don't allow exceptions without code (#3645)
* Don't allow exceptions without code #3633

* Don't allow exceptions without code #3633
2018-11-23 00:19:58 +03:00
Alexey Milovidov
3475ef5304 Attempt to generalize ZooKeeper interface [#CLICKHOUSE-2] 2018-08-25 04:58:14 +03:00
Alexey Zatelepin
b6aa7542d0 add BackgroundSchedulePool::TaskInfo::activateAndSchedule() method
Almost always it (and not activate()) is precisely what is needed.
2018-08-22 16:43:27 +03:00
Alexey Milovidov
36db216abf Preparation for extra warnings [#CLICKHOUSE-2] 2018-08-10 07:02:56 +03:00
Alexey Milovidov
fa3a01f942 Fixed bug found by PVS-Studio [#CLICKHOUSE-3] 2018-06-04 18:03:21 +03:00
Alexey Zatelepin
d89221c458 easier init and deactivation of BackgroundSchedulePool tasks 2018-05-31 16:18:52 +03:00
Alexey Zatelepin
f6c72f8e56 Merge branch 'master' into replicated-mergetree-mutations
Conflicts:
	dbms/src/Common/ActionBlocker.h
	dbms/src/Storages/MergeTree/ActiveDataPartSet.cpp
	dbms/src/Storages/MergeTree/ActiveDataPartSet.h
	dbms/src/Storages/MergeTree/MergeTreeData.h
	dbms/src/Storages/MergeTree/MergeTreeDataPart.cpp
	dbms/src/Storages/MergeTree/ReplicatedMergeTreeAlterThread.cpp
	dbms/src/Storages/MergeTree/ReplicatedMergeTreeLogEntry.cpp
	dbms/src/Storages/MergeTree/ReplicatedMergeTreeLogEntry.h
	dbms/src/Storages/MergeTree/ReplicatedMergeTreeQueue.cpp
	dbms/src/Storages/MergeTree/ReplicatedMergeTreeQueue.h
	dbms/src/Storages/MergeTree/ReplicatedMergeTreeRestartingThread.cpp
	dbms/src/Storages/StorageMergeTree.cpp
	dbms/src/Storages/StorageReplicatedMergeTree.cpp
	dbms/src/Storages/StorageReplicatedMergeTree.h
2018-05-28 18:37:30 +03:00
Alexey Zatelepin
17437a95bf merge selection based on checking current inserts [#CLICKHOUSE-3732] 2018-05-25 23:03:56 +03:00
Vitaliy Lyudvichenko
c888903488
Add query ALTER TABLE t1 [REPLACE|ATTACH] PARTITION FROM t2
* Add ATTACH PARTITION FROM table for MergeTree. [#CLICKHOUSE-3546]

* Implemented replicated case on non-leader replica. [#CLICKHOUSE-3546]

* Disable merges in the dropping range. [#CLICKHOUSE-3546]

* DROP PARTITION is atomic and simpler now. [#CLICKHOUSE-3546]

* Implemented more SYSTEM queries. [#CLICKHOUSE-2931] [#CLICKHOUSE-3546]

SYSTEM queries:
RESTART REPLICAS
SYNC REPLICA db.name
STOP MERGES [db.name]
START MERGES [db.name]
STOP FETCHES [db.name]
START FETCHES [db.name]
STOP REPLICATED SENDS [db.name]
START REPLICATED SENDS [db.name]
STOP REPLICATION QUEUES [db.name]
START REPLICATION QUEUES [db.name]

* Fixed a bunch of bugs in REPLACE PARTITION. [#CLICKHOUSE-3546]

* Add tests for REPLACE PARTITION and SYSTEM. [#CLICKHOUSE-3546]

* Add system.part_log logging. [#CLICKHOUSE-3546]

* Fixed long wait in SYNC REPLICA. [#CLICKHOUSE-3546]

* Add requested changes. [#CLICKHOUSE-3546]

Fixed clickhouse-client bad return code.

* Add requested chenges. [#CLICKHOUSE-3546]

* Add requested chenges. [#CLICKHOUSE-3546]
2018-05-21 16:49:54 +03:00
Silviu Caragea
1dd5a704fc Merge remote-tracking branch 'origin/master' into background-schedule-pool-fix
# Conflicts:
#	dbms/src/Common/ZooKeeper/LeaderElection.h
#	dbms/src/Storages/MergeTree/ReplicatedMergeTreeAlterThread.cpp
#	dbms/src/Storages/MergeTree/ReplicatedMergeTreeCleanupThread.cpp
#	dbms/src/Storages/MergeTree/ReplicatedMergeTreePartCheckThread.cpp
#	dbms/src/Storages/StorageReplicatedMergeTree.cpp
2018-04-24 20:11:59 +03:00
Alexey Milovidov
12e33cfd85 Exit from threads when ZooKeeper session is expired (non significant change) [#CLICKHOUSE-2] 2018-04-19 21:16:18 +03:00
Silviu Caragea
c547c5a7b0 Merge remote-tracking branch 'origin/background-schedule-pool-fix'
# Conflicts:
#	dbms/src/Common/ZooKeeper/LeaderElection.h
#	dbms/src/Common/ZooKeeper/ZooKeeper.cpp
#	dbms/src/Storages/MergeTree/ReplicatedMergeTreeAlterThread.cpp
#	dbms/src/Storages/MergeTree/ReplicatedMergeTreeCleanupThread.cpp
#	dbms/src/Storages/MergeTree/ReplicatedMergeTreeCleanupThread.h
#	dbms/src/Storages/MergeTree/ReplicatedMergeTreePartCheckThread.cpp
#	dbms/src/Storages/MergeTree/ReplicatedMergeTreeRestartingThread.cpp
#	dbms/src/Storages/StorageReplicatedMergeTree.cpp
2018-04-10 16:20:14 +03:00
Alexey Milovidov
4e5e0fa664 ReplicatedMergeTree: Better diagnostics [#CLICKHOUSE-2] 2018-04-07 00:46:57 +03:00
Vitaliy Lyudvichenko
fe8dfd3038 Add minimalistic checksums. [#CLICKHOUSE-3660] 2018-03-23 00:26:46 +03:00
Silviu Caragea
b24a4b2111 Add back the buggy BackgroundSchedulePool 2018-03-22 17:07:12 +02:00
Alexey Milovidov
fcdd5de47d Revert "Removed questionable code (2) [#CLICKHOUSE-2]."
This reverts commit fcabe8b888.
2017-12-28 07:39:19 +03:00
Alexey Milovidov
c89041ce63 Removed questionable code (2) [#CLICKHOUSE-2]. 2017-12-26 01:51:04 +03:00
Alexey Milovidov
ec71908b00 Revert "Removed questionable code (2) [#CLICKHOUSE-2]."
This reverts commit fcabe8b888.
2017-12-26 00:57:29 +03:00
Alexey Milovidov
fcabe8b888 Removed questionable code (2) [#CLICKHOUSE-2]. 2017-12-26 00:32:33 +03:00
Alexey Zatelepin
6d5ce3fa9a revert BackgroundSchedulePool usage in Replicated tables 2017-12-22 21:25:54 +03:00
Alexey Zatelepin
835b957e95 add comments [#CLICKHOUSE-3508] 2017-12-20 20:40:36 +03:00
Alexey Zatelepin
d35baafde8 check PreCommitted parts when executing log entries and in PartChecker [#CLICKHOUSE-3508] 2017-12-20 20:04:14 +03:00
Alexey Milovidov
c5d5296889 Miscellaneous [#CLICKHOUSE-2]. 2017-12-18 07:07:26 +03:00
Alexey Milovidov
a813287afd Rewrite MergeTreePartChecker [#CLICKHOUSE-2838]. 2017-12-03 03:48:19 +03:00
Alexey Milovidov
464d962010 Rewrite MergeTreePartChecker [#CLICKHOUSE-2838]. 2017-12-03 03:46:34 +03:00
Alexey Milovidov
9b92c0fecd BackgroundSchedulePool: miscellaneous [#CLICKHOUSE-2]. 2017-11-19 03:22:13 +03:00
Alexey Milovidov
076e0ae014 More clear [#CLICKHOUSE-2]. 2017-11-18 00:20:28 +03:00
Alexey Milovidov
7c9ba15ba1 Style [#CLICKHOUSE-2]. 2017-11-17 23:42:03 +03:00
Silviu Caragea
64619c614f Basic idea is :
- We add BackgroundSchedulePool which can execute a function at a specific point in time. Basically all tasks are added in a queue and precessed by worker threads.
- The most important difference between this and BackgroundProcessingPool is that we have the guarantee that the same function is not executed from many workers in the same time
- Each of the following classes instead starting a thread will register a task in BackgroundSchedulePool and when they need to run will call schedule or scheduleAfter(duration) functions

This commit is moving all threads created by ReplicatedMergeTree to BackgroundSchedulePool tasks

NOTE: I did a minimum number of changes to be much simple to review the code
2017-11-17 10:58:35 +02:00
Alexey Milovidov
2846c7560f Fixed wording [#CLICKHOUSE-2]. 2017-11-15 22:47:49 +03:00
Alexey Zatelepin
2f80c150db save MergeTree data format version and parse part names depending on it [#CLICKHOUSE-3000] 2017-09-26 20:40:02 +03:00