-
Notifications
You must be signed in to change notification settings - Fork 629
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
Panic (index out of range) on writeable tx rollback with db.NoFreelistSync #152
Comments
@kozlovic I think you are very close to figure out the root cause. Can you help us to get this fixed? /cc @WIZARD-CXY |
Thanks for reporting this @kozlovic , let me take a closer look at it today. |
It is indeed a bug. if we have |
@kozlovic I think the right fix is follow, WDYT
rollback must be done no matter sync freelist or not |
@WIZARD-CXY Yes, expect that it should be:
Notice that I removed the |
@xiang90 @WIZARD-CXY Any chance you guys will be able to get a release after the fix is in? I need to do a release of https://github.com/nats-io/nats-streaming-server and this is holding me up. If you can't, I will have to remove use of |
cc @jpbetz |
@xiang90 @WIZARD-CXY Just realized that someone reported that back in Nov 2017: #70 ... |
@kozlovic my mistake, should remove |
I will fire up a pr to fix this asap. |
Seems this can be closed now that #153 has been merged. |
this brings the dependency back to a released version: - go.etcd.io/bbolt etcd-io/bbolt@2eb7227...v1.3.3 - etcd-io/bbolt#153 fix rollback panic bug - fixes etcd-io/bbolt#152 Panic (index out of range) on writeable tx rollback with db.NoFreelistSync Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
this brings the dependency back to a released version: - go.etcd.io/bbolt etcd-io/bbolt@2eb7227...v1.3.3 - etcd-io/bbolt#153 fix rollback panic bug - fixes etcd-io/bbolt#152 Panic (index out of range) on writeable tx rollback with db.NoFreelistSync Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
If the db is opened with
db.NoFreelistSync = true
, if a writeable transaction is rolled-back, we get following panic:Here is the test to produce such panic:
Commenting out
db.NoFreelistSync = true
solves the issue.I wonder if you should check for NoFreelistSync here
Something like this instead:
The text was updated successfully, but these errors were encountered: