bzp2010 commented on code in PR #2650:
URL: https://github.com/apache/apisix-dashboard/pull/2650#discussion_r1007837541
##########
api/test/shell/cli_test.sh:
##########
@@ -478,7 +477,39 @@ stop_dashboard() {
# check response header with custom header
run curl -i http://127.0.0.1:9000
-[ $(echo "$output" | grep -c "X-Frame-Options: test") -eq '1' ]
+ [ $(echo "$output" | grep -c "X-Frame-Options: test") -eq '1' ]
+
+ stop_dashboard 6
+}
+
+#16
+@test "Check etcd auto re-watch" {
+ recover_conf
+ clean_logfile
+
+ # change log level
+ if [[ $KERNEL = "Darwin" ]]; then
+ sed -i "" 's/level: warn/level: info/' ${CONF_FILE}
+ else
+ sed -i 's/level: warn/level: info/' ${CONF_FILE}
+ fi
+
+ start_dashboard 15
+
+ [ "$(grep -c "etcd connection is fine" ${LOG_FILE})" -ge '1' ]
+
+ run docker stop etcd
+
+ sleep 30
+
+ [ "$(grep -c "etcd connection loss detected" ${LOG_FILE})" -ge '1' ]
+
+ run docker start etcd
+
+ sleep 20
+
+ [ "$(grep -c "etcd connection recovered" ${LOG_FILE})" -ge '1' ]
+ [ "$(grep -c "etcd store reinitializing" ${LOG_FILE})" -ge '1' ]
Review Comment:
This is not possible in principle, because each connection exception
triggers a re-initialization of the entire abstract storage layer, which
involves reloading the "list" in full, and creating a new watcher. As soon as
the full load succeeds, the existing data in the cache will be overwritten by
the new data, and what is not there will be added.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]