jiangfucheng commented on code in PR #9967: URL: https://github.com/apache/apisix/pull/9967#discussion_r1286563348
########## t/core/config_etcd.t: ########## @@ -443,3 +443,81 @@ qr/readdir key: fake res: \{.*"nodes":\[\{.*"value":\["bar"\].*\}\].*\}/ --- wait: 1 --- no_error_log [error] + + + +=== TEST 13: test route with special character "-" +--- yaml_config +deployment: + role: traditional + role_traditional: + config_provider: etcd + admin: + admin_key: null + etcd: + prefix: "/apisix-test" +--- config + location /t { + content_by_lua_block { + ngx.sleep(0.5) Review Comment: > It seems another issue, if we set data to etcd immediately after APISIX starts, the APISIX will can't update the data in memory. According to my debug, APISIX can watch the event, but the event will be ignored, the issue seems caused by blown code. the real value will be `res.result.header.revision <= self.prev_index`, but I haven't found the specific reason yet. > > https://github.com/apache/apisix/blob/5917748495264977635e3a135195258b31944929/apisix/core/config_etcd.lua#L392C3-L392C3 I tried to debug this bug, and will raise a new issue to describe how to reproduce it. So we can just keep the `sleep` logic in there to avoid this bug. -- 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: notifications-unsubscr...@apisix.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org