From c0277a6b90b13d7dc1374024553de3cf2e73d8c4 Mon Sep 17 00:00:00 2001 From: hubertdeng123 Date: Wed, 1 May 2024 16:51:19 -0700 Subject: [PATCH 1/9] upgrade clickhouse --- clickhouse/config.xml | 8 ++------ docker-compose.yml | 2 +- install.sh | 1 + install/detect-platform.sh | 2 -- install/upgrade-clickhouse.sh | 13 +++++++++++++ 5 files changed, 17 insertions(+), 9 deletions(-) create mode 100644 install/upgrade-clickhouse.sh diff --git a/clickhouse/config.xml b/clickhouse/config.xml index d26bfbb385..8798446895 100644 --- a/clickhouse/config.xml +++ b/clickhouse/config.xml @@ -1,10 +1,6 @@ - - - - + + warning true diff --git a/docker-compose.yml b/docker-compose.yml index c7457b3f9e..1c6c2ad0eb 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -217,7 +217,7 @@ services: build: context: ./clickhouse args: - BASE_IMAGE: "${CLICKHOUSE_IMAGE:-}" + BASE_IMAGE: "altinity/clickhouse-server:23.8.11.29.altinitystable" ulimits: nofile: soft: 262144 diff --git a/install.sh b/install.sh index 53c80cdeff..1998844972 100755 --- a/install.sh +++ b/install.sh @@ -28,6 +28,7 @@ source install/check-memcached-backend.sh source install/ensure-relay-credentials.sh source install/generate-secret-key.sh source install/update-docker-images.sh +source install/upgrade-clickhouse.sh source install/build-docker-images.sh source install/install-wal2json.sh source install/bootstrap-snuba.sh diff --git a/install/detect-platform.sh b/install/detect-platform.sh index 32ef5ea1cd..7404008f41 100644 --- a/install/detect-platform.sh +++ b/install/detect-platform.sh @@ -20,10 +20,8 @@ fi export DOCKER_ARCH=$(docker info --format '{{.Architecture}}') if [[ "$DOCKER_ARCH" = "x86_64" ]]; then export DOCKER_PLATFORM="linux/amd64" - export CLICKHOUSE_IMAGE="altinity/clickhouse-server:21.8.13.1.altinitystable" elif [[ "$DOCKER_ARCH" = "aarch64" ]]; then export DOCKER_PLATFORM="linux/arm64" - export CLICKHOUSE_IMAGE="altinity/clickhouse-server:21.8.12.29.altinitydev.arm" else echo "FAIL: Unsupported docker architecture $DOCKER_ARCH." exit 1 diff --git a/install/upgrade-clickhouse.sh b/install/upgrade-clickhouse.sh new file mode 100644 index 0000000000..aaac364aec --- /dev/null +++ b/install/upgrade-clickhouse.sh @@ -0,0 +1,13 @@ +echo "${_group}Upgrading Clickhouse ..." + +# In order to get to 23.8, we need to first upgrade go from 21.8 -> 22.8 -> 23.3 -> 23.8 +$dc up -d clickhouse +version=$($dc exec -it clickhouse clickhouse-client -q 'SELECT version()') +if [[ "$version" == "22.8.15.25.altinitystable" || "$version" == "21.8.12.29.altinitydev.arm" ]]; then + $dc down clickhouse + $dcb --build-arg BASE_IMAGE=altinity/clickhouse-server:22.8.15.25.altinitystable clickhouse + $dc up -d clickhouse + $dc down clickhouse + $dcb --build-arg BASE_IMAGE=altinity/clickhouse-server:23.3.19.33.altinitystable clickhouse +fi +$dc down clickhouse \ No newline at end of file From be7adccae45f13bcdba8389f3575ee01f8f97e36 Mon Sep 17 00:00:00 2001 From: hubertdeng123 Date: Wed, 1 May 2024 16:52:03 -0700 Subject: [PATCH 2/9] add newline --- install/upgrade-clickhouse.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/upgrade-clickhouse.sh b/install/upgrade-clickhouse.sh index aaac364aec..d9fafdedf1 100644 --- a/install/upgrade-clickhouse.sh +++ b/install/upgrade-clickhouse.sh @@ -10,4 +10,4 @@ if [[ "$version" == "22.8.15.25.altinitystable" || "$version" == "21.8.12.29.alt $dc down clickhouse $dcb --build-arg BASE_IMAGE=altinity/clickhouse-server:23.3.19.33.altinitystable clickhouse fi -$dc down clickhouse \ No newline at end of file +$dc down clickhouse From 4cf5b79cc5c495ac9275e0c663ae046bdf0dacb9 Mon Sep 17 00:00:00 2001 From: hubertdeng123 Date: Thu, 2 May 2024 12:09:26 -0700 Subject: [PATCH 3/9] check to see if it is an upgrade --- install.sh | 2 +- install/upgrade-clickhouse.sh | 19 +++++++++++-------- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/install.sh b/install.sh index 1998844972..df048118a6 100755 --- a/install.sh +++ b/install.sh @@ -22,13 +22,13 @@ source install/check-minimum-requirements.sh # Let's go! Start impacting things. source install/turn-things-off.sh source install/update-docker-volume-permissions.sh +source install/upgrade-clickhouse.sh source install/create-docker-volumes.sh source install/ensure-files-from-examples.sh source install/check-memcached-backend.sh source install/ensure-relay-credentials.sh source install/generate-secret-key.sh source install/update-docker-images.sh -source install/upgrade-clickhouse.sh source install/build-docker-images.sh source install/install-wal2json.sh source install/bootstrap-snuba.sh diff --git a/install/upgrade-clickhouse.sh b/install/upgrade-clickhouse.sh index d9fafdedf1..aeb8cd2b2f 100644 --- a/install/upgrade-clickhouse.sh +++ b/install/upgrade-clickhouse.sh @@ -1,13 +1,16 @@ echo "${_group}Upgrading Clickhouse ..." -# In order to get to 23.8, we need to first upgrade go from 21.8 -> 22.8 -> 23.3 -> 23.8 -$dc up -d clickhouse -version=$($dc exec -it clickhouse clickhouse-client -q 'SELECT version()') -if [[ "$version" == "22.8.15.25.altinitystable" || "$version" == "21.8.12.29.altinitydev.arm" ]]; then - $dc down clickhouse - $dcb --build-arg BASE_IMAGE=altinity/clickhouse-server:22.8.15.25.altinitystable clickhouse +# First check to see if user is upgrading by checking for existing clickhouse volume +if [[ -n "$(docker volume ls -q --filter name=sentry-clickhouse)" ]]; then + # In order to get to 23.8, we need to first upgrade go from 21.8 -> 22.8 -> 23.3 -> 23.8 $dc up -d clickhouse + version=$($dc exec -it clickhouse clickhouse-client -q 'SELECT version()') + if [[ "$version" == "22.8.15.25.altinitystable" || "$version" == "21.8.12.29.altinitydev.arm" ]]; then + $dc down clickhouse + $dcb --build-arg BASE_IMAGE=altinity/clickhouse-server:22.8.15.25.altinitystable clickhouse + $dc up -d clickhouse + $dc down clickhouse + $dcb --build-arg BASE_IMAGE=altinity/clickhouse-server:23.3.19.33.altinitystable clickhouse + fi $dc down clickhouse - $dcb --build-arg BASE_IMAGE=altinity/clickhouse-server:23.3.19.33.altinitystable clickhouse fi -$dc down clickhouse From ffc1e1ecd1fad6c4b68b49b88933e7877810136e Mon Sep 17 00:00:00 2001 From: hubertdeng123 Date: Thu, 2 May 2024 12:43:21 -0700 Subject: [PATCH 4/9] get rid of -it option --- install/upgrade-clickhouse.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/upgrade-clickhouse.sh b/install/upgrade-clickhouse.sh index aeb8cd2b2f..a3f6987d2b 100644 --- a/install/upgrade-clickhouse.sh +++ b/install/upgrade-clickhouse.sh @@ -4,7 +4,7 @@ echo "${_group}Upgrading Clickhouse ..." if [[ -n "$(docker volume ls -q --filter name=sentry-clickhouse)" ]]; then # In order to get to 23.8, we need to first upgrade go from 21.8 -> 22.8 -> 23.3 -> 23.8 $dc up -d clickhouse - version=$($dc exec -it clickhouse clickhouse-client -q 'SELECT version()') + version=$($dc exec clickhouse clickhouse-client -q 'SELECT version()') if [[ "$version" == "22.8.15.25.altinitystable" || "$version" == "21.8.12.29.altinitydev.arm" ]]; then $dc down clickhouse $dcb --build-arg BASE_IMAGE=altinity/clickhouse-server:22.8.15.25.altinitystable clickhouse From 8bf4edcdb2cd5d876b89ba088bc890127cf43cbd Mon Sep 17 00:00:00 2001 From: hubertdeng123 Date: Thu, 2 May 2024 13:25:50 -0700 Subject: [PATCH 5/9] wait for clickhouse to come up --- install/upgrade-clickhouse.sh | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/install/upgrade-clickhouse.sh b/install/upgrade-clickhouse.sh index a3f6987d2b..2185f13f6c 100644 --- a/install/upgrade-clickhouse.sh +++ b/install/upgrade-clickhouse.sh @@ -4,6 +4,14 @@ echo "${_group}Upgrading Clickhouse ..." if [[ -n "$(docker volume ls -q --filter name=sentry-clickhouse)" ]]; then # In order to get to 23.8, we need to first upgrade go from 21.8 -> 22.8 -> 23.3 -> 23.8 $dc up -d clickhouse + + # Wait for clickhouse + RETRIES=30 + until $dc ps clickhouse | grep 'healthy' || [ $RETRIES -eq 0 ]; do + echo "Waiting for clickhouse server, $((RETRIES--)) remaining attempts..." + sleep 1 + done + version=$($dc exec clickhouse clickhouse-client -q 'SELECT version()') if [[ "$version" == "22.8.15.25.altinitystable" || "$version" == "21.8.12.29.altinitydev.arm" ]]; then $dc down clickhouse From 3b4c94f3cdecb3d4323473515765707a6124966c Mon Sep 17 00:00:00 2001 From: hubertdeng123 Date: Fri, 3 May 2024 09:26:28 -0700 Subject: [PATCH 6/9] fix hard stops on upgrade --- install.sh | 2 +- install/upgrade-clickhouse.sh | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/install.sh b/install.sh index df048118a6..6b2040cb49 100755 --- a/install.sh +++ b/install.sh @@ -20,9 +20,9 @@ source install/check-latest-commit.sh source install/check-minimum-requirements.sh # Let's go! Start impacting things. +source install/upgrade-clickhouse.sh source install/turn-things-off.sh source install/update-docker-volume-permissions.sh -source install/upgrade-clickhouse.sh source install/create-docker-volumes.sh source install/ensure-files-from-examples.sh source install/check-memcached-backend.sh diff --git a/install/upgrade-clickhouse.sh b/install/upgrade-clickhouse.sh index 2185f13f6c..79da12dd3c 100644 --- a/install/upgrade-clickhouse.sh +++ b/install/upgrade-clickhouse.sh @@ -2,7 +2,7 @@ echo "${_group}Upgrading Clickhouse ..." # First check to see if user is upgrading by checking for existing clickhouse volume if [[ -n "$(docker volume ls -q --filter name=sentry-clickhouse)" ]]; then - # In order to get to 23.8, we need to first upgrade go from 21.8 -> 22.8 -> 23.3 -> 23.8 + # Start clickhouse if it is not already running $dc up -d clickhouse # Wait for clickhouse @@ -12,6 +12,7 @@ if [[ -n "$(docker volume ls -q --filter name=sentry-clickhouse)" ]]; then sleep 1 done + # In order to get to 23.8, we need to first upgrade go from 21.8 -> 22.8 -> 23.3 -> 23.8 version=$($dc exec clickhouse clickhouse-client -q 'SELECT version()') if [[ "$version" == "22.8.15.25.altinitystable" || "$version" == "21.8.12.29.altinitydev.arm" ]]; then $dc down clickhouse @@ -22,3 +23,4 @@ if [[ -n "$(docker volume ls -q --filter name=sentry-clickhouse)" ]]; then fi $dc down clickhouse fi +echo "${_endgroup}" From 369873c5af3a8e4ce9a5852e494fb05980c87281 Mon Sep 17 00:00:00 2001 From: hubertdeng123 Date: Fri, 3 May 2024 09:43:32 -0700 Subject: [PATCH 7/9] add message about skipping clickhouse upgrades --- install/upgrade-clickhouse.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/install/upgrade-clickhouse.sh b/install/upgrade-clickhouse.sh index 79da12dd3c..91751868cb 100644 --- a/install/upgrade-clickhouse.sh +++ b/install/upgrade-clickhouse.sh @@ -14,12 +14,14 @@ if [[ -n "$(docker volume ls -q --filter name=sentry-clickhouse)" ]]; then # In order to get to 23.8, we need to first upgrade go from 21.8 -> 22.8 -> 23.3 -> 23.8 version=$($dc exec clickhouse clickhouse-client -q 'SELECT version()') - if [[ "$version" == "22.8.15.25.altinitystable" || "$version" == "21.8.12.29.altinitydev.arm" ]]; then + if [[ "$version" == "21.8.13.1.altinitystable" || "$version" == "21.8.12.29.altinitydev.arm" ]]; then $dc down clickhouse $dcb --build-arg BASE_IMAGE=altinity/clickhouse-server:22.8.15.25.altinitystable clickhouse $dc up -d clickhouse $dc down clickhouse $dcb --build-arg BASE_IMAGE=altinity/clickhouse-server:23.3.19.33.altinitystable clickhouse + else + echo "Detected clickhouse version $version. Skipping upgrades!" fi $dc down clickhouse fi From 7f15b3cbfd222818f2ad9dd293d5817ba3f8a345 Mon Sep 17 00:00:00 2001 From: hubertdeng123 Date: Fri, 3 May 2024 10:53:02 -0700 Subject: [PATCH 8/9] add comment about upgrading clickhouse version --- install.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/install.sh b/install.sh index 6b2040cb49..f418a29fc1 100755 --- a/install.sh +++ b/install.sh @@ -20,6 +20,8 @@ source install/check-latest-commit.sh source install/check-minimum-requirements.sh # Let's go! Start impacting things. +# Upgrading clickhouse needs to come first before turning things off, since we need the old clickhouse image +# in order to determine whether or not the clickhouse version needs to be upgraded. source install/upgrade-clickhouse.sh source install/turn-things-off.sh source install/update-docker-volume-permissions.sh From 28196c229e4a4ad37eb9ff5d50f86b2b2336091a Mon Sep 17 00:00:00 2001 From: hubertdeng123 Date: Fri, 3 May 2024 15:33:43 -0700 Subject: [PATCH 9/9] the fix --- install/upgrade-clickhouse.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/install/upgrade-clickhouse.sh b/install/upgrade-clickhouse.sh index 91751868cb..b0a8027b34 100644 --- a/install/upgrade-clickhouse.sh +++ b/install/upgrade-clickhouse.sh @@ -23,6 +23,5 @@ if [[ -n "$(docker volume ls -q --filter name=sentry-clickhouse)" ]]; then else echo "Detected clickhouse version $version. Skipping upgrades!" fi - $dc down clickhouse fi echo "${_endgroup}"