The commit revises socket tag for TVU over QUIC to reuse old
TVU-forwards socket tag. This avoids gaps in socket tags which wastes
space in ContactInfo.cache.
The change is backward compatible because TVU-forwards is not used any
more and TVU over QUIC is not released yet.
The commit adds a Vec<Extension> to ContactInfo so that future additions
to ContactInfo can be done by only adding new Extensions instead of
modifying the entire ContactInfo.
* we only want to report received message signatures on PUSH requests, not PULL requests
* woops accidently had it has LocalMessage not PushMessage
* switch from match to if let statement
* convert if let to matches macro
* add in from field in PushMessage for message tracking
* update with cargo fmt
* remove display for gossip route and add lifetime param to pubkey reference in gossiproute enum
* forgot to run fmt
* we only want to report received message signatures on PUSH requests, not PULL requests
* woops accidently had it has LocalMessage not PushMessage
* switch from match to if let statement
* convert if let to matches macro
process_gossip_packets_iterations_since_last_report measures the same loop count as gossip_listen_loop_iterations_since_last_report which already exists
* screwed up old branch and syncing with upstream branch
* add fixed size ring buff instead of variable sized vecdeque for reporting signatures
* modify difficulty to take in n 0 bits and check if signature ending ends in n 0 bits
* update to only push every 18 trailing zero bits. and clean up
* report origin with signature. and set trailing 0s to 8 for local testing
* change back to 18 trailing zeros and rm unused imports
* run cargo rmt
* run ./scripts/cargo-for-all-lock-files.sh tree
* allow integer arithmetic for bit comparison
* rm unused lifetime
* rm duplicate entry?
* re implement ring buf
* put ringbuf in sorted order
* ringbuf in cargo.toml now in sorted order
* rm ring buf, refactor, fix trailing zero bug
* fix bug in trailing zeros. was comparing wrong ones
* fix needless range loop bug
* fix bug
* change trailing zero checking to build in methods and only report first 8 bytes of signature and origin pubkey
* report full origin string and first 8 bytes of signature
* set SIGNATURE_SAMPLE_TRAILING_ZEROS back to 18
* forgot to run cargo tree
* avoid panic and change working
* rm bs58
* pass in Option<String> into datapoint_info
* shorten metric names
`Arc` is already a reference internally, so it does not seem to be
beneficial to pass a reference to it. Just adds an extra layer of
indirection.
Functions that need to be able to increment `Arc` reference count need
to take `Arc<AtomicBool>`, but those that just want to read the
`AtomicBool` value can accept `&AtomicBool`, making them a bit more
generic.
This change focuses specifically on `Arc<AtomicBool>`. There are other
uses of `&Arc<T>` in the code base that could be converted in a similar
manner. But it would make the change even larger.
Using a fixed port could cause a false negative, if the port is
currently in use. We actually see this test failing regularly with an
error that port `1111` is already in use.
Quick search did not show any tests that hardcode port 1111, so it is
unclear why is this happening. But using hardcoded ports is not a good
practice anyways.
A node operator can manage a public TPU address (at node startup and while it's running), but doesn't have the ability to manage the TPU Forwards address as well.
This PR adds that functionality.
Added the start argument --public-tpu-forwards-address
Reworked the set-public-tpu-address subcommand into the set-public-address subcommand
Working towards LegacyContactInfo => ContactInfo migration, the commit
hides some implementation details of LegacyContactInfo and expands API
parity with the new ContactInfo.
* introduce workspace.package
* introduce workspace.dependencies
* read version from root cargo.toml
* pass check when version = { workspace = true }
* don't bump version when version = { workspace = true }
* including workspace Cargo.toml when bump version
* programs/sbf use workspace inheritance
* fix increasing cargo version ignore program/sbf/Cargo.toml