Commit Graph

6780 Commits

Author SHA1 Message Date
Tan Chee Keong
8fd345c877 move log 2025-04-01 21:12:33 +08:00
Tan Chee Keong
41422b1326 reduce diff 2025-04-01 21:11:17 +08:00
Tan Chee Keong
1877f09a82 Add comment 2025-04-01 20:59:51 +08:00
Tan Chee Keong
dca0060230 Merge branch 'dvt' of https://github.com/chong-he/lighthouse into dvt 2025-04-01 19:59:42 +08:00
Tan Chee Keong
e3406becb5 remove subnet for loop 2025-04-01 19:58:53 +08:00
chonghe
6eb692bd1d Merge branch 'unstable' into dvt 2025-04-01 18:17:06 +08:00
Tan Chee Keong
e8ca60ea23 Fix logging from middleware 2025-04-01 17:33:26 +08:00
antondlr
fb7ec0d151 Change genesis-state-url-timeout (#7112)
Timeouts sometimes occur on downloading the Holeksy genesis state from AWS, we've had reputable outside reports on this.
It's around 200MB and hosted in APAC, it makes sense to bump the default, at least for Holesky.


  Bump default timeout from 180 to 300 secs
2025-04-01 08:30:39 +00:00
Tan Chee Keong
6f2ea51939 sync.rs 2025-04-01 16:07:32 +08:00
Tan Chee Keong
d222ce8a5c tidy up sync.rs 2025-04-01 16:06:14 +08:00
Tan Chee Keong
101f24c440 logging 2025-04-01 10:02:32 +08:00
Tan Chee Keong
9459c362dd Simplify beacon committee selection logging and code 2025-04-01 10:02:09 +08:00
Tan Chee Keong
1118d622f5 Update logging 2025-03-31 18:33:56 +08:00
chonghe
89e19ecc8c Merge branch 'unstable' into dvt 2025-03-31 14:59:07 +08:00
Michael Sproul
bde0f1ef0b Merge remote-tracking branch 'origin/release-v7.0.0' into unstable 2025-03-29 13:01:58 +11:00
Pawan Dhananjay
54aef2d043 Admin add/remove peer (#7198)
N/A


  Adds endpoints to add and remove trusted peers from the http api. The added peers are trusted peers so they won't be disconnected for bad scores. We try to maintain a connection to the peer in case they disconnect from us by trying to dial it every heartbeat.
2025-03-28 12:59:09 +00:00
Eitan Seri-Levi
a5ea05ce2a Top-up pubkey cache on startup (#7217)
This is a workaround for #7216


  In the case of gaps between the in-memory pub key cache and its on-disk representation, use the head state on startup to "top-up" the cache/db w/ any missing validators
2025-03-28 08:29:19 +00:00
Tan Chee Keong
ef90462edb Remove transparent 2025-03-27 20:44:44 +08:00
Tan Chee Keong
7ac6867c5b Add debug logging 2025-03-27 14:35:12 +08:00
Michael Sproul
6d5a2be7f9 Release v7.0.0-beta.5 (#7210)
New release for Pectra-enabled networks.
v7.0.0-beta.5
2025-03-27 03:42:34 +00:00
Tan Chee Keong
b21451fc11 Fix 2025-03-27 11:17:09 +08:00
Tan Chee Keong
1535f40f53 Add back proof slot 2025-03-27 10:44:22 +08:00
Michael Sproul
7d792e615c Fix xdelta3 output buffer issue (#7174)
* Fix xdelta3 output buffer issue

* Fix buckets

* Update commit hash to `main`

* Tag TODO(hdiff)

* Update cargo lock
2025-03-27 13:25:50 +11:00
Michael Sproul
0875326cb6 Prevent duplicate effective balance processing (#7209) 2025-03-27 12:53:38 +11:00
ThreeHrSleep
ca8eaea116 Remove crit as an option from the CLI entirely (#7169)
https://github.com/sigp/lighthouse/issues/7165
2025-03-27 01:26:03 +00:00
Tan Chee Keong
57e0bb60e2 remove proof_slot 2025-03-26 14:03:35 +08:00
Tan Chee Keong
3b883c3d05 Testing distributed mode 2025-03-26 13:57:55 +08:00
Lion - dapplion
6f31d44343 Remove CGC from data_availability checker (#7033)
- Part of https://github.com/sigp/lighthouse/issues/6767

Validator custody makes the CGC and set of sampling columns dynamic. Right now this information is stored twice:
- in the data availability checker
- in the network globals

If that state becomes dynamic we must make sure it is in sync updating it twice, or guarding it behind a mutex. However, I noted that we don't really have to keep the CGC inside the data availability checker. All consumers can actually read it from the network globals, and we can update `make_available` to read the expected count of data columns from the block.
2025-03-26 05:19:51 +00:00
Ruud van Asseldonk
9dce729cb6 Ensure sqlite and rusqlite are optional in consensus/types (#7182)
Even though the `consensus/types` crate has a feature named `sqlite`, it unconditionally depends on the `rusqlite` crate, which then depends on the `sqlite` crate — even when the feature is disabled. When the feature is disabled, the code that imports from `rusqlite` is disabled, so this dependency is not needed when the feature is disabled.

This is not a problem for Lighthouse itself, but I’m interested in using the types defined here in a different Rust project, which depends on a conflicting version of the `sqlite` crate.


  Ensure that the dependency on `rusqlite` is only present when the `sqlite` feature is enabled.
2025-03-25 13:50:10 +00:00
Tan Chee Keong
d2bb70ee8c Remove current slot 2025-03-25 12:06:15 +08:00
Tan Chee Keong
f7f5bf1b86 Modify only current slot 2025-03-24 21:37:27 +08:00
Tan Chee Keong
1631c860dc Implement sync committee selection endpoint 2025-03-24 14:12:34 +08:00
chonghe
3f6c11db0e Some updates to Lighthouse book (#6995)
* #6447


  - Move some deprecated pages to a new section under `Archived`

- Remove fallback log in mev as the log will not be present after VC using `/eth/v3/validator/blocks` endpoint by default
- Add warning against using Btrfs file system (thank you @ChosunOne for the report)
- Add data shared by @mcdee  on tree states API queries time
- Rename partial withdrawals to validator sweep to differentiate it from the upcoming execution layer partial withdrawals
- Update NAT API response
- Update docs on IPv6

- Rename .md files to follow a standard prefix section name, e.g., installation_*.md, advanced_*.md
- Standardise .md files using underscore `_` instead of hyphen `-` to be consistent with other files naming conventions.
2025-03-24 02:30:20 +00:00
Eitan Seri-Levi
2f37bf4de5 Fix more merge conflicts between unstable and release-v7.0.0 2025-03-24 09:13:28 +11:00
Eitan Seri-Levi
cbf1c04a14 resolve merge conflicts between untstable and release-v7.0.0 2025-03-23 11:09:02 -06:00
Jimmy Chen
d323699fde Add missing osaka-time lcli param (#7183)
Getting this when running lcli with `--osaka-time`:

```
error: unexpected argument '--osaka-time' found

tip: a similar argument exists: '--shanghai-time'
```

This PR adds the missing `--osaka-time` option to `lcli`.
2025-03-21 05:36:24 +00:00
Lion - dapplion
ca237652f1 Track request IDs in RangeBlockComponentsRequest (#6998)
Part of
- https://github.com/sigp/lighthouse/issues/6258


  `RangeBlockComponentsRequest` handles a set of by_range requests. It's quite lose on these requests, not tracking them by ID. We want to implement individual request retries, so we must make `RangeBlockComponentsRequest` aware of its requests IDs. We don't want the result of a prior by_range request to affect the state of a future retry. Lookup sync uses this mechanism.

Now `RangeBlockComponentsRequest` tracks:

```rust
pub struct RangeBlockComponentsRequest<E: EthSpec> {
blocks_request: ByRangeRequest<BlocksByRangeRequestId, Vec<Arc<SignedBeaconBlock<E>>>>,
block_data_request: RangeBlockDataRequest<E>,
}

enum RangeBlockDataRequest<E: EthSpec> {
NoData,
Blobs(ByRangeRequest<BlobsByRangeRequestId, Vec<Arc<BlobSidecar<E>>>>),
DataColumns {
requests: HashMap<
DataColumnsByRangeRequestId,
ByRangeRequest<DataColumnsByRangeRequestId, DataColumnSidecarList<E>>,
>,
expected_custody_columns: Vec<ColumnIndex>,
},
}

enum ByRangeRequest<I: PartialEq + std::fmt::Display, T> {
Active(I),
Complete(T),
}
```

I have merged `is_finished` and `Into_responses` into the same function. Otherwise, we need to duplicate the logic to figure out if the requests are done.
2025-03-21 04:07:30 +00:00
Tan Chee Keong
8b2f058d7b Sign selection proof in parallel 2025-03-20 14:03:22 +08:00
Michael Sproul
04868027a6 Release v7.0.0-beta.4 (#7162)
New release for Hoodi testnet including clean versions of fixes from `holesky-rescue`.
v7.0.0-beta.4
2025-03-20 05:12:19 +00:00
Michael Sproul
76d8984f8f Update ring to 0.17.14 to fix build compat (#7164)
Cross builds were failing since:

- https://github.com/sigp/lighthouse/pull/7086

This seems to have been due to a regression upstream in `ring` which is noted in the v0.17.14 release notes. I'm hoping that updating remedies it.

> Compatibility with GNU binutils 2.29 (used on Amazon Linux 2), and probably even earlier versions, was restored. It is expected that ring 0.17.14 will build on all the systems that 0.17.12 would build on.

https://github.com/briansmith/ring/blob/main/RELEASES.md#version-01714-2025-03-11
2025-03-19 15:38:27 +00:00
Eitan Seri-Levi
e4c9805438 Reject attestations to blocks prior to the split (#7084) 2025-03-19 13:39:28 +00:00
Tan Chee Keong
52854a0d12 Add public key in log 2025-03-19 12:28:19 +08:00
Eitan Seri-Levi
ed1b7689ae Manual compaction endpoint backport (#7104)
Backports:
- https://github.com/sigp/lighthouse/pull/7072

To:
- https://github.com/sigp/lighthouse/issues/7039

#7103 should be merged first


  This PR introduces an endpoint that allows users to manually trigger background compaction.
2025-03-18 06:29:12 +00:00
Eitan Seri-Levi
27aabe8159 Pseudo finalization endpoint (#7103)
This is a backport of:
-  https://github.com/sigp/lighthouse/pull/7059
- https://github.com/sigp/lighthouse/pull/7071

For:
- https://github.com/sigp/lighthouse/issues/7039


  Introduce a new lighthouse endpoint that allows a user to force a pseudo finalization. This migrates data to the freezer db and prunes sidechains which may help reduce disk space issues on non finalized networks like Holesky

We also ban peers that send us blocks that conflict with the manually finalized checkpoint.

There were some CI fixes in https://github.com/sigp/lighthouse/pull/7071 that I tried including here

Co-authored with: @jimmygchen  @pawanjay176 @michaelsproul
2025-03-18 05:21:05 +00:00
Michael Sproul
58482586f5 Support Hoodi testnet (#7145)
Hardcode config for the upcoming `hoodi` testnet so we can run with `--network hoodi`.
2025-03-18 02:10:24 +00:00
Michael Sproul
4de062626b State cache tweaks (#7095)
Backport of:

- https://github.com/sigp/lighthouse/pull/7067

For:

- https://github.com/sigp/lighthouse/issues/7039


  - Prevent writing to state cache when migrating the database
- Add `state-cache-headroom` flag to control pruning
- Prune old epoch boundary states ahead of mid-epoch states
- Never prune head block's state
- Avoid caching ancestor states unless they are on an epoch boundary
- Log when states enter/exit the cache

Co-authored-by: Eitan Seri-Levi <eserilev@ucsc.edu>
2025-03-18 02:10:21 +00:00
Eitan Seri-Levi
8ce9edc584 Add block ban flag --invalid-block-roots (#7042) 2025-03-17 13:18:22 +00:00
Mac L
a1b1d7ae58 Remove discv5 logs from logfile output (#7150)
#7146


  Set `dep_logs` to false when building the `file_logging_layer`. This will remove both `discv5` and `libp2p` logs from the output.
2025-03-17 07:27:38 +00:00
Mac L
d96123b028 Remove unnecessary filter_layer in logger builder (#7149)
https://github.com/sigp/lighthouse/issues/7146


  Removes `filter_layer` from the builder as this was acting as a "global minimum". We don't actually need this, since we are using more granular control in `stdout_logging_layer` and `file_logging_layer`. Removing this restores control of the logfiles level back to the `--logfile-debug-level` flag (and defaults to debug).
2025-03-17 05:55:41 +00:00
Tan Chee Keong
4f3b3d5b50 correct timeout 2025-03-17 13:55:24 +08:00