-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Nil value returned due to movekey version mismatch #995
Comments
After tracing in code. the reason it returns nil value is that the original key has new version v2 in lsm tree. move key only has older version v1, v2 is lost. see iterator.go: yieldItemValue |
@ibrahim can you look into this? |
@SimonXW Can you share the test program? |
Just uploaded test code. rename it to .go. |
@SimonXW I ran your program twice. The first time it kept running for 10 hours and then again for 3 hours. I didn't see any nil values. Can you try running the program again and confirm the issue? |
I ran it 3/4 times and got nil value every time. but from 3 hours to 15 hours. Also which version are you running on? I ran it on 1.5.4 + the patch for #907. You may have to run it longer. |
I tried it on v1.5.5 (as mentioned in the issue). I'll try it once again with 1.5.4. |
Thanks @markadev. Since this issue is no longer reproducible on 1.6.0 I'm going to close this issue. |
What version of Go are you using (
go version
)?What version of Badger are you using?
v1.5.5
Does this issue reproduce with the latest master?
What are the hardware specifications of the machine (RAM, OS, Disk)?
What did you do?
keep writing keys
each round writes 1.5 million keys (768 bytes for key and 1024 for value) and repeatedly update those keys. all in same goroutine
vlog gc every 5 minutes in another goroutine and read keys to verify.
I can upload test program if needed.
What did you expect to see?
What did you see instead?
after a while, in my case from 3 hours to 15 hours, I got nil value returned. which is DL issue.
The text was updated successfully, but these errors were encountered: