-
Notifications
You must be signed in to change notification settings - Fork 12.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
write lock failed without retry #12557
Labels
Comments
能否试一下新版本,我看最新版本的逻辑应该有修改过。 |
@KomachiSion
测试了一整晚, 大概出现了两次上述问题 我们猜测这个问题之前没被发现的原因有两个:
|
欢迎修复次问题后提交PR 关于问题2的描述: go-sdk在新版本中也是使用长连接来获取配置, 正常情况下也是在同一个节点上进行获取。 |
KomachiSion
added
kind/enhancement
Category issues or prs related to enhancement.
area/Config
and removed
status/need feedback
labels
Sep 2, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Describe the bug
A clear and concise description of what the bug is.
nacos server版本: 2.1.0, 3节点部署 + derby
client: go-sdk
如图所示
这里dump配置的时候, 如果有其他请求正在读配置(readLock), 是不是会导致dump失败? dump失败的话就只能等对账任务了, 在此之前, server的md5 cache都是错误的.
Expected behavior
A clear and concise description of what you expected to happen.
获取写锁失败, 等待或者重试
Actually behavior
A clear and concise description of what you actually to happen.
某个nacos server节点获取写锁失败后, md5缓存一直是旧的, 直到几个小时后的全量对账任务触发, 配置才刷新.
正常节点:
01:00:30, 配置更新, 该配置缓存md5刷新为: 8d1943c68eecedc84e431c912fbca0e5
config-pull-check.log.2024-08-20.0
异常节点:
01:00:30 获取写锁失败, md5缓存一直未能刷新, 还是旧的: b7ce55d429195cf56609bd68787ebedf
config-dump.log.2024-08-20.0, 01:00:00
config-pull-check.log.2024-08-20.0, 01:00:00
直到几个小时后(06:19)的全量对账任务启动, md5才刷新
config-dump.log.2024-08-20.0, 06:00:00
config-pull-check.log.2024-08-20.0, 06:00:00
How to Reproduce
Steps to reproduce the behavior:
未能稳定复现
Desktop (please complete the following information):
Additional context
Add any other context about the problem here.
我们的客户端是go-sdk, 与java客户端不同的是, long-pulling和getInnerConfig可能会请求不同的nacos server
The text was updated successfully, but these errors were encountered: