Alex Sharov
f500148b86
remove BoltDatabase, BadgerDatabase, RemoteDatabase classes (replaced by objectDb) ( #794 )
2020-07-27 22:59:54 +01:00
Alex Sharov
c4a1ffa4f0
Grpc-based remoteDb ( #788 )
2020-07-27 19:15:48 +07:00
Alex Sharov
79a49e9e44
avoid touching closed db ( #789 )
...
* avoid touching closed db
* fix tx rollback
2020-07-27 07:10:50 +01:00
Alex Sharov
e09b386fc3
lmdb support empty values, but not empty keys ( #674 )
2020-06-18 12:20:33 +07:00
Alex Sharov
5b051d9ab3
Lmdb: avoid empty key values in put and seek ( #673 )
...
* avoid 0 length key/values and seek arguments
* less abstractions in .get method, and copy memory from C space without unsafe conversion into go memory
* fix test
2020-06-17 10:57:48 +01:00
Alex Sharov
8d04689041
close db in tests ( #669 )
2020-06-16 12:05:40 +07:00
Alex Sharov
15096f273d
Remove ctx from Open. Stop goroutines on Close. ( #650 )
...
* remove ctx from MustOpen
* remove ctx from Open. Stop goroutines on Close.
* remove ctx from Open. Stop goroutines on Close.
* remove ctx from remote open (we have DialTimeout field to manage connection timeouts)
* enable RawReads and add native implementation of Get/Has methods
2020-06-12 10:31:21 +01:00
Alex Sharov
d8ffd02b4f
Lmdb and Badger tests ( #630 )
...
* try lmddb
* try badger
* try bigger badger
* try lmb
* release
* release
* release
* release
* try badger
* try lmdb low memory
* try lmdb low memory
* lmdb high memory (16Mb not enough for /eth/downloader package)
* badger more memory
* badger more memory
* badger more memory
2020-06-06 11:29:11 +01:00
Alex Sharov
f0bc2b2146
Run tests on lmdb and badger ( #624 )
...
* lmdb tests
* trigger ci
* fix tests
* disable parallelism
* disable parallelism
* cleanup resources
* cleanup resources
* reduce concurency
* try run tests on bolt
* try run tests on bolt
* fix downloader test
* run bolt tests
* rely on interface instead of exact instance
* Rename AbstractKV to KV
* don't use separator for badger
* don't initialize badger cursor - because it not used here
* fix linter
* try reduce badger compactors
* compat with master
* try lmdb
* try lmdb
* try lmdb
* reduce badger's MaxTableSize, reduce badger's minGoMaxProc for inMem option
* allow to close closed db
* release
* release
* ideal batch size for badger
* ideal batch size for badger
2020-06-05 10:25:33 +01:00
Alex Sharov
916a1f8b83
[wip] Lmdb: AbstractKV and DB interfaces ( #589 )
...
* resetIH from scratch if needed
* lmdb
* add AbstractKV to loader, added new Object accessor around AbstractKV
* add lmdb cli flag
* add requirement of k!=nil on error in docs
* add Size method for compatibility
* read after put tests
* fix multiput nils
* simplify loops
* increase mmap size
* better error messages
* better error messages
* fix tests
* better error messages
* cleanup
* avoid bolt usage in test
* move hardcoded bucket name to dbutils
* register more buckets
* register more buckets
* fix test
2020-05-30 09:12:21 +01:00
ledgerwatch
41b5fce078
resolver: merge HashBuilder-s and ResolveSet-s, decouple from ResolveRequest-s ( #540 )
...
* merge hbStorage and hb in resolver
* Fix prepare
* Remove tracing by default
* cleanup
* Fix linter
* Not to include incarnation into the ResolveRequest
* Fix linter
* Fix linter
* Fix test
* Fix linter
* Revert
* Fix for infinite loop
* Fix linter
* Collapse rss into rs
* remove reliance of requests in resolver
* Remove currentReq
* Remove fields from ResolveRequest
* Fix linter
2020-05-11 05:46:07 +01:00
Alex Sharov
535d73be5f
Run CI on bolt with prefix_compression_without_allocation (fixes) ( #380 )
2020-04-11 20:28:15 +07:00
Alex Sharov
c5ffc971c5
[WIP] Badger v2 ( #378 )
...
* badger v2 investigation
* buf pool - use native New method and avoid double checks
* db.Open prototype
* db.Tx/Bucket/Cursor prototypes
* Chained config
* Item concept added
* save changes to test on master
* make hack resumable
* Design document v0
* Cursor concept
* less brackets syntax of cursor builder
* benchmarks
* cleanup fs
* test for context cancelations
* test for context cancelations
* test for cursor.Prefix option
* add ForEachKey method
* add ForEachKey method
* add naming explanation
* experiment of non-pointers cursor/bucket
* .Bucket() and .Cursor() doesn't returns error
* .Bucket() and .Cursor() doesn't returns error
* .Bucket() and .Cursor() doesn't returns error
* remove CursorOpts concept
* more test-cases
* simplify open api
* Tx, Bucket, Cursor - now are interfaces
* Tx, Bucket, Cursor - now are interfaces
* switch to interfaces
* rebase master
Co-authored-by: alex.sharov <alex.sharov@lazada.com>
2020-03-11 11:02:37 +00:00
Andrew Ashikhmin
1c0cf9be72
BadgerDB: MultiWalk & some other APIs, command line flag, scaffolding for testing ( #183 )
...
* BadgerDatabase MemCopy
* fix err shadowing
* BadgerDatabase MultiPut & NewBatch
* Remove goOn from MultiWalk & MultiWalkAsOf
* BadgerDatabase MultiWalk. Scaffolding for testing Badger in blockchain_test
* Badger Flag
* fix error logging
* Split IdealBatchSize between BoltDB and BadgerDB
* NewEphemeralBadger
2019-11-21 16:12:38 +01:00
andrew
0eb9d3915b
Add method stubs to BadgerDatabase so it formally implements the Database interface
2019-11-14 13:00:38 +01:00
andrew
62d36ada39
BadgerDatabase Walk
2019-11-13 17:43:26 +01:00
andrew
e25303a51e
re-enable a check in testParallelPutGet
2019-11-06 11:30:02 +01:00
andrew
069343d5a8
BadgerDatabase DeleteTimestamp
2019-11-06 11:24:48 +01:00
andrew
9be775c8bd
Port my work from badger after the master rebase
2019-11-05 13:28:36 +01:00
Péter Szilágyi
054412e335
all: clean up and proerly abstract database access
2019-03-06 13:35:03 +02:00
Dmitrij Koniajev
6a7695e367
ethdb, rpc: support building on js/wasm ( #17709 )
...
The changes allow building WebAssembly applications which use ethclient.Client.
2018-10-16 00:47:25 +02:00
gary rong
dcdd57df62
core, ethdb: two tiny fixes ( #17183 )
...
* ethdb: fix memory database
* core: fix bloombits checking
* core: minor polish
2018-07-18 13:41:36 +03:00
gary rong
7beccb29be
all: get rid of error when creating memory database ( #16716 )
...
* all: get rid of error when create mdb
* core: clean up variables definition
* all: inline mdb definition
2018-05-09 15:24:25 +03:00
gary rong
73c5aba21f
ethdb: return copied value from MemDatabase.Get ( #14958 )
2017-08-11 12:41:49 +02:00
Egon Elbre
6f8c7b0def
ethdb: add basic and parallel sanity tests ( #14938 )
...
* ethdb: add basic sanity test
* ethdb: test MemDatabase
* ethdb: add parallel tests
2017-08-08 12:32:10 +03:00
Péter Szilágyi
e90958cd29
cmd, eth, ethdb, node: prioritise chaindata for resources, bump cache
2016-03-09 10:33:39 +02:00
Jeffrey Wilcke
1fad8798ec
Merge pull request #1515 from fjl/license-fixes
...
all: fix license headers one more time
2015-07-28 04:29:42 -07:00
Felix Lange
bfbcfbe4a9
all: fix license headers one more time
...
I forgot to update one instance of "go-ethereum" in commit 3f047be5a
.
2015-07-23 18:35:11 +02:00
Jeffrey Wilcke
0cff61beda
Merge pull request #1510 from fjl/license-fixes
...
all: license fixes
2015-07-23 01:43:11 -07:00
Felix Lange
3f047be5aa
all: update license headers to distiguish GPL/LGPL
...
All code outside of cmd/ is licensed as LGPL. The headers
now reflect this by calling the whole work "the go-ethereum library".
2015-07-22 18:51:45 +02:00
Péter Szilágyi
c7e7778f2a
cmd, core, eth, ethdb: cache flag to allocate memory for db internal use
2015-07-22 14:00:52 +03:00
Felix Lange
ea54283b30
all: update license information
2015-07-07 14:12:44 +02:00
Bas van Kervel
95773b9673
removed redundant newlines in import block
2015-05-12 15:20:53 +02:00
Bas van Kervel
b79dd188d9
replaced several path.* with filepath.* which is platform independent
2015-05-12 14:24:11 +02:00
obscuren
7f32a08b60
Queued level db writes and batch writes. Closes #647
2015-04-07 22:19:01 +02:00
Felix Lange
80985f97da
cmd/evm, core, ethdb, state, tests/helper: remove ReadConfig calls
2015-03-10 02:39:53 +01:00
obscuren
76c9c8d653
Compress data on db level. Closes #174
2014-11-03 00:31:15 +01:00
obscuren
f6d1bfe45b
The great merge
2014-02-14 23:56:09 +01:00