From 6606aabedd75ee7bca5243678282162e3e4dc92d Mon Sep 17 00:00:00 2001 From: Alex Vanin Date: Fri, 26 May 2023 09:53:41 +0300 Subject: [PATCH] [#10] Rework new epoch tick during AIO initialization Previous implementation from #3 was based on a sleep counter. This solution is not reliable, because sometimes sleep duration is not enough for the storage node to send bootstrap request. New implementation checks network status of the node and ticks new epoch until node enters in the network map. Signed-off-by: Alex Vanin --- bin/init-aio.sh | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/bin/init-aio.sh b/bin/init-aio.sh index 2572014..ec81ea7 100755 --- a/bin/init-aio.sh +++ b/bin/init-aio.sh @@ -45,10 +45,14 @@ runServices() { while [[ -z "$(/usr/bin/frostfs-cli control healthcheck --endpoint localhost:16513 -c /config/cli-cfg-sn.yaml | grep 'Health status: READY')" ]]; do - sleep 5; + sleep 2 done - /usr/bin/frostfs-adm morph force-new-epoch --config /config/frostfs-adm.yml || die "Failed to update epoch" + while [[ -z "$(/usr/bin/frostfs-cli control healthcheck --endpoint localhost:16513 -c /config/cli-cfg-sn.yaml | grep 'Network status: ONLINE')" ]]; + do + /usr/bin/frostfs-adm morph force-new-epoch --config /config/frostfs-adm.yml || die "Failed to update epoch" + sleep 2 + done /usr/bin/frostfs-s3-gw --config /config/s3-gw-config.yaml & /usr/bin/frostfs-http-gw --config /config/http-gw-config.yaml &