Commit Graph

51 Commits

Author SHA1 Message Date
Nikita Vasilev
d9b7f30245 added indexes to checkDataPart 2019-01-09 22:20:50 +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
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
Alexey Zatelepin
ba87fa395c be more conservative when deleting replication queue items in PartCheckThread [#CLICKHOUSE-3258] 2017-09-20 06:05:20 +03:00
Vitaliy Lyudvichenko
566160c048 Use FIFO lock in IStorage. [#CLICKHOUSE-3246] 2017-09-01 20:45:05 +03:00
Alexey Zatelepin
f25f0cd759 reduce number of places where partitioning by month is assumed [#CLICKHOUSE-3000] 2017-08-15 22:30:52 +03:00
Vitaliy Lyudvichenko
10c14cfccb Small code enhancements according to clang-tidy. [#CLICKHOUSE-2931] 2017-08-04 17:35:36 +03:00
Alexey Zatelepin
58d541b740 slightly more robust ReplicatedMergeTreePartCheckThread::TemporarilyStop [#CLICKHOUSE-3074] 2017-07-12 20:09:44 +03:00
Alexey Milovidov
8228acd3ea Removed obsolete code that was relevant only in extremely rare case of transforming CollapsingMergeTree to ReplicatedCollapsingMergeTree through ATTACHing data parts and while some considerations about data order in table is important [#CLICKHOUSE-3091]. 2017-06-25 03:51:51 +03:00
Alexey Milovidov
5c322f5756 Loosened threshold on amount of replica inconsistency to refuse server startup [#CLICKHOUSE-3076]. 2017-06-21 22:07:08 +03:00
Alexey Milovidov
310736cd7e Moved headers and sources to same place [#CLICKHOUSE-3]. 2017-04-01 12:22:42 +03:00
Alexey Milovidov
137ad95929 Changed tabs to spaces in code [#CLICKHOUSE-3]. 2017-04-01 11:35:09 +03:00
Alexey Milovidov
26788e3938 Formatting [#CLICKHOUSE-2]. 2017-03-13 21:01:46 +03:00
f1yegor
401425bb89 translate comments 2017-03-12 20:18:07 +01:00
Alexey Milovidov
9af5ce1e3b Separate compilation of ProfileEvents; comments [#METR-23237]. 2016-10-24 05:02:37 +03:00
Alexey Milovidov
d7ce4dd410 Better grepability [#METR-22173]. 2016-08-03 23:25:09 +03:00
Alexey Milovidov
edc561d6b5 Fixed error [#METR-20803]. 2016-04-10 03:28:44 +03:00
Alexey Milovidov
11df87ea54 Merge 2016-04-09 07:22:11 +03:00