-
Notifications
You must be signed in to change notification settings - Fork 10.2k
Open
Labels
Description
Bug report criteria
- This bug report is not security related, security issues should be disclosed privately via [email protected].
- This is not a support request or question, support requests or questions should be raised in the etcd discussion forums.
- You have read the etcd bug reporting guidelines.
- Existing open issues along with etcd frequently asked questions have been checked and this is not a duplicate.
What happened?
Cache is a experimental library https://github.com/etcd-io/etcd/tree/main/cache developed as part of GSoC #19371
Run robustness test on latest implementation of cache #20354
If found the issue
logger.go:146: 2025-08-14T11:30:16.618+0200 ERROR Broke watch guarantee
{
"guarantee": "resumable",
"client": 3,
"request": {
"Key": "",
"Revision": 989,
"WithPrefix": true,
"WithProgressNotify": false,
"WithPrevKV": false
},
"got-event": {
"Type": "put-operation",
"Key": "key42",
"Value": {
"Value": "1556"
},
"Revision": 1540
},
"want-event": {
"Type": "put-operation",
"Key": "key13",
"Value": {
"Value": "1004"
},
"Revision": 989
}
What did you expect to happen?
Cache should provide the same guarantees as etcd.
How can we reproduce it (as minimally and precisely as possible)?
Pull the #20354
And run:
make gofail-enable
make
make gofail-disable
GO_TEST_FLAGS='--count=1 -v --run TestRobustnessExploratory --failfast' make test-robustness
/cc @MadhavJivrajani @apullo777
/assign @apullo777
Anything else we need to know?
No response
Etcd version (please run commands below)
$ etcd --version
# paste output here
$ etcdctl version
# paste output here
Etcd configuration (command line flags or environment variables)
paste your configuration here
Etcd debug information (please run commands below, feel free to obfuscate the IP address or FQDN in the output)
$ etcdctl member list -w table
# paste output here
$ etcdctl --endpoints=<member list> endpoint status -w table
# paste output here
Relevant log output
MadhavJivrajani