Commit Graph

9 Commits

Author SHA1 Message Date
Jae Kwon 657820372c App compiles. Ready to build on it 2017-12-26 17:04:48 -08:00
Jae Kwon 45c2e9c30b curVersion -> nextVersion 2017-12-21 03:44:27 -08:00
Jae Kwon d681049023 CommitMultiStore, and SetCommitStoreLoader->SetSubstoreLoader 2017-12-21 03:39:00 -08:00
Jae Kwon eb1f877d3d
KVStore refactor (#303)
I removed that stuff about cwwMutex and CacheWraps expiring. It was unnecessary complexity given that users need not write concurrent logic. If you have 2 CacheKVStores and you Write on one and later you Write on the other one, they will both write, and strange things may happen. But that’s OK, it’s kinda the expected (unsurprising) behavior. And now the code is much simpler.

Also I got rid of IterKVStore. It’s not necessary to distinguish them because we can have KVStore.Iterator() return nil or panic or an empty iterator. Further simplification…

KVStore.CacheKVStore() doesn’t exist. No need, just call NewCacheKVStore(parent).

Originally I wanted the .CacheKVStore() method because you can make the implementor be responsible for ensuring that returned CacheWraps don’t trample each other. But as written previously this complicates the code a lot more and it isn’t strictly necessary. It’s a kind of magic that maybe should just be avoided.

sdk.Iterator is dbm.Iterator. The plan is to conservatively add more aliases into the “sdk” namespace.

GetError() is removed from Iterator. We need to just panic to be consistent. More simplification.
2017-12-12 20:13:51 -08:00
Jae Kwon f4484ab3b5 Implementing iavlStore... 2017-12-09 12:35:51 -08:00
Jae Kwon a47da2c8e1 store/* fixes 2017-12-04 00:56:25 -08:00
Jae Kwon 1d207a2a5e Fixing store/* bugs... 2017-12-04 00:23:10 -08:00
Jae Kwon 0917fc3de7 rootMultiStore holds lastCommitID 2017-12-03 23:17:10 -08:00
Jae Kwon 8db15fe3ef Committer -> CommitStore; CacheWrap() 2017-12-03 22:55:15 -08:00