Commit Graph

323 Commits

Author SHA1 Message Date
Jae Kwon 56e51bc113 CacheWrap() -> CacheDB() CacheDB 2017-11-11 17:37:30 -05:00
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
2017-11-09 17:42:32 -05:00
Anton Kaliaev 176c2ceed6
Merge pull request #77 from tendermint/18-unsupported-value-type
encode complex types as "%+v"
2017-11-07 21:29:54 -05:00
Anton Kaliaev 798848320f
Merge pull request #76 from tendermint/29-log-logger-errors
log logger's errors
2017-11-07 21:29:35 -05:00
Anton Kaliaev 69447564b8
encode complex types as "%+v" (Refs #18) 2017-11-06 15:44:21 -05:00
Anton Kaliaev 4b989151ed
log logger's errors (Refs #29) 2017-11-06 14:18:42 -05:00
Anton Kaliaev ac0cf0b2e2
Merge pull request #74 from tendermint/73-undefined-syscall-kill
use os.Process#Kill (Fixes #73)
2017-11-04 09:07:03 -05:00
Anton Kaliaev 49d75e223e
use os.Process#Kill (Fixes #73) 2017-11-04 08:14:47 -05:00
Anton Kaliaev b658294a13
use assert.Contains in cmap_test 2017-11-04 00:10:59 -05:00
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
2017-11-04 00:06:20 -05:00
Anton Kaliaev 0f555f8d2c
Merge pull request #71 from tendermint/69-read-impl-and-tests
[autofile] test GroupReader more extensively (Refs #69)
2017-11-04 00:02:02 -05:00
Anton Kaliaev d8dd497069
fix metalinter errors 2017-10-30 13:01:18 -05:00
Anton Kaliaev 668698584d
[autofile] test GroupReader more extensively (Refs #69) 2017-10-30 12:48:51 -05:00
Ethan Buchman d9525c0fb6
Merge pull request #70 from tendermint/develop
Develop
2017-10-27 12:05:43 -04:00
Ethan Buchman b14c996698 update changelog 2017-10-27 11:52:10 -04:00
Ethan Buchman 092eb701c7 cmn: Kill 2017-10-27 11:01:40 -04:00
Ethan Buchman 42145a82bd version and changelog 2017-10-26 20:57:33 -04:00
Ethan Buchman b30e3ba26d Merge pull request #65 from tendermint/573-wal-issues-2
[autofile] Support for the new WAL format
2017-10-25 22:00:36 -04:00
Anton Kaliaev 0a652499ea Merge pull request #68 from tendermint/bugfix/gopath-executes-go
make GoPath a function
2017-10-25 11:12:13 +04:00
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
2017-10-25 11:01:52 +04:00
Ethan Buchman 93bd2081dd Merge pull request #66 from tendermint/codecov
add codecov
2017-10-24 23:05:32 -04:00
Anton Kaliaev f99c73502c
add codecov 2017-10-24 23:36:10 +04:00
Anton Kaliaev 103fee6192
add tests for autofile group Write, reader#Read 2017-10-24 23:20:17 +04:00
Anton Kaliaev 81591e288e
fix metalinter warnings 2017-10-24 23:19:53 +04:00
Anton Kaliaev d4c6a68e58 Merge pull request #64 from silasdavis/event-cache
Fix zeroed buffer getting flushed to the empty event
2017-10-24 14:16:18 +04:00
Silas Davis 0eff425bc7
fix zeroed buffer getting flushed to the empty event 2017-10-23 18:52:31 +01:00
Anton Kaliaev 21b2c26fb1
GroupReader#Read: return io.EOF if file is empty 2017-10-23 13:02:14 +04:00
Anton Kaliaev c75ddd0fa3
return err if empty slice given 2017-10-23 13:02:02 +04:00
Anton Kaliaev 35e81018e9
add MinIndex method to Group 2017-10-20 13:09:51 +04:00
Anton Kaliaev aace56018a
add Read method to GroupReader 2017-10-20 12:38:45 +04:00
Anton Kaliaev 45095e83e7
add Write method to autofile/Group 2017-10-17 16:48:44 +04:00
Anton Kaliaev 498fb1134a
write docs for autofile/group 2017-10-17 16:48:34 +04:00
Anton Kaliaev 8e5266a9ef Merge pull request #62 from tendermint/tests-fix
fix goLevelDBIterator
2017-10-17 16:06:41 +04:00
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)
2017-10-17 12:26:20 +04:00
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⚠️ infinite recursive call (SA5007) (megacheck)
db/go_level_db.go:135:17⚠️ infinite recursive call (SA5007) (megacheck)
db/mem_db.go:106:2⚠️ redundant return statement (S1023) (megacheck)
```

https://circleci.com/gh/tendermint/tmlibs/220

Also remove unnecessary return statement
2017-10-17 11:01:46 +04:00
Anton Kaliaev cd2ad19db4 Merge pull request #57 from tendermint/feature/improve-db-interface
WIP: Improve db interface
2017-10-13 18:31:05 +04:00
Alexis Sellier 6b1e3bcee3 Add comments about copying 2017-10-13 13:03:43 +02:00
Anton Kaliaev 7166252a52
add codeowners file [ci skip] 2017-10-11 12:48:05 +04:00
Anton Kaliaev 35e38e8932
call go env GOPATH if env var is not found (Refs #60) 2017-10-11 12:42:54 +04:00
Ethan Buchman 7dd6b3d3f8 Merge pull request #53 from tendermint/metalinter
add metalinter to CI and address some lint warnings
2017-10-04 00:21:24 -04:00
Ethan Buchman c8805fd7de metalinter fixes from review 2017-10-04 00:13:58 -04:00
Zach Ramsay cf49ba876f linter: couple fixes 2017-10-03 17:23:14 -04:00
Ethan Buchman 096dcb90e6 Merge pull request #59 from tendermint/develop
Develop
2017-10-02 23:29:35 -04:00
Ethan Buchman e9c83b3005 version and changelog 2017-10-02 23:26:45 -04:00
Ethan Buchman a55ec427bd Merge pull request #56 from tendermint/memdb-fix-close
db: fix MemDB.Close
2017-10-02 22:38:19 -04:00
Ethan Buchman 0948343a6f autofile: ensure file is open in Sync 2017-10-02 14:17:16 -04:00
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.
2017-09-28 17:43:47 +02:00
Alexis Sellier 219d4e8427 Add IteratorPrefix method to Iterator 2017-09-28 17:35:01 +02:00
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.
2017-09-28 17:26:24 +02:00
Emmanuel Odeke 8be8127351
db: fix MemDB.Close
Fixes https://github.com/tendermint/tmlibs/issues/55

MemDB previously mistakenly set the actual DB pointer to nil
although that side effect is not visible to the outside world
since p is an identifier within the scope of just that function
call. However, @melekes and I had a discussion in which we
came to the conclusion that Close for an in-memory DB should
instead be a noop and not cause any data loss. See the
discussion on https://github.com/tendermint/tmlibs/pull/56.
2017-09-26 15:29:51 -06:00