Janoš Guljaš
3fd6db2bf6
swarm: fix network/stream data races ( #19051 )
...
* swarm/network/stream: newStreamerTester cleanup only if err is nil
* swarm/network/stream: raise newStreamerTester waitForPeers timeout
* swarm/network/stream: fix data races in GetPeerSubscriptions
* swarm/storage: prevent data race on LDBStore.batchesC
https://github.com/ethersphere/go-ethereum/issues/1198#issuecomment-461775049
* swarm/network/stream: fix TestGetSubscriptionsRPC data race
https://github.com/ethersphere/go-ethereum/issues/1198#issuecomment-461768477
* swarm/network/stream: correctly use Simulation.Run callback
https://github.com/ethersphere/go-ethereum/issues/1198#issuecomment-461783804
* swarm/network: protect addrCountC in Kademlia.AddrCountC function
https://github.com/ethersphere/go-ethereum/issues/1198#issuecomment-462273444
* p2p/simulations: fix a deadlock calling getRandomNode with lock
https://github.com/ethersphere/go-ethereum/issues/1198#issuecomment-462317407
* swarm/network/stream: terminate disconnect goruotines in tests
* swarm/network/stream: reduce memory consumption when testing data races
* swarm/network/stream: add watchDisconnections helper function
* swarm/network/stream: add concurrent counter for tests
* swarm/network/stream: rename race/norace test files and use const
* swarm/network/stream: remove watchSim and its panic
* swarm/network/stream: pass context in watchDisconnections
* swarm/network/stream: add concurrent safe bool for watchDisconnections
* swarm/storage: fix LDBStore.batchesC data race by not closing it
2019-02-13 13:03:23 +01:00
holisticode
41597c2856
swarm: Debug API and HasChunks() API endpoint ( #18980 )
2019-02-07 15:49:19 +01:00
Anton Evangelatov
9e9fc87e70
swarm: remove unused/dead code ( #18351 )
2018-12-23 17:31:32 +01:00
lash
a6942b9f25
swarm/storage: Batched database migration ( #18113 )
2018-11-15 14:57:03 +01:00
Ferenc Szabo
c41e1bd1eb
swarm/storage: fix garbage collector index skew ( #18080 )
...
On file access LDBStore's tryAccessIdx() function created a faulty
GC Index Data entry, because not indexing the ikey correctly.
That caused the chunk addresses/hashes to start with '00' and the last
two digits were dropped. => Incorrect chunk address.
Besides the fix, the commit also contains a schema change which will
run the CleanGCIndex() function to clean the GC index from erroneous
entries.
Note: CleanGCIndex() rebuilds the index from scratch which can take
a really-really long time with a huge DB (possibly an hour).
2018-11-13 15:22:53 +01:00
Ferenc Szabo
8080265f3f
swarm/storage: fix access count on dbstore after cache hit ( #17978 )
...
Access count was not incremented when chunk was retrieved
from cache. So the garbage collector might have deleted the most
frequently accessed chunk from disk.
Co-authored-by: Ferenc Szabo <ferenc.szabo@ethereum.org>
2018-11-13 07:41:01 +01:00
Ferenc Szabo
54f650a3be
swarm: clean up unused private types and functions ( #17989 )
...
* swarm: clean up unused private types and functions
Those that were identified by code inspection tool.
* swarm/storage: move/add Proximity GoDoc from deleted private function
The mentioned proximity() private function was deleted in:
1ca8fc1e6fa0ab4ab1aaca06d6fb32e173cd5f2f
2018-10-27 16:18:42 +02:00
lash
dc3c3fb1e1
swarm/storage: Add accessCnt for GC ( #17845 )
2018-10-12 16:25:38 +02:00
Anton Evangelatov
303b99663e
swarm: schemas and migrations ( #17813 )
2018-10-03 14:31:59 +02:00
Emil
86a03f97d3
all: simplify s[:] to s where s is a slice ( #17673 )
2018-09-14 22:07:13 +02:00
Balint Gabor
3ff2f75636
swarm: Chunk refactor ( #17659 )
...
Co-authored-by: Janos Guljas <janos@resenje.org>
Co-authored-by: Balint Gabor <balint.g@gmail.com>
Co-authored-by: Anton Evangelatov <anton.evangelatov@gmail.com>
Co-authored-by: Viktor Trón <viktor.tron@gmail.com>
2018-09-13 11:42:19 +02:00
Anton Evangelatov
ff3a5d24d2
swarm/storage: remove redundant increments for dataIdx and entryCnt ( #17484 )
...
* swarm/storage: remove redundant increments for dataIdx and entryCnt
* swarm/storage: add Delete to LDBStore
* swarm/storage: wait for garbage collection
2018-09-12 14:39:45 +02:00
Elad
580145e96d
swarm/storage: added metrics for db entry count ( #17589 )
2018-09-06 12:11:38 +02:00
Anton Evangelatov
a8aa89accb
swarm/storage: cleanup task - remove bigger chunks ( #17424 )
2018-08-20 15:10:30 +03:00
Anton Evangelatov
7c9314f231
swarm: integrate OpenTracing; propagate ctx to internal APIs ( #17169 )
...
* swarm: propagate ctx, enable opentracing
* swarm/tracing: log error when tracing is misconfigured
2018-07-13 17:40:28 +02:00
ethersphere
e187711c65
swarm: network rewrite merge
2018-06-21 21:10:31 +02:00