Skip to content

Commit cfa0798

Browse files
authored
Add configurable limit to number of pings during inflxudb startup. (#488)
1 parent cb21ee0 commit cfa0798

File tree

4 files changed

+14
-4
lines changed

4 files changed

+14
-4
lines changed

influxdb/2.0/Dockerfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,3 +59,4 @@ EXPOSE 8086
5959

6060
ENV INFLUX_CONFIGS_PATH /etc/influxdb2/influx-configs
6161
ENV INFLUXD_INIT_PORT 9999
62+
ENV INFLUXD_INIT_PING_ATTEMPTS 600

influxdb/2.0/alpine/Dockerfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,3 +70,4 @@ EXPOSE 8086
7070

7171
ENV INFLUX_CONFIGS_PATH /etc/influxdb2/influx-configs
7272
ENV INFLUXD_INIT_PORT 9999
73+
ENV INFLUXD_INIT_PING_ATTEMPTS 600

influxdb/2.0/alpine/entrypoint.sh

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ function upgrade_influxd () {
159159
function wait_for_influxd () {
160160
local -r influxd_pid=$1
161161
local ping_count=0
162-
while kill -0 "${influxd_pid}"; do
162+
while kill -0 "${influxd_pid}" && [ ${ping_count} -lt ${INFLUXD_INIT_PING_ATTEMPTS} ]; do
163163
sleep 1
164164
log info "pinging influxd..." ping_attempt ${ping_count}
165165
ping_count=$((ping_count+1))
@@ -168,7 +168,11 @@ function wait_for_influxd () {
168168
return
169169
fi
170170
done
171-
log error "influxd crashed during startup" total_pings ${ping_count}
171+
if [ ${ping_count} -eq ${INFLUXD_INIT_PING_ATTEMPTS} ]; then
172+
log error "influxd took too long to start up" total_pings ${ping_count}
173+
else
174+
log error "influxd crashed during startup" total_pings ${ping_count}
175+
fi
172176
exit 1
173177
}
174178

influxdb/2.0/entrypoint.sh

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ function upgrade_influxd () {
159159
function wait_for_influxd () {
160160
local -r influxd_pid=$1
161161
local ping_count=0
162-
while kill -0 "${influxd_pid}"; do
162+
while kill -0 "${influxd_pid}" && [ ${ping_count} -lt ${INFLUXD_INIT_PING_ATTEMPTS} ]; do
163163
sleep 1
164164
log info "pinging influxd..." ping_attempt ${ping_count}
165165
ping_count=$((ping_count+1))
@@ -168,7 +168,11 @@ function wait_for_influxd () {
168168
return
169169
fi
170170
done
171-
log error "influxd crashed during startup" total_pings ${ping_count}
171+
if [ ${ping_count} -eq ${INFLUXD_INIT_PING_ATTEMPTS} ]; then
172+
log error "influxd took too long to start up" total_pings ${ping_count}
173+
else
174+
log error "influxd crashed during startup" total_pings ${ping_count}
175+
fi
172176
exit 1
173177
}
174178

0 commit comments

Comments
 (0)