Yumin Xia
36d7180ca2
libs/db: close batch ( #3397 )
ClevelDB requires closing when WriteBatch is no longer needed, https://godoc.org/github.com/jmhodges/levigo#WriteBatch.Close
Fixes the memory leak in https://github.com/cosmos/cosmos-sdk/issues/3842
6 years ago
Yumin Xia
b021f1e505
libs/db: close batch ( #3397 )
ClevelDB requires closing when WriteBatch is no longer needed, https://godoc.org/github.com/jmhodges/levigo#WriteBatch.Close
Fixes the memory leak in https://github.com/cosmos/cosmos-sdk/issues/3842
6 years ago
Jae Kwon
416d143bf7
R4R: Swap start/end in ReverseIterator ( #2913 )
* Swap start/end in ReverseIterator
* update CHANGELOG_PENDING
* fixes from review
6 years ago
Zach Ramsay
44dad6d70b
Revert "detele everything"
This reverts commit d02c5d1e30
.
7 years ago
Zach Ramsay
d02c5d1e30
detele everything
7 years ago
Ethan Buchman
ae3bf81833
mv tmlibs files to libs dir
7 years ago
Thomas Corbière
ee67e34519
Fix lint errors ( #190 )
* use increment and decrement operators.
* remove unnecessary else branches.
* fix receiver names.
* remove omittable code.
* fix dot imports.
7 years ago
Jae Kwon
d289c9286e
Implement NewPrefixDB ( #164 )
* encodeByteSlice uses uvarint for length instead of varint
* Implemented NewPrefixDB
* Fix flowrate test (#165 )
* Complete implementation and fix tests
* Add tests for MemBatch Write[Sync]
7 years ago
Jae Kwon
b31397aff5
Fix GoLevelDB Iterator which needs to copy a temp []byte
7 years ago
Jae Kwon
4ce8448d7f
Nil keys are OK, deprecate BeginningKey/EndingKey ( #101 )
* Nil keys are OK, deprecate BeginningKey/EndingKey
7 years ago
Emmanuel Odeke
a7b20d4e46
db: Simplify exists check, fix IsKeyInDomain signature, Iterator Close
+ *FSDB.HasKey now uses common.FileExists to test for file existence
+ IsKeyInDomain takes key as a []byte slice instead of as a string
to avoid extraneous []byte<-->string conversions for start and end
+ Iterator.Close() instead of Iterator.Release()
+ withDB helper to encapsulate DB creation, deferred cleanups
so that for loops can use opened DBs and discard them ASAP
Addressing accepted changes from review with @jaekwon
7 years ago
Jae Kwon
5636a02d03
Remove GetError() from Iterator
7 years ago
Ethan Buchman
5b7f90dfb2
db: test panic on nil key
7 years ago
Ethan Buchman
781f6c5d22
db: some comments in types.go
7 years ago
Jae Kwon
7f650cea86
Remove Prev from Iterator
7 years ago
Jae Kwon
0d03cd9e31
Make it compile
7 years ago
Jae Kwon
50a30aafc1
New canonical Iterator
7 years ago
Jae Kwon
17dc8a7449
SetDeleter/Batch separation
7 years ago
Jae Kwon
56e51bc113
CacheWrap() -> CacheDB() CacheDB
7 years ago
Jae Kwon
8481c49c82
CacheDB ( #67 )
* Add CacheDB & SimpleMap
* Generic memBatch; Fix cLevelDB tests
* CacheWrap() for CacheDB and MemDB
* Change Iterator to match LeviGo Iterator
* Fixes from review
* cacheWrapWriteMutex and some race fixes
* Use tmlibs/common
* NewCWWMutex is exposed. DB can be CacheWrap'd
* Remove GetOK, not needed
* Fsdb (#72 )
* Add FSDB
* Review fixes from Anton
* Review changes
* Fixes from review
7 years ago
Alexis Sellier
219d4e8427
Add IteratorPrefix method to Iterator
7 years ago
Alexis Sellier
296d223545
Add Release & Error methods to Iterator
We need this to properly support LevelDB backend, which needs
to be released if we don't want to leak memory.
7 years ago
Ethan Buchman
2f8551d3b6
go-common -> tmlibs
8 years ago
Ethan Buchman
900be74e8f
update import paths
8 years ago
Ethan Buchman
fdbb10827d
merge go-db
8 years ago
Paul W. Homer
6064c80250
Modified all db types to conform to the interface changes.
8 years ago
Paul W. Homer
bb8104b624
Exposed the LevelDB iterator in the DB struct.
8 years ago
Ethan Buchman
33e35c4732
go and c strings were swapped
8 years ago
Jae Kwon
5e2a1d3e30
Fix tests; Support 'leveldb' for legacy
8 years ago
Jae Kwon
5ab5538d6c
Move cleveldb to own file w/ build tag condition 'gcc'
8 years ago
Jae Kwon
9f81134388
Add support for levigo bindings
8 years ago
Jae Kwon
31fdd21c7e
No global config
9 years ago
Jae Kwon
28d39f8726
...
9 years ago