Commit Graph

209 Commits

Author SHA1 Message Date
Richard Ramos 16fcd31b86
refactor_: decouple go-waku api from go-waku wakunode 2024-11-22 10:10:35 -04:00
Richard Ramos 3ac22aed86
feat!: extract storenode cycle to go-waku api 2024-11-22 10:10:29 -04:00
Arseniy Klempner 153c5dbdf4
feat(telemetry)_: add metrics for message reliability (#5899)
* feat(telemetry)_: track message reliability

Add metrics for dial errors, missed messages,
missed relevant messages, and confirmed delivery.

* fix_: handle error from json marshal
2024-10-28 15:01:18 -07:00
osmaczko 2ced83abb7
chore_: replace geth logger with zap logger (#5962)
closes: #6002
2024-10-28 20:54:17 +00:00
Igor Sirotin 679391999f
feat_: `LogOnPanic` linter (#5969)
* feat_: LogOnPanic linter

* fix_: add missing defer LogOnPanic

* chore_: make vendor

* fix_: tests, address pr comments

* fix_: address pr comments
2024-10-23 21:33:05 +01:00
Prem Chaitanya Prathi 97db14083a
chore_: bump go-waku with filter loop fix (#5909)
* chore_: bump go-waku with filter loop fix

* fix_: correct fleet node for staging fleet

* fix_: use shards for lightclient init

---------

Co-authored-by: Richard Ramos <info@richardramos.me>
2024-10-10 17:03:36 +05:30
richΛrd 94ff99d727
fix_: retry dnsdisc on failure (#5785) 2024-10-07 08:33:08 -04:00
richΛrd 7a737433d3
fix_: bandwidthCounter should be reset each time it is retrieved otherwise it behaves like an accumulator (#5898) 2024-10-02 14:26:58 +01:00
frank 38308d48f2
feat_: log on panic (#5849)
* feat_: log error and stacktrace when panic in goroutine

* test_: add test TestSafeGo

* chore_: rename logAndCall to call

* chore_: rename SafeGo to Go

* chore_: make lint-fix

* chore_: use t.Cleanup

* chore_: Revert "chore_: use t.Cleanup"

This reverts commit 4eb420d179cc0e208e84c13cb941e6b3d1ed9819.

* chore_: Revert "chore_: make lint-fix"

This reverts commit fcc995f157e671a4229b47419c3a0e4004b5fdab.

* chore_: Revert "chore_: rename SafeGo to Go"

This reverts commit a6d73d6df583f313032d79aac62f66328039cb55.

* chore_: Revert "chore_: rename logAndCall to call"

This reverts commit 8fbe993bedb9fbba67349a44f151e2dd5e3bc4cc.

* chore_: Revert "test_: add test TestSafeGo"

This reverts commit a1fa91839f3960398980c6bf456e6462ec944819.

* chore_: Revert "feat_: log error and stacktrace when panic in goroutine"

This reverts commit f612dd828fa2ce410d0e806fe773ecbe3e86a68a.

* feat_: log error and stacktrace when panic in goroutine

* chore_: make lint-fix

* chore_: rename logAndCall to call

* chore_: renaming LogOnPanic

* chore_: update rest goroutine function calls

* chore_: make lint-fix
2024-09-27 06:37:32 +08:00
Arseniy Klempner b61b5f58ad
fix(telemetry)_: remove received envelopes metric (#5875)
* fix(telemetry)_: remove received envelopes metric

* fix_: don't use Receivedenvelope in retry cache

---------

Co-authored-by: Václav Pavlín <vaclav.pavlin@gmail.com>
2024-09-26 14:17:11 -07:00
Arseniy Klempner 11a27bb2bd
feat(telemetry)_: message check success and failure, peers by shard and origin (#5824)
* feat(telemetry)_: track message check success and failure

* feat(telemetry)_: track peers by shard and origin
2024-09-18 21:43:04 -07:00
Igor Sirotin 13ab5b6f24
fix_: wakuv2 waitgroups (#5814)
* fix(wakuv2)_: usage of waitgroup

* fix_: revert changes in ConnectionChanged
2024-09-12 15:04:37 +01:00
richΛrd 771a0c3562
refactor: remove wakuv1 code from mailserver cycle and add ENR to list of storenodes (#5753)
* test_: remove eth.prod mailservers from cycle
* test_: disable store request for wakuv1
* chore_: add ENR and remove V1 code
* refactor_: storenode cycle and allow ENRs and multiaddresses
2024-09-05 10:25:26 -04:00
Arseniy Klempner 27d02d5fc8
feat(telemetry)_: include device type in metrics (#5669)
* feat(telemetry)_: include device type in metrics

* chore(telemetry)_: refactor common fields used across metrics
2024-08-30 08:59:03 -07:00
richΛrd bb6b0866f0
fix_: reduce filter loop to 300ms (#5768)
Co-authored-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2024-08-27 08:44:50 -04:00
Igor Sirotin edead41fa6
chore_: upgrade go-waku (#5763)
* chore_: bump go-waku

* chore_: fix go-waku compatibility
2024-08-23 16:44:53 +01:00
kaichaosun b32816a704 chore_: refactor with sender api 2024-08-19 15:16:42 -04:00
Igor Sirotin ab675a2c99
fix_: disable libp2p logs in prod (#5740) 2024-08-19 12:58:21 +01:00
richΛrd c02ebf957c
refactor_: use concrete datatypes instead of `string` (#5701) 2024-08-16 19:24:21 +01:00
Prem Chaitanya Prathi c08dedb77d
fix_: add ticker to check peers and update connection status (#5682) 2024-08-13 13:58:18 +05:30
Igor Sirotin 9175e45e61
fix_: block on logout (#5696)
* fix_: check context on processAndPushTelemetry

* fix_: fix waitgroup add/done in Waku

* fix(pendingTracker)_: stop the pending transacitonTracker on logout

* chore_: lint fix

---------

Co-authored-by: Jonathan Rainville <rainville.jonathan@gmail.com>
2024-08-12 22:30:13 +01:00
kaichao 45cea612d5
chore_: extract message hash query for outgoing messages to go-waku (#5652)
* chore_: extract message sent check to go-waku

* chore_: clear tests

* chore_: refactor confirm messages sent
2024-08-08 15:14:04 +08:00
richΛrd c68854299a
refactor_: remove unused code from wakuv2 (#5651) 2024-08-06 20:18:46 -04:00
richΛrd 20d6d4eb9a
refactor: extract missing messages logic to go-waku (#5638) 2024-08-06 14:49:26 -04:00
Prem Chaitanya Prathi 063756b4ed
chore_: move filter mgr to go-waku (#5653) 2024-08-06 19:05:56 +05:30
Arseniy Klempner 39497c2bff
feat(telemetry)_: send connection failure metric (#5518) 2024-08-05 11:44:57 -07:00
richΛrd 5212f337d7
feat_: rate limit message publishing (#5523) 2024-08-01 14:36:25 -04:00
Prem Chaitanya Prathi f32312ff9b
chore: lightmode ping peers when we come back online, (#5559)
* chore_: lightmode ping peers when we come back online, take filter ping fixes from go-waku

* fix_: handle network change event

* chore_: set connection state as per old state

* chore_: disable discovery for lightmode after connection change

* chore_: take filter error handling fixes from go-waku

* chore_: fix review comments
2024-08-01 16:43:05 +05:30
richΛrd 5d309e2c64
feat_: use storev3 instead of v2 for history queries (#5123) 2024-07-30 14:28:27 -04:00
richΛrd 5b36cf8267
feat_: add lightpush and filter bandwidth usage to telemetry (#5547) 2024-07-24 14:28:38 -04:00
Prem Chaitanya Prathi 9a703162c4
refactor: only use shards (#5474)
* refactor_: use shards by default

* fix_: metadata lightclient check

* chore_: update go-waku
2024-07-15 20:55:12 +05:30
Prem Chaitanya Prathi 58a3cc1127 feat(waku)_: allow client to set store confirmations 2024-07-15 09:37:57 +01:00
Prem Chaitanya Prathi 6c0c267c3c feat_: flag to enable/disable sent message store query confirmations 2024-07-15 09:19:01 +01:00
Arseniy Klempner a006d80acf
feat(telemetry)_: send peer count metric (#5460) 2024-07-12 13:37:55 -07:00
Vaclav Pavlin 33c2f231b0
feat(waku)_: add PeerExchange rate-limit (#5507)
* feat(waku)_: add PeerExchange rate-limit

* fix_: unintentional wg.Add change
2024-07-12 15:21:21 +02:00
Vaclav Pavlin ea35803eef
feat(waku)_: add lightpush rate-limiter (#5504)
* feat(waku)_: add lightpush rate-limiter

* chore_: update go-waku
2024-07-12 12:34:56 +02:00
richΛrd 56cc5c96c5
feat_: bump go-waku to introduce new keep alive interval (#5484)
- Also renames the existing keepAliveInterval to randomPeerKeepAliveInterval, and uses time.Duration instead of int
2024-07-11 14:36:34 -04:00
Richard Ramos 80fe18bef9 feat_: `wakuext_relayPeersByTopic` 2024-07-11 12:32:31 +01:00
richΛrd c0a7a1ee9e
feat_: flag to enable/disable missing message verification (#5497) 2024-07-09 09:42:34 -04:00
richΛrd e47e867b9b
refactor_: use go-waku onlinechecker to manage connection state (#5340) 2024-06-28 09:54:48 -04:00
Arseniy Klempner 5934233266
feat_: call telemetry upon error pushing envelope (#5430)
* feat_: call telemetry upon error pushing envelope

* feat_: call telemetry upon error pushing envelope

---------

Co-authored-by: Václav Pavlín <vaclav.pavlin@gmail.com>
2024-06-28 13:24:04 +03:00
Prem Chaitanya Prathi bd8aa0dac7
fix: enable pxclient in relay and lightClient and some fixes (#5350)
* fix_: use cluster and shard to filter peers received via peerExchange

* chore_: enable pxClient in relay and increase relay peer connections (#5411)

* chore_: update go-waku with fixes
2024-06-28 13:56:56 +05:30
kaichao d8a49c538b
Reset MVDS epoch after peer is online (#5349)
* feat_: reset epoch for online peer

* chore_: fix

* chore_: refactor

* chore_: update mvds

* chore_: fix lint

* chore_: update mvds

* chore_: make vendor

* chore_: fix tst

* chore_: tuning store query hash parameter

* chore_: non-blocking mvds status change channel
2024-06-27 09:54:31 +08:00
richΛrd 7731f56b17
feat(waku2)_: check for missing messages (#5281) 2024-06-26 14:25:44 -04:00
richΛrd a300e12853
feat_: wakuext_enr (#5367) 2024-06-18 15:48:49 -04:00
richΛrd b18baea5cd
fix_: peer counter (#5348) 2024-06-14 12:35:05 -04:00
richΛrd eb0f907137
fix_: use node context instead of context with timeout for discv5 (#5347) 2024-06-14 12:05:17 -04:00
Vit∀ly Vlasov 68acef62d4
feat: Simplify FilterManager and move subscription management to waku (#4665)
* feat_: simplify filter management

fix_: try using shard as a default topic

fix_: filter test to work with shards.staging fleet

* fix_: handle connection status change and manage filter subscriptions better

* chore_: bump go-waku to latest and with some fixes

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

* chore_: disabling pxClient so that only fleet nodes are used for now

---------

Co-authored-by: Prem Chaitanya Prathi <chaitanyaprem@gmail.com>
Co-authored-by: richΛrd <info@richardramos.me>
2024-06-14 18:11:45 +05:30
Arseniy Klempner 1bbb2537b4
feat_: batch all telemetry data and send request every 10 seconds (#5251)
* fix_: add status telemetry client to cli

* feat_: call telemetry when pushing an envelope

* feat_: log status version in all telemetry calls

* feat_: batch all telemetry data and send request every 10 seconds
2024-06-13 15:31:09 -07:00
kaichao 47899fd045
feat_: hash based query for outgoing messages. (#5217)
* feat_: hash based query for outgoing messages.

* chore_: more logs

* chore_: fix comments

* chore_: do not lock when send queries

* chore_: use constant for magic number

* chore_: remove message ids from query queue after ack

* chore_: fix ack clean process

* chore_: fix message resend test

* chore_: add test for waku confirm message sent.

* chore_: fix tests.

* chore_: fix more

* chore_: set store peer id when mailserver updates

* fix_: tests

* chore_: increase max hash query length

* chore_: remove debug log of ack message

* chore_: remove automatic peer selection

* chore_: mark raw message to sent after ack

* chore_: fix test

* chore_: fix test
2024-06-11 15:45:01 +08:00