Commit Graph

539 Commits

Author SHA1 Message Date
Richard Ramos 9c0bebc859 refactor: use a map to store credentials instead of an array 2023-08-31 15:42:45 -04:00
Richard Ramos 0854edaf3d refactor: keystore as a data type 2023-08-31 15:42:45 -04:00
harsh jain 229fb7a970
refactor: peerManager test (#683)
* refactor: peerManager test

* fix: break down and fix peerManager test

* refactor: codeClimate linting for peerManager/ConnectionGater
2023-08-30 21:33:57 +07:00
harsh jain accd9ff3e3
feat: add serviceSlot ds (#684)
* feat: add serviceSlot ds

* test: service slot

* nit: codeClimate related changs

* nit: based on comments

* nit: dont' run getPeers for WakuRelayIDv200
2023-08-30 18:57:22 +07:00
harsh jain 4a546d12d3
fix: dont send to subscriptions that don't have any ContentTopic (#695) 2023-08-30 17:35:08 +07:00
richΛrd 4c52149fac
chore: log succesful message pushes (#694)
Co-authored-by: Prem Chaitanya Prathi <chaitanyaprem@gmail.com>
2023-08-30 10:48:06 +05:30
Andrea Maria Piana 8ad08d6b04
Check nils when deliting subscription (#691) 2023-08-29 12:53:39 +01:00
Prem Chaitanya Prathi 67d0b77147
chore: fix frequent logging from poll (#688) 2023-08-28 14:05:59 +05:30
harsh jain 467d1b2ca5
refactor: peerConnector (#665)
* refactor: peerConnector

* fix: code climate and dont waitOn subscriptions PeerData

* fix: check in peerConnector is on outRelay connections

* fix: introduced bug in peerConnector
2023-08-28 13:47:48 +07:00
richΛrd 09eb8ed19b
fix(discv5): threadsafe peerCh (#687) 2023-08-28 11:15:26 +05:30
Richard Ramos 041dc4070a fix(filterV2): requestID and log request type 2023-08-25 13:05:04 -04:00
harsh jain 8b73eb8ae3
refactor(WakuPeerStore): nit origin (#685) 2023-08-25 19:36:06 +04:00
harsh jain bfbc50eb22
fix: missed passing protocols to addPeer (#682) 2023-08-25 14:42:10 +04:00
Prem Chaitanya Prathi 44d3ef6d78
feat: autosharding core logic (#669)
* feat: autosharding core logic
2023-08-25 09:55:38 +05:30
Richard Ramos cb3f5da322 feat: rln metrics 2023-08-24 11:26:37 -04:00
Richard Ramos ddb08adbbd chore: set limit to 5000 to not choke eth1 node and start rln before relay 2023-08-24 10:48:22 -04:00
Richard Ramos 624fe1bb2f chore(rln): run rln in all relay pubsubtopics + remove cli flags 2023-08-24 10:48:22 -04:00
Richard Ramos 5422af8130 fix(rln-relay): RLN DB should be aware of chain and contract address 2023-08-24 10:38:59 -04:00
Richard Ramos 7e36f91a5a fix(rln-relay): flush_interval incorrectly set 2023-08-24 10:38:28 -04:00
Richard Ramos f62ba67a92 chore: update smart contracts and documentation 2023-08-24 10:37:54 -04:00
Richard Ramos 0b943caaa8 refactor: remove credential registering from waku 2023-08-24 10:37:54 -04:00
Richard Ramos f088e49075 feat: create `generate-rln-credentials` subcommand 2023-08-24 10:37:54 -04:00
Richard Ramos 8cc92dfdef chore(rln-relay): rename keystore application to `waku-rln-relay` 2023-08-23 15:38:05 -04:00
Prem Chaitanya Prathi bc06867cc9
chore: utils tests (#661)
* chore: add tests for utils

* chore:delete unused code

* fix: ipv6 validation issue
2023-08-22 19:18:43 +05:30
Prem Chaitanya Prathi 8a9c4d68e3
feat: register for local node's reachability change (#651)
* feat:Register for reachability change and log status

Co-authored-by: richΛrd <info@richardramos.me>

---------

Co-authored-by: richΛrd <info@richardramos.me>
2023-08-20 18:06:35 +05:30
Richard Ramos 2818c3d394 refactor: add libp2p metrics, and make each protocol responsable for defining its own metrics 2023-08-18 13:56:43 -04:00
richΛrd 387ee5f9ac
feat: merkle tree persistence
- use atomic operations API
- resume onchain sync from persisted tree db
- close eth client and db connection appropriately
- pass in the path to the tree db
- fix nwaku compatibility issues
2023-08-18 09:59:37 -04:00
Prem Chaitanya Prathi 287d7a014e
fix: fix relay peer calculation (#650) 2023-08-17 18:26:20 +05:30
Prem Chaitanya Prathi f263be4a74
fix: race condition in peermgt initialization reported by race detector (#646) 2023-08-16 17:55:58 +05:30
Prem Chaitanya Prathi 06f027b1a9
feat: implement relay connectivity loop (#642)
* feat: implement relay conenctivity loop

* chore: fix codeclimate issues

* Apply suggestions from code review

Co-authored-by: richΛrd <info@richardramos.me>

* chore:address review comments

---------

Co-authored-by: richΛrd <info@richardramos.me>
2023-08-15 06:57:51 +05:30
Vitaliy Vlasov 419adcb6a8
chore(filter2): test updates 2023-08-14 16:29:00 -04:00
Richard Ramos c320b38cbe feat(rln-relay): use atomic operations API 2023-08-12 07:44:07 -04:00
Richard Ramos da45dab68e
fix: nwaku / go-waku rlnKeystore compat 2023-08-11 11:54:24 -04:00
Richard Ramos 9e52e09dd5 chore: keepAlive will not immediatly disconnect peers when waking up from sleep, but do it only if pinging the peer fails 2023-08-10 11:16:02 -04:00
Richard Ramos e0e4a2fa87 refactor: remove unused function and simplify code related to creating db and migrations 2023-08-10 10:37:22 -04:00
Richard Ramos ee2af4646c feat: sqlite vacuum and optional migrations 2023-08-10 10:29:40 -04:00
Prem Chaitanya Prathi 9f45d271ac
feat: support serviceslots in peermanager (#631)
* feat: support peermanager serviceslots and update store protocol to use serviceslots

* fix: lint errors in test code

* fix: error in nix build due to vendor sha change

* fix: set host in peermanager even if relay is disabled

* chore: fix codeclimate issues

* chore: using common filterPeer function to avoid duplication

* feat:use service slots in other service protocols

* chore: fix codeclimate issues

* chore: move AddPeer to peermanager

* Apply suggestions from code review

Co-authored-by: richΛrd <info@richardramos.me>

* chore:address review comments

* feat: implement RemovePeer #638

* chore: fix test failure

* Support for multiple slots for service peers
Adding discovered peers also moved to peer manager

---------

Co-authored-by: richΛrd <info@richardramos.me>
2023-08-10 18:28:22 +05:30
Prem Chaitanya Prathi af7471d158
fix:during unsubscribeAll, remove peer without any checks 2023-08-07 15:01:44 +05:30
Prem Chaitanya Prathi baeaa1dd55
fix: data race in peer connector 2023-08-07 14:42:48 +05:30
Prem Chaitanya Prathi 20040f2e9b
fix: data race in filter unsubscribe 2023-08-05 08:03:19 +05:30
Prem Chaitanya Prathi 22398b2868
fix:race in filter peer subscription map iteration and deletion 2023-08-05 08:00:04 +05:30
Prem Chaitanya Prathi 884f65ecdf
fix: noise protocol channel close race condition 2023-08-04 17:19:53 +05:30
Prem Chaitanya Prathi 42b2c0bc6d
fix: race condition in rendezvous test code 2023-08-04 16:37:45 +05:30
Prem Chaitanya Prathi 34de2941c7
Feat/peer manager (#596)
* chore: refactor existing code into peer maanger package

* feat: move peer connection related code into peer manager

* feat: in relay peer connection pruning

* feat: add max-connections CLI flag and limit outRelayPeers based on max-connections #621

* tested both in and out relay connection limits

Co-authored-by: richΛrd <info@richardramos.me>

* Review comment, use context to pause connectivity loop during node shutdown.

Co-authored-by: richΛrd <info@richardramos.me>

* address review comments


---------

Co-authored-by: richΛrd <info@richardramos.me>
2023-08-03 21:51:15 +05:30
Richard Ramos 33344c2ae0 refactor: use uint instead of int for RLN indexes 2023-08-03 11:17:50 -04:00
Richard Ramos a4b038730c feat(rln-relay): pass in index to keystore credentials 2023-08-03 11:17:50 -04:00
Prem Chaitanya Prathi e6aaf9c852
chore: fix comment on test 2023-08-02 11:24:50 +05:30
Richard Ramos 55ec2347a8 fix: RLN
- subscription to topic is not required for registering RLN validator
- check for duplication msg within same epoch was incorrect
- added an example on how to use RLN
2023-08-01 09:19:38 -04:00
Richard Ramos 8b3f42310d fix: code review 2023-08-01 09:17:11 -04:00
Richard Ramos 76961f2bd8 fix: code review 2023-08-01 09:17:11 -04:00