Commit Graph

63 Commits

Author SHA1 Message Date
bruce-riley a858d76ef5
Node: Always cut over to quic-v1 (#3715) 2024-01-17 10:12:00 -06:00
Bruce Riley da3828354a Upgrade to libp2p v0.32.2 2024-01-17 10:08:14 -06:00
bruce-riley ebd1802956
Node/CCQ: Allow subscribes from bootstrap peers (#3604) 2023-12-14 13:24:31 -06:00
bruce-riley 36a82af4f0
CCQ/Node/EVM: Refactor (#3542)
* CCQ/Node/EVM: Refactor

* Code review rework
2023-11-28 08:51:30 -06:00
Bruce Riley 21a1129049 QUIC/Node: Set mainnet cut over time 2023-11-27 13:04:45 -05:00
Bruce Riley 5ed7035532 CCQ/Node: Remove excessive logging 2023-11-21 21:53:29 -06:00
bruce-riley c9a0b0a691
CCQ/Node: P2P message filter is wrong (#3547) 2023-11-17 10:59:06 -06:00
Kevin Peters 0cf298cabe node/pkg/p2p: Add GossipSub configuration to Components struct
This is useful for tweaking the gossip sub params for lower network
egress for example
2023-11-16 09:03:31 -06:00
Evan Gray b9b368540a node/ccq: allow guardian peers 2023-11-15 11:40:01 -05:00
Kevin Peters dfbdc9afb4 node/pkg/p2p: Prevent potential nil pointer dereference when processing heartbeats
Resolves the problem occurring when dereferencing a nil `gk *ecdsa.PublicKey`
during heartbeat processing. This issue arises when non-guardian processes
utilizing the p2p package set the key to `nil`.
2023-11-14 17:00:26 -06:00
bruce-riley 8c7d52f7fd
CCQ: Change network ID (#3523) 2023-11-14 10:46:38 -06:00
Evan Gray 22bf5f6987 ccq: better proxy peering 2023-11-09 15:47:14 -05:00
bruce-riley 90b3c3736e
Node: Update QUIC cutover time for testnet (#3463) 2023-10-24 14:26:19 -05:00
bruce-riley c991d991db
Node: QUIC Cut Over (#3431)
* Node: QUIC Cut Over

* New design

* Code review rework
2023-10-19 10:32:13 -05:00
bruce-riley 669e2bc40e
CCQ/Node: Guardian Changes (#3423)
* CCQ/Node: Guardian Changes

* Code review rework
2023-10-12 13:20:42 -05:00
bruce-riley 7b41d1c468
Node: Minor P2P refactor to share init code (#3435) 2023-10-11 08:34:16 -05:00
bruce-riley 753185e042
Node: don't protect from self (#3318) 2023-08-23 16:20:57 -05:00
tbjump a1d5ac2b46 node/p2p: increase TESTNET_BOOTSTRAP_DHI to 350 2023-08-22 12:11:13 -07:00
tbjump e75848de66 node/p2p: Increase gossipParams.Dhi to 50 for testnet bootstrap node 2023-08-22 11:36:07 -07:00
tbjump a9a0912f96 node/p2p: set WithValidateQueueSize 1024 2023-08-22 10:02:24 -07:00
bruce-riley 1721fef95a
Node: Gateway Relayer (#3243) 2023-08-03 10:26:50 -05:00
bruce-riley bd89e4e3ab
Node: Processor delay metrics (#3210) 2023-07-19 10:23:16 -05:00
tbjump 0896d028bd node/p2p: fix capitalization of error messages 2023-07-18 11:39:32 -07:00
tbjump 7a0c03c846 node/node_test: Capture logs at INFO level instead of DEBUG 2023-07-18 11:39:32 -07:00
tbjump 9c668072ef node/p2p: Warn about channel overflows in GoTest mode 2023-07-18 11:39:32 -07:00
tbjump e07a750f90 node/p2p: graceful shutdown on context cancel 2023-07-17 06:32:19 -07:00
tbjump 81b0c2a335 node/p2p: Cleanup bootstrappers generation 2023-07-14 11:35:49 -07:00
tbjump c8fca0f5b9 node/p2p: Enforce connection to bootstrap node on startup 2023-07-14 11:35:49 -07:00
tbjump 372beb01fe node/p2p: Send first heartbeat after 2s to minimize test runtime 2023-07-14 11:35:49 -07:00
Ben Guidarelli 2d9af4d018
Node: Increase subscription buffer size from 32 to 1024 (#3185) 2023-07-11 13:55:50 -04:00
bruce-riley c9c5fa0598
Node: Remove more info logging (#3171) 2023-07-06 09:33:12 -05:00
tbjump 149d898ac6 node: refactor guardiand/node.go 2023-06-26 07:07:37 -07:00
bruce-riley 4ce7099b4a
Node: Make IBC watcher publish wormchain version (#3080)
* Node: Make IBC watcher publish wormchain version

Change-Id: I9c43bbd3032181a03e53b3f145e53669bce3eb9f

* Minor comment change

Change-Id: I1333578d2303a4fe8c18abd72cb392988b245c3f

* Minor tweak to feature string format

Change-Id: I061f718fb0eb032b4264e996c2bc30747feb79bc
2023-06-13 12:38:29 -05:00
tbjump 697767d3a5 node: rm dep github.com/test-go/testify 2023-06-13 11:07:43 -04:00
bruce-riley 240230bd36
Node/Gov: Use component logging (#2667) 2023-04-18 11:38:24 -05:00
bruce-riley 53703d8ffc
Node: ibc watcher (#2566)
* Node: IBC watcher

* Rework event parsing, add tests

* Config changes

* Config changes

* Start converting to tendermint

* More functionality

* Minor test changes

* Formatting changes

* Code review rework

* Rework event parsing

* More rework

* More rework

* Tweak some log levels

* More rework

* More rework

* Don't enable Terra2 over IBC

* Fix issue with error reporting

* More review rework

* Switch from connection IDs to channel IDs

* Remove unused errC from go routines
2023-04-17 09:54:36 -05:00
marcus-jump 6a1271c824
node/p2p: Protect P2P peers (#2344)
Co-authored-by: marcus-jump, tbjump
2023-02-23 15:51:27 -08:00
tbjump 71188d66d1 node/p2p: enforce freshness of heartbeats and correctness of guardianAddr 2023-02-13 07:51:03 -08:00
tbjump f4ec4bfde9 node/p2p: move createSignedHeartbeat to separate function 2023-02-13 07:51:03 -08:00
bruce-riley c84e37e403
Node/p2p: add sub too slow metric (#2361) 2023-02-13 10:11:17 -05:00
tbjump 5323453b81
node: add channel read/write type constraints (#1931) 2023-01-20 13:15:13 -08:00
bruce-riley 09aee3cfde
Node/Acct: Renaming (#2245)
Change-Id: I20783b4ae4e445a54d45280e19332af87336a92a
2023-01-17 07:30:50 -06:00
bruce-riley 499c8424e4
Node: Initial guardiand changes for accounting (#2181)
* node: guardiand support for accounting

Change-Id: I97fe1f6d6d71a5803881ff4c793e3c30f22b14d8

* Node: Tie accounting into the guardian

Change-Id: I31600d18176f516b75b3eb046fd7ac6e54e1b133

* Node: accounting tests and metrics

Change-Id: Ieb139772edf464ed1ab202861babeaf0f857ad6b

* Node: minor tweak to accounting metrics

Change-Id: Iad2b7e34870734f0c5e5d538c0ac86269a9a4728

* Node: load accounting key

Change-Id: I228ce23e63b556d751000b97097202eda48650aa

* More work in progress

Change-Id: I85088d26c05cf02d26043cf6ee8c67efd13f2ea4

* Node: send observations to accounting contract

Change-Id: Ib90909c2ee705d5e2a7e6cf3a6ec4ba7519e2eb1

* Node: Fix lint error in accounting tests

Change-Id: Id73397cf45107243a9f68ba82bed3ccf2b0299b5

* Node: Need to copy libwasmvm.so

Change-Id: I2856c8964ca082f1f4014d6db9fb1b2dc4e64409

* Node: Rename wormchain to wormconn

Change-Id: I6782be733ebdd92b908228d3984a906aa4c795f7

* Node: moving accounting check after governor

Change-Id: I064c77d30514715c6f8b6b5da50806a5e1adf657

* Node: Add accounting status to heartbeat

Change-Id: I0ae3e476386cfaccc5c877ee1351dbe41c0358c7

* Node: start of accounting integration work

Change-Id: I8ad206eb7fc07aa9e1a2ebc321f2c490ec36b51e

* Node: More broadcast tx stuff

Change-Id: Id2cc83df859310c013665eaa9c6ce3033bb1d9c5

* Node: Can actually send a request to accounting

Change-Id: I6af5d59c53939f58b2f13ae501914bef260592f2

* Node: More accounting tx broadcast stuff

Change-Id: If758e49f8928807e87053320e9330c7208aad490

* Node: config changes for accounting

Change-Id: I2803cceb188d04c557a52aa9aa8ba7296da8879f

* Node: More accounting changes

Change-Id: Id979af0ec6ab8484bc094072f3febf39355351ca

* Node/Acct: Use new observation request format

* Node/acct: use new contract interface

* Node/acct: fix minor copy/paste error

* Node: Clean up comments and lint errors

* Node: disable accounting in dev by default

* Node: Fix test failure

* Remove test code

* Switch messages to debug, rename Run()

* check for "out of gas"

* Use worker routine to submit observations

* Rename mutex to reflect what it protects

* Create handleEvents func

* Remove FinalizeObservation

* Node/Acct: Trying to use tm library for watcher

* Node/acct: switch watcher to use tm library

* Node/Acct: Need separate WS parm for accounting

* Node/Acct: Fix compile error in tests

* Node/Acct: Minor rework

* Node: add wormchain as a dep to remove stale code

* Node/Acct: GS index is not correct in requests

* Node/Acct: Peg connection error metric

* Node/Acct: Add wormchain to node docker file

* Node/Acct: Fix for double base64 decode

* Node/Acct: Change public key to sender address

* Node/Acct: Fix lint error

* Node/Acct: key pass phrase change

* Node/Acct: Pass guardian index in obs req

* Node/Acct: No go on submit observation

* Node/Acct: Don't double encode tx_hash

* Node/Acct: Remove unneeded base64 encoding

* Node/Acct: handle submit channel overflow

* Node/Acct: Added a TODO to document a review issue

* Node/Acct: Fix for checking if channel is full

Co-authored-by: Conor Patrick <conorpp94@gmail.com>
2023-01-16 06:33:01 -06:00
tbjump 17e732c741
node/p2p: enforce ObservationRequest signature payload >= 34 bytes (#1992)
Co-authored-by: tbjump <>
2022-11-28 10:42:39 -06:00
tbjump 200fee61a8
node/p2p: enforce minimum heartbeat message length (#1958)
Co-authored-by: tbjump
2022-11-28 10:23:34 -06:00
ckeun 557a32b8f4
node: Added gov gossip support to p2p (#1755)
* node: Added gov gossip support to p2p

* node: Added nil parms for spy & guardian
2022-10-19 22:32:05 -05:00
bruce-riley 2b582b10b8
node: governor publish gossip (#1538)
* Governor publish gossip

Change-Id: I2b8b1ea84a0c411101a7027acd3a27a6d6464d59

* Update the config publish time

Change-Id: Ic6abf84befb1c20756da2ff66b15a8325dc46067

* Not setting value on enqueued VAAs correctly

Change-Id: I9fd3a5d8fc574f8382125445fa688efdae45b88c

* Publish at most 20 VAAs, not 20 per chain

Change-Id: Ic9dff99c59ee89d57fd79158844a1fe1a0003112

* Switch to using signed messages

Change-Id: I66cddc7477cd477aa77bdadfc346b588f2ae645b

* Publish status only once per minute

Change-Id: I972fb0cf868e89c6f74ae4441471a55df389f4dd

* Minor comment change

Change-Id: I0d3e443cbec7edd282f89c1a5cce5d5ec8776d55
2022-09-26 11:24:30 -05:00
Chirantan Ekbote 12459c4a2a Add a wormhole go sdk
The wormhole sdk is a new go module in the sdk/ directory.  This
initially contains the *_consts.go files from the common package in the
top-level sdk package and the entire vaa package as a sub-package.

For go reasons this needs to be in the sdk directory itself (rather than
a sdk/go subdir).  To prevent the go tooling from looking into the other
non-go subdirs, add an empty go.mod file in each one.  See
golang issue 42965 for more details on why we can't have nice
things (I'm deliberately not linking to stop github from spamming that
issue).
2022-09-15 14:35:46 +01:00
Chirantan Ekbote 9e92f9dbbf node: Update libp2p to v0.22.0
Needed to build with newer go toolchains (up to 1.19).  Many of the
libp2p subpackages have been merged as sub-directories of the main
libp2p package so update the imports to use the newer versions.
2022-09-07 10:02:35 +09:00
kev1n-peters 536a97066e
node: configure p2p routing table with bootstrapping nodes (#1455)
Configure the bootstrapping nodes that we will connect to to seed and refresh
the Routing Table if it becomes empty.

Fixes an issue where the spy stops receiving gossiped messages after the node
is restarted, because the Routing Table becomes empty and is never refreshed.
2022-08-24 18:27:59 +02:00