Commit Graph

90 Commits

Author SHA1 Message Date
Pradeep Chhetri
4941fdfe4b Fix some spelling mistakes 2020-01-11 17:51:33 +08:00
Vitaly Baranov
037eb85972 Automatic removing of config repositories to simplify the code. 2019-12-31 06:30:27 +07:00
Vitaly Baranov
1fa64a2a86 Use separate variables for the database and name in dictionaries. 2019-12-29 23:48:10 +07:00
alexey-milovidov
0d119a40eb
Merge pull request #8240 from vitlibar/sync-system-reload-dictionary
Synchronous system reload dictionary
2019-12-20 20:00:03 +03:00
Vitaly Baranov
41b0ba98dd SYSTEM RELOAD db.dict syntax is now supported. 2019-12-19 03:38:24 +03:00
Vitaly Baranov
68187b5e08 Getting from a dictionary isn't blocked until SYSTEM RELOAD is finished. 2019-12-19 03:22:58 +03:00
Vitaly Baranov
d0d5c72e4d Reloading of a dictionary now waits for results and shows errors.
Clearer names for load and reload functions in ExternalLoader.
2019-12-17 13:45:47 +03:00
alesapin
a2180b0bb3 Merge branch 'master' into restrictions_for_external_dictionaries_from_ddl 2019-12-16 23:07:16 +03:00
Vitaly Baranov
4c157007f5 Refactoring of using ExternalLoader in dictionary DDL:
Instead of using ExternalLoader::reload() now it's used reloadConfig() which reloads only what necessary.
Functions attachDictionary() and detachDictionary() are simplified and have lesser number of parameters.
Instead of injecting into LoadablesConfigReader's internals for creating dictionary a temp repository is used.
2019-12-12 21:45:58 +03:00
alesapin
3229261c91 Fix dictionary_source check 2019-12-11 14:09:21 +03:00
alesapin
de6cd490ef
Merge pull request #8037 from vitlibar/system-reload-dictionary-causes-complete-reloading
SYSTEM RELOAD DICTIONARY reloads a dictionary completely
2019-12-06 12:55:41 +03:00
Vitaly Baranov
c733e5b50b Add functions for writing std::chrono to string. 2019-12-05 21:03:57 +03:00
Vitaly Baranov
9b44848179 SYSTEM RELOAD DICTIONARY now reloads a dictionary with update_field completely. 2019-12-05 19:45:05 +03:00
alesapin
7b8443710d Better code 2019-12-04 19:20:24 +03:00
alesapin
40c6966223 Don't check dictionary modification if it's already have an exception. 2019-12-04 18:23:18 +03:00
alesapin
a41764cccc Reload dictionary with invalidate query if it has exception 2019-12-04 17:45:56 +03:00
alexey-milovidov
3355492f02
Merge pull request #7983 from ClickHouse/fix_dictionary_lifetime
Fix bug with minimal dictionary lifetime equals zero
2019-12-03 02:32:38 +03:00
alesapin
7410d17892 Fix bug with minimal dictionary lifetime equals zero 2019-12-02 16:05:43 +03:00
Azat Khuzhin
4530adee76 Do not reload *all* dictionaries on CREATE DATABASE
This ignores any lifetime, while dictionaries can be quite big.

Fixes: c7cd911305 ("Merge pull request #7360")
Refs: https://github.com/ClickHouse/ClickHouse/pull/7360#discussion_r345207682
2019-11-26 10:33:25 +03:00
alesapin
c3519ff376 Better check of dictionary lifetime for updates 2019-10-23 16:02:40 +03:00
alesapin
6a0246f58e Fix if 2019-10-23 12:40:09 +03:00
alesapin
0abb2e538b Remove strange logic 2019-10-23 12:36:20 +03:00
alesapin
fb349757ba Fix ubsan error 2019-10-23 12:27:34 +03:00
alesapin
dc6090a2ac More readable code in external loader 2019-10-22 16:41:17 +03:00
alesapin
ae42dd1cea Better doLoading locking logic 2019-10-22 15:57:58 +03:00
alesapin
f7043c38bd Less diff 2019-10-21 17:20:42 +03:00
alesapin
fc05110d66 Better naming 2019-10-21 17:07:47 +03:00
alesapin
e4a936cf41 Fix add and reload 2019-10-21 16:54:23 +03:00
alesapin
cdc195727e Fix some races from lazy load and add ugly interface to loader (need to be refactored) 2019-10-18 19:04:09 +03:00
alesapin
c29b39002d Fix race condition, add test 2019-10-17 20:36:53 +03:00
alesapin
05392fd882 Fix deadlock, add test and refactoring 2019-10-17 20:18:54 +03:00
alesapin
6dfe5c7142 Better introspection 2019-10-17 16:05:12 +03:00
alesapin
3987a45ea2 Fix build and style 2019-10-17 12:05:48 +03:00
alesapin
a19a699bef Fix confused variables 2019-10-16 20:52:56 +03:00
alesapin
01e23f0a22 Better load of dictionaries 2019-10-16 20:06:52 +03:00
alesapin
b4e0ded048 Almost working 2019-10-16 17:59:52 +03:00
alesapin
e690a3ca32 Half working code 2019-10-15 21:04:17 +03:00
alesapin
8429f46f3c Return getUpdateTime method to interface 2019-10-01 11:58:47 +03:00
alesapin
08681ac210 Preparation for AST configurations for external dictionaries 2019-09-30 19:12:08 +03:00
alesapin
bc6caba4db Remove redundant argument 2019-09-30 14:18:01 +03:00
alesapin
9ee031413c Remove a lot of unused code 2019-09-27 15:36:54 +03:00
alesapin
bba3a96ff4 Remove redundant argument 2019-09-26 20:24:55 +03:00
alesapin
0e28dc4e51 Remove redundant classes 2019-09-26 19:12:15 +03:00
alesapin
903f826640 Remove runtime factory and remove one redundant object 2019-09-26 13:08:38 +03:00
Vitaly Baranov
da8f67123f Improve error handling in cache dictionaries:
allow using expired values while the source of a cache dictionary doesn't respond;
clone the source after an error to reset connections;
don't ask the source for a little time after error;
show the last exception in system.dictionaries for a cache dictionary too.
2019-08-30 12:50:38 +03:00
Nikolai Kochetov
2ae3db7920 Merged with master. 2019-08-09 18:32:44 +03:00
Vitaly Baranov
e64f8e606d Add comments. 2019-07-20 00:04:19 +03:00
alexey-milovidov
f18e9592a1 Update ExternalLoader.cpp 2019-07-20 00:03:57 +03:00
Vitaly Baranov
5b879e143f Fix segfault in ExternalLoader::reloadOutdated(). 2019-07-20 00:03:25 +03:00
Vitaly Baranov
6d563c51e6 Remove unnecessary try-catch in the constructors of classes derived from IExternalLoadable. 2019-07-17 11:39:36 +03:00