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
Anton Kaliaev
176c2ceed6
Merge pull request #77 from tendermint/18-unsupported-value-type
encode complex types as "%+v"
7 years ago
Anton Kaliaev
798848320f
Merge pull request #76 from tendermint/29-log-logger-errors
log logger's errors
7 years ago
Anton Kaliaev
69447564b8
encode complex types as "%+v" (Refs #18 )
7 years ago
Anton Kaliaev
4b989151ed
log logger's errors (Refs #29 )
7 years ago
Anton Kaliaev
e6164d4052
change service#Stop to be similar to Start
7 years ago
Anton Kaliaev
4123d54bf6
change service#Start to return just error (Refs #45 )
```
@melekes
yeah, bool is superfluous
@ethanfrey
If I remember correctly when I was writing test code, if I call Start() on a Service that is already running, it returns (false, nil). Only if I try to legitimately start it, but it fails in startup do I get an error.
The distinction is quite important to make it safe for reentrant calls. The other approach would be to have a special error type like ErrAlreadyStarted, then check for that in your code explicitly. Kind of like if I make a db call in gorm, and get an error, I check if it is a RecordNotFound error, or whether there was a real error with the db query.
@melekes
Ah, I see. Thanks. I must say I like ErrAlreadyStarted approach more (not just in Golang)
```
7 years ago
Anton Kaliaev
ac0cf0b2e2
Merge pull request #74 from tendermint/73-undefined-syscall-kill
use os.Process#Kill (Fixes #73 )
7 years ago
Anton Kaliaev
49d75e223e
use os.Process#Kill ( Fixes #73 )
7 years ago
Anton Kaliaev
b658294a13
use assert.Contains in cmap_test
7 years ago
Wolf
88481fc363
Make iterating over keys possible ( #63 )
* Make iterating over keys possible
* add test for cmap
- test Keys() and Values() respectively
* one cmap per test-case
7 years ago
Anton Kaliaev
0f555f8d2c
Merge pull request #71 from tendermint/69-read-impl-and-tests
[autofile] test GroupReader more extensively (Refs #69 )
7 years ago
Anton Kaliaev
d8dd497069
fix metalinter errors
7 years ago
Anton Kaliaev
668698584d
[autofile] test GroupReader more extensively (Refs #69 )
7 years ago
Ethan Buchman
d9525c0fb6
Merge pull request #70 from tendermint/develop
Develop
7 years ago
Ethan Buchman
b14c996698
update changelog
7 years ago
Ethan Buchman
092eb701c7
cmn: Kill
7 years ago
Ethan Buchman
42145a82bd
version and changelog
7 years ago
Ethan Buchman
b30e3ba26d
Merge pull request #65 from tendermint/573-wal-issues-2
[autofile] Support for the new WAL format
7 years ago
Anton Kaliaev
0a652499ea
Merge pull request #68 from tendermint/bugfix/gopath-executes-go
make GoPath a function
7 years ago
Anton Kaliaev
bcf15e527d
make GoPath a function
otherwise it could try to execute go binary and panic if no go binary
found. See https://github.com/tendermint/tendermint/issues/782
7 years ago
Ethan Buchman
93bd2081dd
Merge pull request #66 from tendermint/codecov
add codecov
7 years ago
Anton Kaliaev
f99c73502c
add codecov
7 years ago
Anton Kaliaev
103fee6192
add tests for autofile group Write, reader#Read
7 years ago
Anton Kaliaev
81591e288e
fix metalinter warnings
7 years ago
Anton Kaliaev
d4c6a68e58
Merge pull request #64 from silasdavis/event-cache
Fix zeroed buffer getting flushed to the empty event
7 years ago
Silas Davis
0eff425bc7
fix zeroed buffer getting flushed to the empty event
7 years ago
Anton Kaliaev
21b2c26fb1
GroupReader#Read: return io.EOF if file is empty
7 years ago
Anton Kaliaev
c75ddd0fa3
return err if empty slice given
7 years ago
Anton Kaliaev
35e81018e9
add MinIndex method to Group
7 years ago
Anton Kaliaev
aace56018a
add Read method to GroupReader
7 years ago
Anton Kaliaev
45095e83e7
add Write method to autofile/Group
7 years ago
Anton Kaliaev
498fb1134a
write docs for autofile/group
7 years ago
Anton Kaliaev
8e5266a9ef
Merge pull request #62 from tendermint/tests-fix
fix goLevelDBIterator
7 years ago
Anton Kaliaev
1f15ade60d
Merge pull request #61 from tendermint/60-cmn-gopath-needs-a-default
call go env GOPATH if env var is not found (Refs #60 )
7 years ago
Anton Kaliaev
0b22b27bbb
avoid infinite recursion by proxying to iterator
```
WARNING: staticcheck, gosimple and unused are all set, using megacheck instead
db/go_level_db.go:126:15:warning: infinite recursive call (SA5007) (megacheck)
db/go_level_db.go:135:17:warning: infinite recursive call (SA5007) (megacheck)
db/mem_db.go:106:2:warning: redundant return statement (S1023) (megacheck)
```
https://circleci.com/gh/tendermint/tmlibs/220
Also remove unnecessary return statement
7 years ago
Anton Kaliaev
cd2ad19db4
Merge pull request #57 from tendermint/feature/improve-db-interface
WIP: Improve db interface
7 years ago
Alexis Sellier
6b1e3bcee3
Add comments about copying
7 years ago
Anton Kaliaev
7166252a52
add codeowners file [ci skip]
7 years ago
Anton Kaliaev
35e38e8932
call go env GOPATH if env var is not found (Refs #60 )
7 years ago
Ethan Buchman
7dd6b3d3f8
Merge pull request #53 from tendermint/metalinter
add metalinter to CI and address some lint warnings
7 years ago
Ethan Buchman
c8805fd7de
metalinter fixes from review
7 years ago
Zach Ramsay
cf49ba876f
linter: couple fixes
7 years ago
Ethan Buchman
096dcb90e6
Merge pull request #59 from tendermint/develop
Develop
7 years ago
Ethan Buchman
e9c83b3005
version and changelog
7 years ago
Ethan Buchman
a55ec427bd
Merge pull request #56 from tendermint/memdb-fix-close
db: fix MemDB.Close
7 years ago
Ethan Buchman
0948343a6f
autofile: ensure file is open in Sync
7 years ago
Alexis Sellier
e9e6ec3a2c
Implement Key/Value on Iterator for GoLevelDB
This is needed because leveldb reuses the keys on each iteration.
In our wrapper, we copy the key/value so that it is safe to store.
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