-
Notifications
You must be signed in to change notification settings - Fork 9.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 amplification with v3.3 transactional writes #9130
Comments
gyuho
changed the title
etcd-tester with transanction on v3.3 triggers "mvcc: database space exceeded"
Write amplification with v3.3 transactional writes
Jan 11, 2018
gyuho
added a commit
to gyuho/etcd
that referenced
this issue
Jan 11, 2018
Found when debugging etcd-io#9130. Signed-off-by: Gyuho Lee <[email protected]>
gyuho
added a commit
that referenced
this issue
Jan 11, 2018
Found when debugging #9130. Signed-off-by: Gyuho Lee <[email protected]>
does 3.2 have the same issue? |
@xiang90 Yes. v3.2.14 with freelist sync is 215 MiB. $ ETCDCTL_API=3 etcdctl snapshot status agent-2/etcd.data/member/snap/db --write-out table
+----------+----------+------------+------------+
| HASH | REVISION | TOTAL KEYS | TOTAL SIZE |
+----------+----------+------------+------------+
| e49c6d7b | 20368 | 28587 | 208 MB |
+----------+----------+------------+------------+ Trying to make this easily reproducible to verify further. |
I was setting up stresser weights wrong... Confirmed that db size only with txn writes grows as expected. This is snapshot from tester only with txn stresser (6-byte key, 5-byte value).
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
#8510 added txn stresser, and tester now fails with
mvcc: database space exceeded
error...Easily reproducible as below
Update
test
scriptUpdate
etcd-agent
Run
PASSES="functional" ./test
Check
db
file size$ ls -lah ./agent-1/etcd.data/member/snap/ total 181M drwx------ 2 gyuho 4.0K Jan 11 02:59 . drwx------ 4 gyuho 4.0K Jan 11 02:59 .. -rw-rw-r-- 1 gyuho 8.8K Jan 11 02:59 0000000000000003-0000000000002714.snap -rw-rw-r-- 1 gyuho 8.9K Jan 11 02:59 0000000000000003-0000000000004e42.snap -rw------- 1 gyuho 181M Jan 11 02:59 db
Now update
test
script to disable transaction stresserCheck
db
size$ ls -lah ./agent-1/etcd.data/member/snap/ total 6.8M drwx------ 2 gyuho 4.0K Jan 11 03:02 . drwx------ 4 gyuho 4.0K Jan 11 03:02 .. -rw-rw-r-- 1 gyuho 8.9K Jan 11 03:02 0000000000000003-00000000000044c2.snap -rw------- 1 gyuho 6.7M Jan 11 03:02 db
Compare
db
files with/without transactional writes:The text was updated successfully, but these errors were encountered: