skoupidi
40739693a1
darkfid: persist sync headers in a sled tree + some minor beautifications
2024-04-17 17:42:41 +03:00
skoupidi
07e7252901
darkfid: sync logic changed
...
Currently we used forward block syncing, while with this changes we do two step backwards header sync and then forward block sync using already known headers. This enables the node to know in advance the tip of the peers they will sync from
2024-04-16 18:36:56 +03:00
draoi
58db8fe588
session: don't add manual peers to hostlist
...
By extension, don't share manual peers with other nodes on the network.
This commit also updates the net integration test.
2024-04-15 12:20:35 +02:00
draoi
ec2f74fdaa
manual_session: connection attempt now loops forever
...
previously we would try to connect Settings::manual_attempt_limit times
and exit if we fail on all attempts.
However, Manual session should instead just loop forever. It's not
intended for general users, but is rather a focused session for spinning
up clusters of nodes for development/ testing purposes.
2024-04-15 12:20:35 +02:00
draoi
f46e6abe94
protocol_address: add upper bound to transport requests from other peers
2024-04-15 09:17:55 +02:00
draoi
6c0b1faf98
net: add manual session to p2p integration test
2024-04-13 13:46:55 +02:00
draoi
72c22d0124
doc: change protocol_version TODO to NOTE
2024-04-13 13:46:55 +02:00
draoi
1dcd31ee3a
chore: update hosts.rs TODOs
2024-04-13 13:46:55 +02:00
draoi
efe2d57c4e
net-test: add assert
2024-04-13 13:46:55 +02:00
draoi
e3c69b0fcc
chore: delete unused code comment from message_subscriber.rs
2024-04-13 13:46:55 +02:00
draoi
9aea678125
outbound_session: replace TODO with NOTE
2024-04-13 13:46:55 +02:00
draoi
c0f9920d0a
doc: remove deceptive comment on session/mod.rs
2024-04-13 13:46:55 +02:00
draoi
92cbca047e
outbound_session: just do seed next time if peer discovery waiting for addrs times out
2024-04-13 13:46:55 +02:00
draoi
740a539bfd
channel+protocol_version: add Option<VersionMessage> into Channel
...
When we receive a version message from a node we are connected
to, update to Some(VersionMessage).
2024-04-13 13:46:55 +02:00
draoi
61e51b33d0
lilith+net: move whitelist_refinery back into lilith + create new public functions
...
we expose some methods that allow uses of the P2P interface, such as
lilith, to interact with the hostlist in a safe way.
2024-04-11 11:30:42 +02:00
draoi
7ad0792976
net: make self_handshake_interval a configurable Setting
2024-04-11 11:30:42 +02:00
draoi
2055820a9a
hosts: fix visibility
...
Our new visibility policy is as follows:
1. All methods that write to the hostlist or otherwise modify states
are restricted to the net crate, or are completely private to hosts
when possible.
2. Read methods that do not modify the hostlist and associated states
are public, unless it's an internal function that will never be used
by apps.
2024-04-10 12:11:20 +02:00
draoi
5b02abf032
lilith: move whitelist_refinery() into session::refine_sesssion()
...
This allows us to avoid making a lot of Hosts functions public that
should rather be private to the net module.
2024-04-10 12:11:20 +02:00
draoi
38dcac45b5
p2p: remove more unused artifacts
2024-04-10 12:11:20 +02:00
draoi
2b46488e09
doc: add missing docstrings to net/outbound_session
2024-04-10 12:11:20 +02:00
draoi
06c64b06aa
doc: upgrade some NOTE comments to docstrings
2024-04-10 12:11:20 +02:00
draoi
3998b80d8f
p2p: delete unused peer_discovery_running variable
2024-04-10 12:11:20 +02:00
draoi
a4c9ddcfed
outbound_session: make SlotPreference enum
2024-04-10 12:11:20 +02:00
draoi
7e95c56d61
session: fix bitflags on mod.rs
2024-04-10 12:11:20 +02:00
zero
2d9f5af6b5
test-harness: update pks/vks hashes
2024-04-10 11:00:51 +02:00
zero
441150bbad
contracts: adjust k values to smallest possible
2024-04-10 10:37:02 +02:00
zero
e1b259c019
zkrunner: regenerate all proof witness json files
2024-04-10 10:04:29 +02:00
parazyd
f011b02336
drk: Introduce SQL schema for Deployooor contract
2024-04-09 09:53:57 +02:00
skoupidi
4f9c104206
blockchain: replaced header tree with just its root
2024-04-08 16:36:22 +03:00
skoupidi
9f5e6aafc4
blockchain: changed block height from u64 to u32
2024-04-08 15:17:01 +03:00
skoupidi
0318720cd3
blockchain/tx_store: changed location tx_index from u64 to u16
2024-04-08 12:26:46 +03:00
skoupidi
1a0f997f28
contracts: simplyfied call index usize usage
2024-04-08 12:10:22 +03:00
parazyd
509d9bf0d4
net: Fix bitflags
2024-04-08 10:51:42 +02:00
skoupidi
d9304c15cd
runtime: changed call_index from u32 to u8
2024-04-08 11:40:16 +03:00
zero
425df4c8cb
hosts: fix macro calls formatting
2024-04-08 10:17:36 +02:00
zero
c2c967a673
net: p2p.stop() calls channel.stop() on all channels
2024-04-08 09:17:59 +02:00
zero
af8f1e9d20
net: remove public visibility from outbound_session::Slot, and correct broken docstring
2024-04-08 07:53:09 +02:00
draoi
225e9bbd72
chore: make clippy
2024-04-07 16:45:56 +02:00
draoi
fe0801bcf1
outbound_session: fix bug causing nodes to get stuck in peer discovery
...
ie. if we have gold or white connections we should try to connect to them.
2024-04-07 16:43:31 +02:00
draoi
7870d006d2
chore: cargo fmt
2024-04-07 14:36:10 +02:00
draoi
69470ff9b2
doc: fix incomplete debug statements on hosts.rs
2024-04-07 14:35:06 +02:00
draoi
182efa4b46
p2p_test: slightly more expansive testing
2024-04-07 14:35:06 +02:00
draoi
ec688f485a
p2p: start refine_sesssion() before outbound_session()
...
we should perform self handshake as a priority since we will be sending
our addr in protocol addr
2024-04-07 14:35:06 +02:00
draoi
8a413d1c3d
refine_session: reorder start(), shutdown sequence
...
We should start the self-handshake before the refinery, since it is
higher priority on start(). Also we should first stop the refinery
before saving the hostlist on stop().
2024-04-07 14:35:06 +02:00
draoi
b631a10629
channel: only print disconnect errors when we're on SESSION_NET
...
SESSION_REFINE disconnections will pass silently since they are expected
behavior.
2024-04-07 14:35:06 +02:00
dasman
214458322a
add deg2 (dag_browser) code
2024-04-07 04:40:18 +03:00
draoi
2b18e5307b
session: cleanup SessionBitFlags
...
Add an additional byte to SessionBitFlags to accommodate SESSION_REFINE
and reduce the risk of logic errors.
Additionally:
* `!SESSION_SEED & !SESSION_REFINE` is now referred to as `SESSION_DEFAULT`
* `!SESSION_REFINE` is refered to as `SESSION_NET`.
* `SESSION_ALL` has been deleted since it was conceptually out-dated
* Binaries have been updated.
2024-04-06 11:40:07 +02:00
skoupidi
9d64403407
zk/debug: properly structure feature imports
2024-04-05 15:40:47 +03:00
zero
1a1a26e396
Revert "sdk: move find_subslice() and NextTupleN from zkas into SDK util.rs"
...
This reverts commit dcf419b0ca .
2024-04-05 12:39:42 +02:00
skoupidi
930a511309
blockchain: major hashes cleanup
2024-04-04 22:00:51 +03:00