Something goes wrong when saving claimtrie nodes to disk and loading it #133
Labels
No labels
area: devops
area: discovery
area: docs
area: livestream
area: proposal
consider soon
Epic
good first issue
hacktoberfest
hard fork
help wanted
icebox
Invalid
level: 0
level: 1
level: 2
level: 3
level: 4
needs: exploration
needs: grooming
needs: priority
needs: repro
needs: tech design
on hold
priority: blocker
priority: high
priority: low
priority: medium
resilience
soft fork
Tom's Wishlist
type: bug
type: discussion
type: improvement
type: new feature
type: refactor
type: task
type: testing
unplanned
work in progress
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: LBRYCommunity/lbrycrd#133
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Discovered in https://github.com/lbryio/lbrycrd/pull/110
When loading in claimtrie nodes using function InsertFromDisk() https://github.com/lbryio/lbrycrd/blob/master/src/claimtrie.cpp#L1072 , we discovered that for some reason the "name" variable contains an extra bogus character at the end.
However, I suspect that there is not always a bogus character attached to the "name" variable, thus this function will completely fail.
I've tested the serialization classes to see if there is any problem loading/saving string classes and there is no problem, so its likely a problem originating from when we save nodes, particularly when the function markNodeDirty() gets called https://github.com/lbryio/lbrycrd/blob/master/src/claimtrie.cpp#L828 which marks nodes to be saved on disk.
This probably should be fixed when merging new code.
I'm closing this as unreproducible. The serialization code has been updated with the upstream merge. Also, the code for loading the trie will be different with the new memory improvements.