From 6e977913488aefd085e56f2be51b811a0cfb04bd Mon Sep 17 00:00:00 2001 From: Alexey Milovidov Date: Tue, 28 Aug 2018 20:07:01 +0300 Subject: [PATCH 1/2] Updated ZooKeeper admin tips [#CLICKHOUSE-3] --- docs/en/operations/tips.md | 2 ++ docs/ru/operations/tips.md | 2 ++ 2 files changed, 4 insertions(+) diff --git a/docs/en/operations/tips.md b/docs/en/operations/tips.md index 08083b3705b..13668a8082e 100644 --- a/docs/en/operations/tips.md +++ b/docs/en/operations/tips.md @@ -107,6 +107,8 @@ You are probably already using ZooKeeper for other purposes. You can use the sam It's best to use a fresh version of ZooKeeper – 3.4.9 or later. The version in stable Linux distributions may be outdated. +Do not run ZooKeeper on the same servers as ClickHouse. Because ZooKeeper is very sensitive for latency and ClickHouse may utilize all available system resources. + With the default settings, ZooKeeper is a time bomb: > The ZooKeeper server won't delete files from old snapshots and logs when using the default configuration (see autopurge), and this is the responsibility of the operator. diff --git a/docs/ru/operations/tips.md b/docs/ru/operations/tips.md index a1ddc9246e5..84939dcb540 100644 --- a/docs/ru/operations/tips.md +++ b/docs/ru/operations/tips.md @@ -107,6 +107,8 @@ XFS также подходит, но не так тщательно проте Лучше использовать свежую версию ZooKeeper, как минимум 3.4.9. Версия в стабильных дистрибутивах Linux может быть устаревшей. +Не следует запускать ZooKeeper на тех же серверах, что и ClickHouse. Потому что ZooKeeper чувствителен к latency, тогда как ClickHouse легко может нагрузить все ресурсы сервера. + Никогда не используете написанные вручную скрипты для переноса данных между разными ZooKeeper кластерами, потому что результат будет некорректный для sequential нод. Никогда не используйте утилиту "zkcopy", по той же причине: https://github.com/ksprojects/zkcopy/issues/15 Если вы хотите разделить существующий ZooKeeper кластер на два, правильный способ - увеличить количество его реплик, а затем переконфигурировать его как два независимых кластера. From c4f6bb1de07751d3254de3d0dda4d7de05a3ce1c Mon Sep 17 00:00:00 2001 From: proller Date: Tue, 28 Aug 2018 20:53:12 +0300 Subject: [PATCH 2/2] Fix contrib/zlib build --- cmake/find_zlib.cmake | 9 --------- contrib/CMakeLists.txt | 10 ++++++++++ 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/cmake/find_zlib.cmake b/cmake/find_zlib.cmake index 0e198c9bb0f..6bf39561487 100644 --- a/cmake/find_zlib.cmake +++ b/cmake/find_zlib.cmake @@ -15,15 +15,6 @@ if (NOT ZLIB_FOUND) endif () set (USE_INTERNAL_ZLIB_LIBRARY 1) - set (ZLIB_COMPAT 1) # for zlib-ng, also enables WITH_GZFILEOP - set (WITH_NATIVE_INSTRUCTIONS ${ARCHNATIVE}) - if (OS_FREEBSD OR ARCH_I386) - set (WITH_OPTIM 0 CACHE INTERNAL "") # Bug in assembler - endif () - if (ARCH_AARCH64) - set(WITH_NEON 1 CACHE INTERNAL "") - set(WITH_ACLE 1 CACHE INTERNAL "") - endif () set (ZLIB_INCLUDE_DIR "${ClickHouse_SOURCE_DIR}/contrib/${INTERNAL_ZLIB_NAME}" "${ClickHouse_BINARY_DIR}/contrib/${INTERNAL_ZLIB_NAME}") # generated zconf.h set (ZLIB_INCLUDE_DIRS ${ZLIB_INCLUDE_DIR}) # for poco set (ZLIB_FOUND 1) # for poco diff --git a/contrib/CMakeLists.txt b/contrib/CMakeLists.txt index d31e0763da1..51d56e233a4 100644 --- a/contrib/CMakeLists.txt +++ b/contrib/CMakeLists.txt @@ -54,6 +54,16 @@ if (USE_INTERNAL_UNWIND_LIBRARY) endif () if (USE_INTERNAL_ZLIB_LIBRARY) + set (ZLIB_COMPAT 1 CACHE INTERNAL "") # also enables WITH_GZFILEOP + set (WITH_NATIVE_INSTRUCTIONS ${ARCHNATIVE} CACHE INTERNAL "") + if (OS_FREEBSD OR ARCH_I386) + set (WITH_OPTIM 0 CACHE INTERNAL "") # Bug in assembler + endif () + if (ARCH_AARCH64) + set(WITH_NEON 1 CACHE INTERNAL "") + set(WITH_ACLE 1 CACHE INTERNAL "") + endif () + add_subdirectory (${INTERNAL_ZLIB_NAME}) # todo: make pull to Dead2/zlib-ng and remove: # We should use same defines when including zlib.h as used when zlib compiled