Commit Graph

35 Commits

Author SHA1 Message Date
Alexey Milovidov
0a7e288d70 Miscellaneous #2758 2018-08-28 02:59:49 +03:00
VadimPE
0281678c3e CLICKHOUSE-3847 fix code style 2018-08-27 18:44:51 +03:00
Vadim
be2d821669
Merge branch 'master' into CLICKHOUSE-3847 2018-08-27 15:26:41 +03:00
VadimPE
ce217af78a CLICKHOUSE-3847 fix 2018-08-23 18:58:29 +03:00
VadimPE
9beb841406 CLICKHOUSE-3847 fix throw and del log 2018-08-23 16:55:59 +03:00
VadimPE
d81d4dfc70 CLICKHOUSE-3847 change createReplica and change check in cloneReolica() 2018-08-22 17:01:54 +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
Vadim
8f3350216f
Merge branch 'master' into CLICKHOUSE-3847 2018-08-21 13:27:18 +03:00
VadimPE
a49cc41279 CLICKHOUSE-3847 add support old version of CH server 2018-08-21 02:08:45 +03:00
proller
159cdbbb3e Try fix build (link order) 2018-08-20 18:34:37 +03:00
VadimPE
0c119d7667 CLICKHOUSE-3847 fix bugs 2018-08-20 16:31:24 +03:00
VadimPE
75900f494f CLICKHOUSE-3847 add "is_lost". load() in Queue can check duplicate records 2018-08-09 18:06:39 +03:00
VadimPE
0be75baeda CLICKHOUSE-3847 Del markLosrTeplicas() 2018-08-07 18:26:27 +03:00
Alexey Zatelepin
b6b54eea52 old mutations cleaner for ReplicatedMergeTree engines [#CLICKHOUSE-3828] 2018-08-03 22:21:44 +03:00
VadimPE
ed8d749b9e CLICKHOUSE-3847 fix problems with empty entries 2018-07-31 16:45:43 +03:00
VadimPE
9b5620fac1 CLICKHOUSE-3847 fix comments. 2018-07-31 12:01:24 +03:00
Alexey Zatelepin
cc7950a733 don't destroy Cleanup- and AlterThread objects, just deactivate the tasks [#CLICKHOUSE-3862]
Otherwise segfaults are possible when the objects are recreated in the middle of the queue task execution.
2018-07-30 21:47:24 +03:00
VadimPE
3f6cdab293 CLICKHOUSE-3847 add support lost replica 2018-07-30 19:31:14 +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
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
fa776b93c2 Avoid herd effect in ReplicatedMergeTreeCleanupThread [#CLICKHOUSE-2] 2018-04-06 22:43:37 +03:00
Alexey Milovidov
26584844b6 Rewriting ZooKeeper library [#CLICKHOUSE-2] 2018-03-24 04:00:12 +03:00
Silviu Caragea
b24a4b2111 Add back the buggy BackgroundSchedulePool 2018-03-22 17:07:12 +02:00
Alexey Zatelepin
6d5ce3fa9a revert BackgroundSchedulePool usage in Replicated tables 2017-12-22 21:25:54 +03:00
Alexey Milovidov
94d3b49e99 BackgroundSchedulePool: miscellaneous [#CLICKHOUSE-2]. 2017-11-19 03:27:43 +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 Zatelepin
99b2d135df clear deduplication blocks when doing DROP PARTITION [#CLICKHOUSE-3208] 2017-11-15 23:13:10 +03:00
Vitaliy Lyudvichenko
cd3a696d8b Add requested changes. [#CLICKHOUSE-3207] 2017-08-10 23:09:05 +03:00
Vitaliy Lyudvichenko
351a0905d5 Implemented fast block and parts cleaning. [#CLICKHOUSE-3207] 2017-08-10 23:09:05 +03:00
Vitaliy Lyudvichenko
00ce8c9603 Add ctime caching in MergeTree's cleaner. [#CLICKHOUSE-3173] 2017-08-08 03:28:43 +03:00
Vitaliy Lyudvichenko
1e29795cf9 Fix race condition between cleanup and fetch thread. [#CLICKHOUSE-2989]
It was happening during ALTERs.
TODO: stop fetches during ALTER.
2017-05-25 13:08:52 +03:00
f1yegor
0b243a8b01 translate comments 2017-04-16 23:17:32 +03:00
Alexey Milovidov
310736cd7e Moved headers and sources to same place [#CLICKHOUSE-3]. 2017-04-01 12:22:42 +03:00