Commit Graph

320 Commits

Author SHA1 Message Date
Tagir Kuskarov
d916d0849d Add diagnostic messages 2020-06-05 02:10:22 +04:00
Tagir Kuskarov
83ba86c5f6 Fix history bug 2020-06-05 01:31:51 +04:00
Tagir Kuskarov
fed90652c9 Move files 2020-06-04 05:04:57 +04:00
Ivan Blinkov
921b7c7480 partial revert 2020-06-02 22:25:34 +03:00
Ivan Blinkov
711e7d101d experiment 2020-06-02 21:50:55 +03:00
Tagir Kuskarov
643c3cd153 Add syntax highlighting first version 2020-06-02 16:08:09 +04:00
Ivan Blinkov
280eea1e12 fix compiling when disabled 2020-06-02 10:33:11 +03:00
Ivan Blinkov
40f6e559e2 fix compiling when disabled 2020-06-02 08:29:29 +03:00
alexey-milovidov
73a05d9b6d
Update LineReader.h 2020-06-02 06:30:00 +03:00
Alexey Milovidov
38829beb1c Minor updates 2020-06-02 06:28:59 +03:00
Alexey Milovidov
1bbbfc6e1b Fix \G in clickhouse-client multiline mode #9933 2020-06-02 06:25:19 +03:00
Ivan Blinkov
e9a04f7741 more build fixes 2020-06-01 23:48:42 +03:00
Ivan Blinkov
6bd4282727 Merge branch 'master' of github.com:ClickHouse/ClickHouse into sentry 2020-06-01 21:49:56 +03:00
Ivan Blinkov
1797a47a9f fix clang warnings 2020-06-01 21:25:25 +03:00
Alexey Milovidov
7fcfcf201d Fix unit tests under MSan 2020-06-01 20:07:27 +03:00
Ivan Blinkov
acf22bfb19 fix sanitizers build 2020-06-01 19:42:59 +03:00
Ivan Blinkov
3e0811f297 Adapt to recent logging changes 2020-06-01 17:15:14 +03:00
Ivan Blinkov
fcc7ff0ef9 Merge branch 'master' of github.com:ClickHouse/ClickHouse into sentry 2020-06-01 08:42:03 +03:00
alexey-milovidov
9984e989c1
Merge pull request #11317 from ClickHouse/logger-fmt-2
Preparation for structured logging
2020-06-01 00:11:29 +03:00
Alexey Milovidov
d2eb58142e Fix build 2020-05-31 16:51:37 +03:00
Alexey Milovidov
e3dc1d6734 Fix build 2020-05-31 16:50:40 +03:00
Alexey Milovidov
669a15b943 Whitespaces 2020-05-31 16:48:43 +03:00
Alexey Milovidov
b444615404 Compatibility with Arcadia build 2020-05-31 16:47:58 +03:00
Alexey Milovidov
25f941020b Remove namespace pollution 2020-05-31 00:57:37 +03:00
Ivan Blinkov
be94d8454d fix Arcadia build 2020-05-30 13:54:57 +03:00
Ivan Blinkov
52f7b9545b Add http_proxy option 2020-05-30 11:24:21 +03:00
Ivan Blinkov
77d8c9baca Add anonymize option and version tag 2020-05-30 11:02:13 +03:00
Ivan Blinkov
f88b85625a style 2020-05-30 00:36:47 +03:00
Ivan Blinkov
69dedcbe21 Move sending crash reports below logging 2020-05-30 00:28:55 +03:00
Ivan Blinkov
a84123195b adjust comments 2020-05-29 23:08:05 +03:00
Ivan Blinkov
95ee742ee7 merge master 2020-05-29 22:56:10 +03:00
Ivan Blinkov
d9bb3ef91b Add logging and adjust initialization 2020-05-29 22:48:32 +03:00
Alexey Milovidov
e8f52337aa Fix incorrect usage of fmtlib 2020-05-29 03:09:12 +03:00
Ivan Blinkov
52e4a0293d Keep sentry-native in debug mode only under setting 2020-05-27 23:21:53 +03:00
Ivan Blinkov
31123236cb Settings for crash report opt-in 2020-05-27 23:15:33 +03:00
Ivan Blinkov
709b4f42c8 Prototype sending crash reports on segfaults 2020-05-27 22:11:04 +03:00
Alexey Milovidov
2fd48696dc Fix build 2020-05-24 12:50:30 +03:00
Alexey Milovidov
5388693343 Fix Arcadia build 2020-05-24 01:33:29 +03:00
Alexey Milovidov
7e1813825b Return old names of macros 2020-05-24 01:24:01 +03:00
Alexey Milovidov
61cc605ee7 Remove old method 2020-05-24 01:21:29 +03:00
Alexey Milovidov
cd6d3c7509 Progress on task 2020-05-23 22:55:06 +03:00
Alexey Milovidov
f13ccfc8e8 Progress on task 2020-05-23 22:43:13 +03:00
Alexey Milovidov
7e2fb9ad65 Apply all transformations again 2020-05-23 22:38:30 +03:00
Alexey Milovidov
29762240de Remove duplicate whitespaces (preparation) 2020-05-23 22:31:54 +03:00
Alexey Milovidov
1f13515a65 Make all LOG in single line (preparation) 2020-05-23 21:31:37 +03:00
Alexey Milovidov
3a09f9ca1c find {base,src,programs} -name '*.h' -or -name '*.cpp' | xargs grep -l -P 'LOG_[^\W_]+\([^,]+, [^<+)"]+\);' | xargs sed -i -r -e 's/(LOG_[^\W_]+)\(([^,]+), ([^<+)"]+)\);/\1_FORMATTED(\2, \3);/' 2020-05-23 20:29:56 +03:00
Alexey Milovidov
f69cbdcbfc find {base,src,programs} -name '*.h' -or -name '*.cpp' | xargs grep -l -P 'LOG_\w+\([^,]+, "[^"]+" \+ [^+]+\);' | xargs sed -i -r -e 's/(LOG_\w+)\(([^,]+), "([^"]+)" \+ ([^+]+)\);/\1_FORMATTED(\2, "\3{}", \4);/' 2020-05-23 20:09:37 +03:00
Alexey Milovidov
8042e5febe find {base,src,programs} -name '*.h' -or -name '*.cpp' | xargs grep -l -P 'LOG_\w+\([^,]+, "[^"]+" << [^<]+ << "[^"]+" << [^<]+\);' | xargs sed -i -r -e 's/(LOG_\w+)\(([^,]+), "([^"]+)" << ([^<]+) << "([^"]+)" << ([^<]+)\);/\1_FORMATTED(\2, "\3{}\5{}", \4, \6);/' 2020-05-23 19:58:15 +03:00
Alexey Milovidov
e391b77d81 find {base,src,programs} -name '*.h' -or -name '*.cpp' | xargs grep -l -P 'LOG_\w+\([^,]+, "[^"]+" << [^<]+ << "[^"]+"\);' | xargs sed -i -r -e 's/(LOG_\w+)\(([^,]+), "([^"]+)" << ([^<]+) << "([^"]+)"\);/\1_FORMATTED(\2, "\3{}\5", \4);/' 2020-05-23 19:56:05 +03:00
Alexey Milovidov
979e5d77c1 Fix build 2020-05-23 19:53:51 +03:00
Alexey Milovidov
ee4ffbc332 find {base,src,programs} -name '*.h' -or -name '*.cpp' | xargs grep -l -P 'LOG_\w+\([^,]+, "[^"]+" << [^<]+\);' | xargs sed -i -r -e 's/(LOG_\w+)\(([^,]+), "([^"]+)" << ([^<]+)\);/\1_FORMATTED(\2, "\3{}", \4);/' 2020-05-23 19:47:56 +03:00
Alexey Milovidov
8d2e80a5e2 find {base,src,programs} -name '*.h' -or -name '*.cpp' | xargs grep -l -P 'LOG_\w+\([^,]+, "[^"]+"\)' | xargs sed -i -r -e 's/(LOG_\w+)\(([^,]+, "[^"]+")\)/\1_FORMATTED(\2)/' 2020-05-23 19:42:39 +03:00
Alexey Milovidov
3c582fc96f Fix error 2020-05-23 19:42:16 +03:00
Alexey Milovidov
35d79e1252 fmt-style logging, part 1 2020-05-23 19:33:07 +03:00
Vitaly Baranov
d92ac9ea47
Merge branch 'master' into RBAC-10 2020-05-15 14:12:43 +03:00
Ivan
21ce8dbbc3
Fix CH-over-YDB build (#10921) 2020-05-14 22:56:10 +03:00
Vitaly Baranov
6f15a0d443 Improve the function range() to allow iterating through enum values. 2020-05-13 19:40:48 +03:00
Alexey Milovidov
2864012d1b Better support for sanitizers 2020-05-12 06:36:09 +03:00
Alexey Milovidov
365acc65ea Better support for sanitizers 2020-05-12 06:31:53 +03:00
alexey-milovidov
61496384b6
Merge pull request #10809 from Enmk/DateLUTImpl_ctor_fix
Fixed DateLUTImpl constructors to avoid accidental copying
2020-05-11 20:19:44 +03:00
Vasily Nemkov
776ce03777 Fixed DateLUTImpl constructors to avoid accidental copying
Fixed one case of copying DateLUTImpl
2020-05-11 10:42:47 +03:00
Alexey Milovidov
e2b3cf2b52 Remove obsolete suppression 2020-05-11 09:50:38 +03:00
Alexey Milovidov
8db5dcd106 Fix UBSan and MSan report in DateLUT 2020-05-11 07:25:46 +03:00
Alexey Milovidov
6b38005575 Fix build 2020-05-11 01:17:28 +03:00
Alexey Milovidov
3b97b41188 Fix build 2020-05-10 22:28:40 +03:00
Alexey Milovidov
20808de08c Merge remote-tracking branch 'origin/master' into even-more-warnings 2020-05-10 22:28:16 +03:00
Alexey Milovidov
f9ad1e612a Fix build 2020-05-10 08:24:01 +03:00
Alexey Milovidov
bd26547f99 Fix warning 2020-05-10 06:08:56 +03:00
Alexey Milovidov
a7681933cb Asserts in DateLUTImpl 2020-05-10 04:43:26 +03:00
Alexey Milovidov
45b65a462e Better code 2020-05-10 02:33:11 +03:00
Alexey Milovidov
715b6f3617 Better code 2020-05-10 02:31:44 +03:00
Alexey Milovidov
eeaab4ba11 Fix build 2020-05-10 02:22:51 +03:00
Alexey Milovidov
1155b74214 Fixed build 2020-05-10 02:18:18 +03:00
Alexey Milovidov
a576a4fbcd Enable extra warnings for base, utils, programs 2020-05-10 01:59:34 +03:00
Azat Khuzhin
150dd81e3b Fix build with unbundled Poco 2020-05-09 01:22:12 +03:00
Ivan
85d783c247
Poco contrib refactoring (#10396)
* Remove config_common.h
* Refactor libcpuid contrib
* Remove support for libcpuinfo
* Define USE_CPUID in Arcadia
* Refactor Poco libraries
2020-05-08 17:11:19 +03:00
Azat Khuzhin
ed4c7820be Disable buffering of the stderr
There are some 3d party libs that are used by clickhouse that uses
stderr, for example rdkafka, and buffering of rdkafka logs may be a
problem in tests at least.
2020-05-04 18:57:06 +03:00
Azat Khuzhin
f767309574 Ability to set logger level for loggers that have non allowed in xml tags symbols 2020-04-27 21:30:29 +03:00
Alexey Milovidov
08d8c350b7 Fix overflow at beginning of unix epoch for fractional timezones #9335 2020-04-26 19:22:44 +03:00
Alexey Milovidov
58a4d29f40 Fix "odbc-bridge" test 2020-04-25 23:52:45 +03:00
Azat Khuzhin
ac8fb14350 Allow fallback for timezones with unbundled CCTZ in debug
Follow-up-for: #10425
2020-04-23 01:21:50 +03:00
alexey-milovidov
4f6bb00424
Merge pull request #10420 from ClickHouse/clang-tidy-8
Fixes for clang-tidy on clang-10
2020-04-23 00:33:41 +03:00
Alexey Milovidov
3e2b247b6b Check that only embedded timezones are used in Debug build 2020-04-22 20:15:26 +03:00
Alexey Milovidov
91f966610e Do not embed timezones on alien platforms 2020-04-22 20:11:36 +03:00
Alexey Milovidov
45b5afa131 Avoid dependency on system tzdata 2020-04-22 06:17:29 +03:00
Alexey Milovidov
09f91cddae Fixes for clang-tidy on clang-10 2020-04-22 01:04:19 +03:00
alexey-milovidov
fea7ee800a
Merge pull request #10369 from ClickHouse/fix-weird-timezones
Fix for weird timezones
2020-04-20 23:21:52 +03:00
Alexey Milovidov
09dedaeac3 Fix error 2020-04-20 10:49:00 +03:00
Amos Bird
2d08c8e4ab
clang-10 fix 2020-04-20 15:45:37 +08:00
Alexey Milovidov
48d6eb719a Fix error 2020-04-20 10:41:03 +03:00
Alexey Milovidov
860c4a27bd Fix for weird timezones 2020-04-20 10:10:25 +03:00
alexey-milovidov
a551e1f33b
Merge pull request #10343 from azat/colored-logger-name
[RFC] Make logger name colored
2020-04-18 04:15:48 +03:00
Azat Khuzhin
2dbf8ba219 Make logger name colored 2020-04-18 02:32:22 +03:00
alexey-milovidov
17e7d4d88a
Merge pull request #10307 from abyss7/arcadia-4
Changes for auto-sync with Arcadia
2020-04-17 05:08:34 +03:00
Ivan Lezhankin
e230632645 Changes required for auto-sync with Arcadia 2020-04-16 15:31:57 +03:00
Ivan Lezhankin
871d3f2aa0 Move contrib/widecharwidth → base/widechar_width 2020-04-13 18:55:48 +03:00
Ivan Lezhankin
910ab8a265 Move contrib/libpcg-random → base/pcg-random 2020-04-13 18:42:58 +03:00
Alexey Milovidov
860e9092f1 Fixed another inconsistency in partition names 2020-04-13 01:25:41 +03:00
Ivan
f6b31f344d
Add cross-compile build for FreeBSD (#9643)
* Add toolchain to Docker image
2020-04-07 11:33:49 +03:00
Alexey Milovidov
646f409b8e Fix "check style" tool 2020-04-06 02:51:26 +03:00
alexey-milovidov
dffa053471
Merge pull request #9727 from abyss7/jemalloc
Improve jemalloc contrib
2020-04-01 05:37:08 +03:00
alexey-milovidov
4b2edd16ec
Merge pull request #9888 from ClickHouse/better-check-instructions
Better check for available CPU instructions.
2020-03-28 04:28:30 +03:00
Alexey Milovidov
25f08e83c7 Fixed build 2020-03-27 01:28:28 +03:00
alexey-milovidov
f3975e000e
Update BaseDaemon.cpp 2020-03-27 00:03:02 +03:00
Alexey Milovidov
72327d4836 Better check for supported instructions 2020-03-26 13:33:53 +03:00
Alexander Kuzmenkov
1726404625 Some MemorySanitizer fixes 2020-03-26 12:59:25 +03:00
Alexey Milovidov
32652200bf Fix glibc compatibility 2020-03-23 19:51:06 +03:00
alexey-milovidov
c7863e1ac6
Clang Tidy, part 7 (#9799)
* Attempt to enable identifier naming check

* Attempt to enable identifier naming check, continue

* Progress on identifier names

* Adopt identifier names check

* Fixed error

* Merge with master

* Fixed build

* Fixed build

* Fixed build

* Fixed build

* Fixed build

* Fixed error

* Fixed error

* Fixed error
2020-03-23 05:12:31 +03:00
Vitaly Baranov
5eb79c2303 Cast "const char *" to StringRef is now implicit and constexpr. 2020-03-22 11:05:42 +03:00
Vitaly Baranov
598b373b35 Improve ext::scope_guard. 2020-03-22 11:05:42 +03:00
Ivan Lezhankin
362aca365f Merge branch 'master' into jemalloc 2020-03-21 22:50:48 +03:00
Ivan Lezhankin
86cb4811b5 Build shared jemalloc in splitted mode 2020-03-21 22:49:26 +03:00
alexey-milovidov
5645c202e6
Merge pull request #9790 from amosbird/cg
Better cli client
2020-03-21 16:05:20 +03:00
Amos Bird
6fe1839f9e
Better cli client 2020-03-21 13:17:12 +08:00
Alexey Milovidov
fea3ceca05 Fixed error; added a test 2020-03-21 05:52:37 +03:00
Alexey Milovidov
f90f53c986 Fixed error 2020-03-20 21:53:35 +03:00
Alexey Milovidov
a5e3d4efb7 Added most of clang-static-analyzer checks 2020-03-20 21:53:35 +03:00
Alexey Milovidov
3f13464e3d clang-tidy, part 5 2020-03-20 21:53:35 +03:00
Alexander Kuzmenkov
9d9ae00956 Relax a test due to Poco regression.
Poco 1.9.3 has one second precision for mtime, because of this we can
miss an update of a dictionary file if it happens in the same second
we've read the file.

Should probably be fixed by switching to std::filesystem.

Also add some logs because finding out what's going on with dictionary
reloading is borderline impossible.
2020-03-19 19:05:41 +03:00
Alexander Kuzmenkov
1879ac4477 Use strsignal. 2020-03-19 19:05:41 +03:00
Alexander Kuzmenkov
e864b6f338 More logs + build fix. 2020-03-19 19:05:41 +03:00
Ivan
571d0d541c
Improve CCTZ contrib (#9687)
* common/Types.h → common/types.h
  Also split Core/Defines.h and merge with common/likely.h
* Improve cctz contrib
* Fix ALWAYS_INLINE and unbundled build
* Update Dockerfile from master
* Fix test for unbundled library
2020-03-19 13:38:34 +03:00
alexey-milovidov
638d1e6466
Merge pull request #9726 from ClickHouse/text-log-fix-race
Fixed race condition in text_log
2020-03-19 12:52:32 +03:00
alexey-milovidov
a3e78a3b86
Merge pull request #9721 from amosbird/cc
Always prefer case insensitive suggestions
2020-03-19 12:34:16 +03:00
Alexey Milovidov
9cc463b1af Merge branch 'master' of github.com:yandex/ClickHouse into clang-tidy-4 2020-03-18 22:16:07 +03:00
Ivan
38b2dec354
Arcadia (#9729)
* Move getFQDNOrHostName to base/common/
* Add argsToConfig to ya.make
* Add coverage.cpp to ya.make
  Also remove WITH_COVERAGE from config file
2020-03-18 21:54:27 +03:00
Alexey Milovidov
93466ce097 Added even more clang-tidy checks 2020-03-18 19:51:20 +03:00
Ivan Lezhankin
528e42bc4c Improve jemalloc contrib 2020-03-18 15:29:51 +03:00
Alexey Milovidov
36aab47149 Fixed race condition in text_log 2020-03-18 14:59:40 +03:00
Amos Bird
adf4ad6ce3
Always prefer case insensitive suggestions 2020-03-18 13:27:56 +08:00
Alexey Milovidov
1bd7e594b0 clang-tidy, part 2 2020-03-18 03:57:00 +03:00
Ivan
23c617cfea
Add stubs for ya.make (#9644)
Mirror from arcadia
2020-03-13 16:07:23 +03:00
Ivan
b7ef5a699c
Move FastMemcpy to contribs (#9219)
* Get rid of non-existent vectorclass
* Move FastMemcpy to contribs
* Restore comments
* Disable FastMemcpy on non-Linux
* Fix cmake file
* Don't build FastMemcpy for ARM64
* Replace FastMemcpy submodule with its contents
* Fix cmake file
* Move widechar_width to contrib/
* Move sumbur to contrib/
* Move consistent-hashing to contrib/
* Fix UBSan tests
2020-03-13 01:26:16 +03:00
Alexey Milovidov
9f38cb768f Fixed build 2020-03-11 10:19:44 +03:00
Alexey Milovidov
d3aa0e8ed8 clang-tidy, part 14 2020-03-09 04:59:08 +03:00
Alexey Milovidov
7334c13de9 clang-tidy, part 13 2020-03-09 04:50:33 +03:00
Alexey Milovidov
7a7e45e248 clang-tidy, part 1 2020-03-09 00:04:10 +03:00
Alexey Milovidov
de67bd78bd Added some clang-tidy checks 2020-03-08 23:17:49 +03:00
Alexey Milovidov
c968e55da7 Miscellaneous #9409 2020-03-05 23:00:49 +03:00
Alexey Milovidov
5696806426 Translate a comment in mysqlxx #4904 2020-03-05 22:55:39 +03:00
alexey-milovidov
3645375f71
Merge pull request #9409 from clemrodriguez/mysqlxx-share-connection
Mysqlxx share connection for external dictionaries only
2020-03-05 22:43:23 +03:00
alexey-milovidov
2cfe26c3d3
Merge pull request #9472 from ClickHouse/memory-profiler-fix
Fixed wrong code around Memory Profiler
2020-03-03 15:16:45 +03:00
Alexey Milovidov
5b06842723 Remove excessive empty lines 2020-03-03 05:43:59 +03:00
Alexey Milovidov
8d679b570a Implemented unwind info for __syscall function 2020-03-03 05:29:51 +03:00
Alexey Milovidov
826f6a65c4 Remove weak aliases from musl 2020-03-03 04:59:57 +03:00
Alexey Milovidov
dc086b20a9 Fixed wrong code around Memory Profiler 2020-03-03 03:24:44 +03:00
Clément Rodriguez
3f82059536 Fixed some encoding style issues 2020-03-02 18:21:46 +01:00
Alexey Milovidov
7c13b65e41 Save errno in signal handlers 2020-03-01 17:23:43 +03:00
alexey-milovidov
c402cb5951
Merge pull request #9450 from azat/replxx-readline-compat
clickhouse-client: bind C-p/C-n to history-previous/history-next (like readline)
2020-02-29 20:54:06 +03:00
Azat Khuzhin
4fe24488e8 Bind C-p/C-n to history-previous/history-next like readline in clickhouse-client with replxx
It is not easy to keep in mind that C-p/C-n is not
history-previous/history-next in replxx, thus it is pretty easy to
mistype.

Previous COMPLETE_NEXT/COMPLETE_PREV bindings has been binded to the
M-P/M-N (that was used for HISTORY_COMMON_PREFIX_SEARCH before, but it
also binded to M-p/M-n).

Plus clickhouse-client can be compiled with readline, so it is better to
make bindings the same.
2020-02-28 23:50:46 +03:00
Alexey Milovidov
8d51824ddc getThreadId for FreeBSD 2020-02-28 14:24:56 +03:00
Clément Rodriguez
491f454b54 MySQL connection mutualize connection + integration test 2020-02-27 10:34:06 +01:00
Amos Bird
ce28d2eb82
Better cmdline client 2020-02-26 02:40:52 +08:00
Clément Rodriguez
94d3802baa Merge branch 'master' of https://github.com/clemrodriguez/ClickHouse 2020-02-24 15:28:46 +01:00
Clément Rodriguez
a978662a01 Merge remote-tracking branch 'upstream/master' 2020-02-24 15:28:24 +01:00
Amos Bird
e23b15f78e
add USE_DEBUG_HELPERS flag to enable DUMP 2020-02-24 08:44:38 +08:00
Amos Bird
693cf211fa
Build fix 2020-02-22 16:44:23 +08:00
Amos Bird
f5d6043a5d
Strict aliasing in c++20 2020-02-22 13:46:35 +08:00
Alexey Milovidov
b55ba35731
More strict aliasing 2020-02-22 10:17:25 +08:00
Alexey Milovidov
e1b3c58746
More strict aliasing 2020-02-22 10:17:24 +08:00
Alexey Milovidov
5f9a56a38a Colorize logs that are send to client with "send_logs_level" setting 2020-02-21 23:01:38 +03:00
Alexey Milovidov
430c02d477 Do not color logs by default if stderr is not a tty 2020-02-21 22:17:03 +03:00
Clément Rodriguez
1f275c965f Rebase with upstream/master 2020-02-20 16:32:05 +01:00
Clément Rodriguez
cdd99d7f23 Merge 2020-02-19 15:23:17 +01:00
Alexey Milovidov
d79b526cdb Merge branch 'master' of github.com:yandex/ClickHouse 2020-02-17 23:54:57 +03:00
Alexey Milovidov
c76ff369bb Fix check-style #9161 2020-02-17 22:09:56 +03:00
Ivan Lezhankin
102dad0ca0 Merge branch 'master' into arcadia 2020-02-17 17:37:10 +03:00
Ivan Lezhankin
39ea079034 More clean-up 2020-02-17 17:27:09 +03:00
Ivan Lezhankin
4cedd4619d Code clean-up 2020-02-16 11:04:03 +03:00
Ivan Lezhankin
2d44fa59b5 libs/ → base/ 2020-02-14 17:48:30 +03:00