Giovanni Petrantoni
57e6a95b9c
Merge branch 'publish-backporting' into gossip-one-one
2020-07-07 21:54:07 +09:00
Giovanni Petrantoni
2d0e285810
Merge branch 'master' into publish-backporting
2020-07-07 20:58:58 +09:00
Jacek Sieka
d522537b19
reuse single RNG instance for all crypto key generation ( #249 )
...
* reuse single RNG instance for all crypto key generation
* use foolproof rng
* initRng -> newRng (because it's ref)
* fix test
* imports/exports, chat fix
* fix rsa
* imports and exports
* work around threadvar issue
* fixup
* mac workaround test
2020-07-07 13:14:11 +02:00
Giovanni Petrantoni
73cefce798
remove assertion in publish
2020-07-07 19:42:36 +09:00
Giovanni Petrantoni
69a92aebe6
merge 1.0
2020-07-04 20:53:40 +09:00
Giovanni Petrantoni
2f39cf6f42
Merge branch 'publish-backporting' into gossip-one-one
2020-07-04 19:37:31 +09:00
Giovanni Petrantoni
479c83c1df
with sugar
2020-07-04 19:36:15 +09:00
Giovanni Petrantoni
5e0870d4a4
minor fixes
2020-07-04 14:22:58 +09:00
Giovanni Petrantoni
aed8dcadaf
actually lock the heartbeat
2020-07-04 14:09:42 +09:00
Giovanni Petrantoni
ad7db1ca26
add more heartbeat locking to prevent races
2020-07-04 14:04:44 +09:00
Giovanni Petrantoni
466f3c9171
add back topics in peers, re-enable flood publish
2020-07-04 12:15:35 +09:00
Giovanni Petrantoni
028b390c7f
conditional enable gossip11 module
2020-07-04 11:58:35 +09:00
Giovanni Petrantoni
be0375f840
fix up merge
2020-07-04 11:51:09 +09:00
Giovanni Petrantoni
afb5cb88f9
Merge remote-tracking branch 'origin/publish-backporting' into gossip-one-one
2020-07-04 11:42:16 +09:00
Giovanni Petrantoni
8d0709ce5d
merge new pubsubpeer, copy 1.1 to new module
2020-07-04 11:29:37 +09:00
Giovanni Petrantoni
0d0309a601
better diagnostics
2020-07-03 09:28:20 +09:00
Giovanni Petrantoni
27d22d534d
simplify rebalanceMesh (following spec) and make it finally reach D_high
2020-07-02 23:07:17 +09:00
Giovanni Petrantoni
5e4934bcce
Merge branch 'master' into publish-backporting
2020-07-02 17:44:23 +09:00
Giovanni Petrantoni
4f5c97e27c
remove topics from pubsubpeer (was unused)
2020-07-01 17:44:26 +09:00
Giovanni Petrantoni
d9e0ca6091
getGossipPeers fixes
2020-07-01 17:26:42 +09:00
Giovanni Petrantoni
a976c22dae
triage publish nil peers (issue is on master too but just hidden behind a if/in)
2020-07-01 16:54:28 +09:00
Jacek Sieka
b49c619ca8
export public field types ( #248 )
...
* export public field types
* one more
2020-07-01 09:22:29 +02:00
Giovanni Petrantoni
ec00c7fc50
Peer resultification and defect only ( #245 )
...
* Peer resultification and defect only
* Fixing some tests
* test fixes
* Rename peer into peerid
* better result error message in identify
* further merge fixes
2020-07-01 08:25:09 +02:00
Giovanni Petrantoni
f49e59cb4e
improve fanout replenish behavior further
2020-06-30 11:36:47 +09:00
Giovanni Petrantoni
509d84f03d
restore trace vs debug in gossip
2020-06-30 11:28:45 +09:00
Giovanni Petrantoni
9d33390239
restore utility module import
2020-06-30 00:17:58 +09:00
Dmitriy Ryajov
c788a6a3c0
Cleanup resources ( #246 )
...
* consolidate reading in lpstream
* remove debug echo
* tune log level
* add channel cleanup and cancelation handling
* cancelation handling
* cancelation handling
* cancelation handling
* cancelation handling
* cleanup and cancelation handling
* cancelation handling
* cancelation
* tests
* rename isConnected to connected
* remove testing trace
* comment out debug stacktraces
* explicit raises
2020-06-29 09:15:31 -06:00
Giovanni Petrantoni
680dcfd9cb
cleanups
2020-06-30 00:10:11 +09:00
Giovanni Petrantoni
3a657135dc
Merge branch 'master' into publish-backporting
2020-06-29 22:02:58 +09:00
Giovanni Petrantoni
3dd28adc9f
restore old replenishFanout
2020-06-29 10:46:59 +09:00
Giovanni Petrantoni
2356f6ab68
make sure to not remove peers from gossip table
2020-06-29 10:45:06 +09:00
Jacek Sieka
aa6756dfe0
allow message id provider to be specified ( #243 )
...
* don't send public key in message when not signing (information leak)
* don't run rebalance if there are peers in gossip (see #242 )
* don't crash randomly on bad peer id from remote
2020-06-28 09:56:38 -06:00
Giovanni Petrantoni
d4ca9691d0
test interop fixes
2020-06-28 16:37:27 +09:00
Giovanni Petrantoni
3f39eeb189
fix test's trypublish
2020-06-28 12:50:11 +09:00
Giovanni Petrantoni
31d79ebed8
fix flood tests
2020-06-28 11:58:12 +09:00
Giovanni Petrantoni
f98d2b635d
internal test fixes
2020-06-28 11:03:33 +09:00
Giovanni Petrantoni
b7382eaf25
exclude non gossip from fanout
2020-06-28 10:55:44 +09:00
Giovanni Petrantoni
8e2c9301a0
use g.peers for fanout (todo: don't include flood peers)
2020-06-28 10:53:43 +09:00
Dmitriy Ryajov
902880ef1f
consolidate reading in lpstream ( #241 )
...
* consolidate reading in lpstream
* remove debug echo
* throw if not enough bytes where read
* tune log level
* set eof flag
* test readExactly to fail on not enough bytes
2020-06-27 11:33:34 -06:00
Giovanni Petrantoni
0ddfb31f67
fix internal tests
2020-06-27 20:49:53 +09:00
Giovanni Petrantoni
ccb323ad0f
big publish refactor, replenish and balance
2020-06-27 20:24:29 +09:00
Giovanni Petrantoni
dc3c568dc0
wip... lvalues don't work properly sadly...
2020-06-27 14:59:48 +09:00
Giovanni Petrantoni
1a2f336eb5
use var semantics to optimize table access
2020-06-27 13:35:07 +09:00
Giovanni Petrantoni
ab8d7cc968
make sure to waitsub in sparse test
2020-06-26 16:24:56 +09:00
Giovanni Petrantoni
03801fcc52
small fixes, publish still half broken
2020-06-26 16:06:08 +09:00
Giovanni Petrantoni
ec5c0b867d
add floodPublish logic
2020-06-26 12:39:45 +09:00
Giovanni Petrantoni
cf51da00b2
take into account explicit direct peers in publish
2020-06-26 12:31:08 +09:00
Giovanni Petrantoni
84988a147c
standard setup fixes
2020-06-26 10:16:01 +09:00
Giovanni Petrantoni
98e4bb6769
add a way to pass parameters to gossip
2020-06-25 21:14:22 +09:00
Dmitriy Ryajov
7a95f1844b
Concurrent dials ( #238 )
...
* count published messages
* don't call `switch.dial` in `subscribeToPeer`
* add secureconn constructor
* close in the correct order
* concurent dial lock and track in/out conns better
* make tests pass
* add todo comment
* disconect peers that open too many connections
* wip
* do connection and muxer tracking in one place
* prevent nil pointer in observers
* drop connections when peers is over max
* prevent channel leaks
* don't use closure to handle channel
2020-06-24 09:08:44 -06:00