merkleeyes
merkleeyes copied to clipboard
Immutable but not really
@zramsay commented on Wed Aug 16 2017
@ethanfrey commented on Wed Jan 04 2017
I spent a lot of time trying to debug some panics during benchmarking and realized that I cannot simply use a tree a few different times, even if I copy it. Eventually, I found a note on the Copy()
method that explains the issue I found, but it was a real headache.
I would like to either (or both):
- Document this issue better (started here)
- Consider another concurrency model
Please give me some feedback here. In the meantime, I will try to rework the benchmarks to somehow not panic.
@ebuchman commented on Wed Jan 04 2017
Once we added garbage collection, all older states of the tree are thrown away after Save (though actually we delay it by one). I found this kind of surprising as well - there ought to be a way to enable queries to older states, but within some limit (eg. what was my balance 100 blocks ago).
@jaekwon commented on Fri Jan 06 2017
Check out the discussion in this link: https://github.com/tendermint/go-merkle/issues/11
The panic issue should be resolved now on develop.
In short, we should document this behavior.
@ethanfrey commented on Fri Jan 06 2017
Okay, I added a pull request with some documentation. This should close the issue now. At least making proper usage obvious.
@faddat commented on Wed Mar 01 2017
When can Zerg get together for a voice chat?
@ebuchman commented on Wed Aug 16 2017
@zramsay should be merkleeyes