-
Notifications
You must be signed in to change notification settings - Fork 2.9k
feat(gas_price_service): include trait declaration for block committer data #2155
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
a0c2757 to
765c173
Compare
|
|
||
| #[async_trait::async_trait] | ||
| pub trait DaCommitSource: Send + Sync { | ||
| async fn get_da_commit_details(&mut self) -> Result<DaCommitDetails>; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this should actually be sync, not async. This is because we want it to return immediately every time. Usually it will return an empty range. So maybe this should also be Option to capture that?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
addressed in 9d68aa1
| AlgorithmUpdater::V0(updater) => { | ||
| updater.update_l2_block_data(height, gas_used, capacity)?; | ||
| } | ||
| AlgorithmUpdater::V1(updater) => { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should just throw an error on this branch for now. Just to be abundantly clear that it's WIP.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
addressed in 9d68aa1
|
This PR is also adding some work toward: #2140 That's fine. It's all related and partially interdependent. |
netrome
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A few questions and suggestions, but mainly I'd like to see any todos linked to issues to understand how the plan forward looks.
crates/services/gas_price_service/src/fuel_gas_price_updater.rs
Outdated
Show resolved
Hide resolved
crates/services/gas_price_service/src/fuel_gas_price_updater.rs
Outdated
Show resolved
Hide resolved
crates/services/gas_price_service/src/fuel_gas_price_updater/fuel_da_source_adapter.rs
Outdated
Show resolved
Hide resolved
crates/services/gas_price_service/src/fuel_gas_price_updater.rs
Outdated
Show resolved
Hide resolved
netrome
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry to be a pain in the butt, but even if the TODO relates to the same issue I'd like it to be visible from the code - because people reading just the code will not have the PR or issue for context otherwise.
crates/services/gas_price_service/src/fuel_gas_price_updater/fuel_da_source_adapter.rs
Outdated
Show resolved
Hide resolved
netrome
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice, thanks for bearing with me on all todo labels 😅
…d polling for da metadata (#2163) > [!WARNING] > 🏗️ This PR is 2/3 of including block committer "da"ta in v1 of the gas price algo. We have a dependency on the api of the block committer, which will warrant tweaking of the `DaMetadataResponse` type. The next PR will hook it up with cli args 🚧 ## Linked Issues/PRs <!-- List of related issues/PRs --> - follow up to: #2155 - #2139 ## Description <!-- List of detailed changes --> - specified a Service that polls an ingestor at specified intervals to fetch the da metadata in the background - specified a "sync"/"non-expensive" api for the data, which marks it as stale/None after fetching it ## Checklist - [x] Breaking changes are clearly marked as such in the PR description and changelog - [x] New behavior is reflected in tests - [x] [The specification](https://github.com/FuelLabs/fuel-specs/) matches the implemented behavior (link update PR if changes are needed) ### Before requesting review - [x] I have reviewed the code myself - [x] I have created follow-up issues caused by this PR and linked them here ### After merging, notify other teams [Add or remove entries as needed] - [ ] [Rust SDK](https://github.com/FuelLabs/fuels-rs/) - [ ] [Sway compiler](https://github.com/FuelLabs/sway/) - [ ] [Platform documentation](https://github.com/FuelLabs/devrel-requests/issues/new?assignees=&labels=new+request&projects=&template=NEW-REQUEST.yml&title=%5BRequest%5D%3A+) (for out-of-organization contributors, the person merging the PR will do this) - [ ] Someone else? --------- Co-authored-by: Mitchell Turner <[email protected]>
## Version v0.36.0 ### Added - [2135](#2135): Added metrics logging for number of blocks served over the p2p req/res protocol. - [2151](#2151): Added limitations on gas used during dry_run in API. - [2188](#2188): Added the new variant `V2` for the `ConsensusParameters` which contains the new `block_transaction_size_limit` parameter. - [2163](#2163): Added runnable task for fetching block committer data. - [2204](#2204): Added `dnsaddr` resolution for TLD without suffixes. ### Changed #### Breaking - [2199](#2199): Applying several breaking changes to the WASM interface from backlog: - Get the module to execute WASM byte code from the storage first, an fallback to the built-in version in the case of the `FUEL_ALWAYS_USE_WASM`. - Added `host_v1` with a new `peek_next_txs_size` method, that accepts `tx_number_limit` and `size_limit`. - Added new variant of the return type to pass the validation result. It removes block serialization and deserialization and should improve performance. - Added a V1 execution result type that uses `JSONError` instead of postcard serialized error. It adds flexibility of how variants of the error can be managed. More information about it in FuelLabs/fuel-vm#797. The change also moves `TooManyOutputs` error to the top. It shows that `JSONError` works as expected. - [2145](#2145): feat: Introduce time port in PoA service. - [2155](#2155): Added trait declaration for block committer data - [2142](#2142): Added benchmarks for varied forms of db lookups to assist in optimizations. - [2158](#2158): Log the public address of the signing key, if it is specified - [2188](#2188): Upgraded the `fuel-vm` to `0.57.0`. More information in the [release](https://github.com/FuelLabs/fuel-vm/releases/tag/v0.57.0). ## What's Changed * chore(p2p_service): add metrics for number of blocks requested over p2p req/res protocol by @rymnc in #2135 * Weekly `cargo update` by @github-actions in #2149 * Debug V1 algorightm and use more realistic values in gas price analysis by @MitchTurner in #2129 * feat(gas_price_service): include trait declaration for block committer data by @rymnc in #2155 * Convert gas price analysis tool to CLI by @MitchTurner in #2156 * chore: add benchmarks for varied forms of lookups by @rymnc in #2142 * Add label nochangelog on weekly cargo update by @AurelienFT in #2152 * Log consensus-key signer address if specified by @acerone85 in #2158 * chore(rocks_db): move ShallowTempDir to benches crate by @rymnc in #2168 * chore(benches): conditional dropping of databases in benchmarks by @rymnc in #2170 * feat: Introduce time port in PoA service by @netrome in #2145 * Get DA costs from predefined data by @MitchTurner in #2157 * chore(shallow_temp_dir): panic if not panicking by @rymnc in #2172 * chore: Add initial CODEOWNERS file by @netrome in #2179 * Weekly `cargo update` by @github-actions in #2177 * fix(db_lookup_times): rework core logic of benchmark by @rymnc in #2159 * Add verification on transaction dry_run that they don't spend more than block gas limit by @AurelienFT in #2151 * bug: fix algorithm overflow issues by @MitchTurner in #2173 * feat(gas_price_service): create runnable task for expensive background polling for da metadata by @rymnc in #2163 * Weekly `cargo update` by @github-actions in #2197 * Fix bug with gas price factor in V1 algorithm by @MitchTurner in #2201 * Applying several breaking changes to the WASM interface from backlog by @xgreenx in #2199 * chore(p2p): dnsaddr recursive resolution by @rymnc in #2204 ## New Contributors * @acerone85 made their first contribution in #2158 **Full Changelog**: v0.35.0...v0.36.0
…d polling for da metadata (#2163) > [!WARNING] > 🏗️ This PR is 2/3 of including block committer "da"ta in v1 of the gas price algo. We have a dependency on the api of the block committer, which will warrant tweaking of the `DaMetadataResponse` type. The next PR will hook it up with cli args 🚧 ## Linked Issues/PRs <!-- List of related issues/PRs --> - follow up to: FuelLabs/fuel-core#2155 - FuelLabs/fuel-core#2139 ## Description <!-- List of detailed changes --> - specified a Service that polls an ingestor at specified intervals to fetch the da metadata in the background - specified a "sync"/"non-expensive" api for the data, which marks it as stale/None after fetching it ## Checklist - [x] Breaking changes are clearly marked as such in the PR description and changelog - [x] New behavior is reflected in tests - [x] [The specification](https://github.com/FuelLabs/fuel-specs/) matches the implemented behavior (link update PR if changes are needed) ### Before requesting review - [x] I have reviewed the code myself - [x] I have created follow-up issues caused by this PR and linked them here ### After merging, notify other teams [Add or remove entries as needed] - [ ] [Rust SDK](https://github.com/FuelLabs/fuels-rs/) - [ ] [Sway compiler](https://github.com/FuelLabs/sway/) - [ ] [Platform documentation](https://github.com/FuelLabs/devrel-requests/issues/new?assignees=&labels=new+request&projects=&template=NEW-REQUEST.yml&title=%5BRequest%5D%3A+) (for out-of-organization contributors, the person merging the PR will do this) - [ ] Someone else? --------- Co-authored-by: Mitchell Turner <[email protected]>
## Version v0.36.0 ### Added - [2135](FuelLabs/fuel-core#2135): Added metrics logging for number of blocks served over the p2p req/res protocol. - [2151](FuelLabs/fuel-core#2151): Added limitations on gas used during dry_run in API. - [2188](FuelLabs/fuel-core#2188): Added the new variant `V2` for the `ConsensusParameters` which contains the new `block_transaction_size_limit` parameter. - [2163](FuelLabs/fuel-core#2163): Added runnable task for fetching block committer data. - [2204](FuelLabs/fuel-core#2204): Added `dnsaddr` resolution for TLD without suffixes. ### Changed #### Breaking - [2199](FuelLabs/fuel-core#2199): Applying several breaking changes to the WASM interface from backlog: - Get the module to execute WASM byte code from the storage first, an fallback to the built-in version in the case of the `FUEL_ALWAYS_USE_WASM`. - Added `host_v1` with a new `peek_next_txs_size` method, that accepts `tx_number_limit` and `size_limit`. - Added new variant of the return type to pass the validation result. It removes block serialization and deserialization and should improve performance. - Added a V1 execution result type that uses `JSONError` instead of postcard serialized error. It adds flexibility of how variants of the error can be managed. More information about it in FuelLabs/fuel-vm#797. The change also moves `TooManyOutputs` error to the top. It shows that `JSONError` works as expected. - [2145](FuelLabs/fuel-core#2145): feat: Introduce time port in PoA service. - [2155](FuelLabs/fuel-core#2155): Added trait declaration for block committer data - [2142](FuelLabs/fuel-core#2142): Added benchmarks for varied forms of db lookups to assist in optimizations. - [2158](FuelLabs/fuel-core#2158): Log the public address of the signing key, if it is specified - [2188](FuelLabs/fuel-core#2188): Upgraded the `fuel-vm` to `0.57.0`. More information in the [release](https://github.com/FuelLabs/fuel-vm/releases/tag/v0.57.0). ## What's Changed * chore(p2p_service): add metrics for number of blocks requested over p2p req/res protocol by @rymnc in FuelLabs/fuel-core#2135 * Weekly `cargo update` by @github-actions in FuelLabs/fuel-core#2149 * Debug V1 algorightm and use more realistic values in gas price analysis by @MitchTurner in FuelLabs/fuel-core#2129 * feat(gas_price_service): include trait declaration for block committer data by @rymnc in FuelLabs/fuel-core#2155 * Convert gas price analysis tool to CLI by @MitchTurner in FuelLabs/fuel-core#2156 * chore: add benchmarks for varied forms of lookups by @rymnc in FuelLabs/fuel-core#2142 * Add label nochangelog on weekly cargo update by @AurelienFT in FuelLabs/fuel-core#2152 * Log consensus-key signer address if specified by @acerone85 in FuelLabs/fuel-core#2158 * chore(rocks_db): move ShallowTempDir to benches crate by @rymnc in FuelLabs/fuel-core#2168 * chore(benches): conditional dropping of databases in benchmarks by @rymnc in FuelLabs/fuel-core#2170 * feat: Introduce time port in PoA service by @netrome in FuelLabs/fuel-core#2145 * Get DA costs from predefined data by @MitchTurner in FuelLabs/fuel-core#2157 * chore(shallow_temp_dir): panic if not panicking by @rymnc in FuelLabs/fuel-core#2172 * chore: Add initial CODEOWNERS file by @netrome in FuelLabs/fuel-core#2179 * Weekly `cargo update` by @github-actions in FuelLabs/fuel-core#2177 * fix(db_lookup_times): rework core logic of benchmark by @rymnc in FuelLabs/fuel-core#2159 * Add verification on transaction dry_run that they don't spend more than block gas limit by @AurelienFT in FuelLabs/fuel-core#2151 * bug: fix algorithm overflow issues by @MitchTurner in FuelLabs/fuel-core#2173 * feat(gas_price_service): create runnable task for expensive background polling for da metadata by @rymnc in FuelLabs/fuel-core#2163 * Weekly `cargo update` by @github-actions in FuelLabs/fuel-core#2197 * Fix bug with gas price factor in V1 algorithm by @MitchTurner in FuelLabs/fuel-core#2201 * Applying several breaking changes to the WASM interface from backlog by @xgreenx in FuelLabs/fuel-core#2199 * chore(p2p): dnsaddr recursive resolution by @rymnc in FuelLabs/fuel-core#2204 ## New Contributors * @acerone85 made their first contribution in FuelLabs/fuel-core#2158 **Full Changelog**: FuelLabs/fuel-core@v0.35.0...v0.36.0
…d polling for da metadata (#2163) > [!WARNING] > 🏗️ This PR is 2/3 of including block committer "da"ta in v1 of the gas price algo. We have a dependency on the api of the block committer, which will warrant tweaking of the `DaMetadataResponse` type. The next PR will hook it up with cli args 🚧 ## Linked Issues/PRs <!-- List of related issues/PRs --> - follow up to: FuelLabs/fuel-core#2155 - FuelLabs/fuel-core#2139 ## Description <!-- List of detailed changes --> - specified a Service that polls an ingestor at specified intervals to fetch the da metadata in the background - specified a "sync"/"non-expensive" api for the data, which marks it as stale/None after fetching it ## Checklist - [x] Breaking changes are clearly marked as such in the PR description and changelog - [x] New behavior is reflected in tests - [x] [The specification](https://github.com/FuelLabs/fuel-specs/) matches the implemented behavior (link update PR if changes are needed) ### Before requesting review - [x] I have reviewed the code myself - [x] I have created follow-up issues caused by this PR and linked them here ### After merging, notify other teams [Add or remove entries as needed] - [ ] [Rust SDK](https://github.com/FuelLabs/fuels-rs/) - [ ] [Sway compiler](https://github.com/FuelLabs/sway/) - [ ] [Platform documentation](https://github.com/FuelLabs/devrel-requests/issues/new?assignees=&labels=new+request&projects=&template=NEW-REQUEST.yml&title=%5BRequest%5D%3A+) (for out-of-organization contributors, the person merging the PR will do this) - [ ] Someone else? --------- Co-authored-by: Mitchell Turner <[email protected]>
## Version v0.36.0 ### Added - [2135](FuelLabs/fuel-core#2135): Added metrics logging for number of blocks served over the p2p req/res protocol. - [2151](FuelLabs/fuel-core#2151): Added limitations on gas used during dry_run in API. - [2188](FuelLabs/fuel-core#2188): Added the new variant `V2` for the `ConsensusParameters` which contains the new `block_transaction_size_limit` parameter. - [2163](FuelLabs/fuel-core#2163): Added runnable task for fetching block committer data. - [2204](FuelLabs/fuel-core#2204): Added `dnsaddr` resolution for TLD without suffixes. ### Changed #### Breaking - [2199](FuelLabs/fuel-core#2199): Applying several breaking changes to the WASM interface from backlog: - Get the module to execute WASM byte code from the storage first, an fallback to the built-in version in the case of the `FUEL_ALWAYS_USE_WASM`. - Added `host_v1` with a new `peek_next_txs_size` method, that accepts `tx_number_limit` and `size_limit`. - Added new variant of the return type to pass the validation result. It removes block serialization and deserialization and should improve performance. - Added a V1 execution result type that uses `JSONError` instead of postcard serialized error. It adds flexibility of how variants of the error can be managed. More information about it in FuelLabs/fuel-vm#797. The change also moves `TooManyOutputs` error to the top. It shows that `JSONError` works as expected. - [2145](FuelLabs/fuel-core#2145): feat: Introduce time port in PoA service. - [2155](FuelLabs/fuel-core#2155): Added trait declaration for block committer data - [2142](FuelLabs/fuel-core#2142): Added benchmarks for varied forms of db lookups to assist in optimizations. - [2158](FuelLabs/fuel-core#2158): Log the public address of the signing key, if it is specified - [2188](FuelLabs/fuel-core#2188): Upgraded the `fuel-vm` to `0.57.0`. More information in the [release](https://github.com/FuelLabs/fuel-vm/releases/tag/v0.57.0). ## What's Changed * chore(p2p_service): add metrics for number of blocks requested over p2p req/res protocol by @rymnc in FuelLabs/fuel-core#2135 * Weekly `cargo update` by @github-actions in FuelLabs/fuel-core#2149 * Debug V1 algorightm and use more realistic values in gas price analysis by @MitchTurner in FuelLabs/fuel-core#2129 * feat(gas_price_service): include trait declaration for block committer data by @rymnc in FuelLabs/fuel-core#2155 * Convert gas price analysis tool to CLI by @MitchTurner in FuelLabs/fuel-core#2156 * chore: add benchmarks for varied forms of lookups by @rymnc in FuelLabs/fuel-core#2142 * Add label nochangelog on weekly cargo update by @AurelienFT in FuelLabs/fuel-core#2152 * Log consensus-key signer address if specified by @acerone85 in FuelLabs/fuel-core#2158 * chore(rocks_db): move ShallowTempDir to benches crate by @rymnc in FuelLabs/fuel-core#2168 * chore(benches): conditional dropping of databases in benchmarks by @rymnc in FuelLabs/fuel-core#2170 * feat: Introduce time port in PoA service by @netrome in FuelLabs/fuel-core#2145 * Get DA costs from predefined data by @MitchTurner in FuelLabs/fuel-core#2157 * chore(shallow_temp_dir): panic if not panicking by @rymnc in FuelLabs/fuel-core#2172 * chore: Add initial CODEOWNERS file by @netrome in FuelLabs/fuel-core#2179 * Weekly `cargo update` by @github-actions in FuelLabs/fuel-core#2177 * fix(db_lookup_times): rework core logic of benchmark by @rymnc in FuelLabs/fuel-core#2159 * Add verification on transaction dry_run that they don't spend more than block gas limit by @AurelienFT in FuelLabs/fuel-core#2151 * bug: fix algorithm overflow issues by @MitchTurner in FuelLabs/fuel-core#2173 * feat(gas_price_service): create runnable task for expensive background polling for da metadata by @rymnc in FuelLabs/fuel-core#2163 * Weekly `cargo update` by @github-actions in FuelLabs/fuel-core#2197 * Fix bug with gas price factor in V1 algorithm by @MitchTurner in FuelLabs/fuel-core#2201 * Applying several breaking changes to the WASM interface from backlog by @xgreenx in FuelLabs/fuel-core#2199 * chore(p2p): dnsaddr recursive resolution by @rymnc in FuelLabs/fuel-core#2204 ## New Contributors * @acerone85 made their first contribution in FuelLabs/fuel-core#2158 **Full Changelog**: FuelLabs/fuel-core@v0.35.0...v0.36.0
…d polling for da metadata (#2163) > [!WARNING] > 🏗️ This PR is 2/3 of including block committer "da"ta in v1 of the gas price algo. We have a dependency on the api of the block committer, which will warrant tweaking of the `DaMetadataResponse` type. The next PR will hook it up with cli args 🚧 ## Linked Issues/PRs <!-- List of related issues/PRs --> - follow up to: FuelLabs/fuel-core#2155 - FuelLabs/fuel-core#2139 ## Description <!-- List of detailed changes --> - specified a Service that polls an ingestor at specified intervals to fetch the da metadata in the background - specified a "sync"/"non-expensive" api for the data, which marks it as stale/None after fetching it ## Checklist - [x] Breaking changes are clearly marked as such in the PR description and changelog - [x] New behavior is reflected in tests - [x] [The specification](https://github.com/FuelLabs/fuel-specs/) matches the implemented behavior (link update PR if changes are needed) ### Before requesting review - [x] I have reviewed the code myself - [x] I have created follow-up issues caused by this PR and linked them here ### After merging, notify other teams [Add or remove entries as needed] - [ ] [Rust SDK](https://github.com/FuelLabs/fuels-rs/) - [ ] [Sway compiler](https://github.com/FuelLabs/sway/) - [ ] [Platform documentation](https://github.com/FuelLabs/devrel-requests/issues/new?assignees=&labels=new+request&projects=&template=NEW-REQUEST.yml&title=%5BRequest%5D%3A+) (for out-of-organization contributors, the person merging the PR will do this) - [ ] Someone else? --------- Co-authored-by: Mitchell Turner <[email protected]>
## Version v0.36.0 ### Added - [2135](FuelLabs/fuel-core#2135): Added metrics logging for number of blocks served over the p2p req/res protocol. - [2151](FuelLabs/fuel-core#2151): Added limitations on gas used during dry_run in API. - [2188](FuelLabs/fuel-core#2188): Added the new variant `V2` for the `ConsensusParameters` which contains the new `block_transaction_size_limit` parameter. - [2163](FuelLabs/fuel-core#2163): Added runnable task for fetching block committer data. - [2204](FuelLabs/fuel-core#2204): Added `dnsaddr` resolution for TLD without suffixes. ### Changed #### Breaking - [2199](FuelLabs/fuel-core#2199): Applying several breaking changes to the WASM interface from backlog: - Get the module to execute WASM byte code from the storage first, an fallback to the built-in version in the case of the `FUEL_ALWAYS_USE_WASM`. - Added `host_v1` with a new `peek_next_txs_size` method, that accepts `tx_number_limit` and `size_limit`. - Added new variant of the return type to pass the validation result. It removes block serialization and deserialization and should improve performance. - Added a V1 execution result type that uses `JSONError` instead of postcard serialized error. It adds flexibility of how variants of the error can be managed. More information about it in FuelLabs/fuel-vm#797. The change also moves `TooManyOutputs` error to the top. It shows that `JSONError` works as expected. - [2145](FuelLabs/fuel-core#2145): feat: Introduce time port in PoA service. - [2155](FuelLabs/fuel-core#2155): Added trait declaration for block committer data - [2142](FuelLabs/fuel-core#2142): Added benchmarks for varied forms of db lookups to assist in optimizations. - [2158](FuelLabs/fuel-core#2158): Log the public address of the signing key, if it is specified - [2188](FuelLabs/fuel-core#2188): Upgraded the `fuel-vm` to `0.57.0`. More information in the [release](https://github.com/FuelLabs/fuel-vm/releases/tag/v0.57.0). ## What's Changed * chore(p2p_service): add metrics for number of blocks requested over p2p req/res protocol by @rymnc in FuelLabs/fuel-core#2135 * Weekly `cargo update` by @github-actions in FuelLabs/fuel-core#2149 * Debug V1 algorightm and use more realistic values in gas price analysis by @MitchTurner in FuelLabs/fuel-core#2129 * feat(gas_price_service): include trait declaration for block committer data by @rymnc in FuelLabs/fuel-core#2155 * Convert gas price analysis tool to CLI by @MitchTurner in FuelLabs/fuel-core#2156 * chore: add benchmarks for varied forms of lookups by @rymnc in FuelLabs/fuel-core#2142 * Add label nochangelog on weekly cargo update by @AurelienFT in FuelLabs/fuel-core#2152 * Log consensus-key signer address if specified by @acerone85 in FuelLabs/fuel-core#2158 * chore(rocks_db): move ShallowTempDir to benches crate by @rymnc in FuelLabs/fuel-core#2168 * chore(benches): conditional dropping of databases in benchmarks by @rymnc in FuelLabs/fuel-core#2170 * feat: Introduce time port in PoA service by @netrome in FuelLabs/fuel-core#2145 * Get DA costs from predefined data by @MitchTurner in FuelLabs/fuel-core#2157 * chore(shallow_temp_dir): panic if not panicking by @rymnc in FuelLabs/fuel-core#2172 * chore: Add initial CODEOWNERS file by @netrome in FuelLabs/fuel-core#2179 * Weekly `cargo update` by @github-actions in FuelLabs/fuel-core#2177 * fix(db_lookup_times): rework core logic of benchmark by @rymnc in FuelLabs/fuel-core#2159 * Add verification on transaction dry_run that they don't spend more than block gas limit by @AurelienFT in FuelLabs/fuel-core#2151 * bug: fix algorithm overflow issues by @MitchTurner in FuelLabs/fuel-core#2173 * feat(gas_price_service): create runnable task for expensive background polling for da metadata by @rymnc in FuelLabs/fuel-core#2163 * Weekly `cargo update` by @github-actions in FuelLabs/fuel-core#2197 * Fix bug with gas price factor in V1 algorithm by @MitchTurner in FuelLabs/fuel-core#2201 * Applying several breaking changes to the WASM interface from backlog by @xgreenx in FuelLabs/fuel-core#2199 * chore(p2p): dnsaddr recursive resolution by @rymnc in FuelLabs/fuel-core#2204 ## New Contributors * @acerone85 made their first contribution in FuelLabs/fuel-core#2158 **Full Changelog**: FuelLabs/fuel-core@v0.35.0...v0.36.0
…d polling for da metadata (#2163) > [!WARNING] > 🏗️ This PR is 2/3 of including block committer "da"ta in v1 of the gas price algo. We have a dependency on the api of the block committer, which will warrant tweaking of the `DaMetadataResponse` type. The next PR will hook it up with cli args 🚧 ## Linked Issues/PRs <!-- List of related issues/PRs --> - follow up to: FuelLabs/fuel-core#2155 - FuelLabs/fuel-core#2139 ## Description <!-- List of detailed changes --> - specified a Service that polls an ingestor at specified intervals to fetch the da metadata in the background - specified a "sync"/"non-expensive" api for the data, which marks it as stale/None after fetching it ## Checklist - [x] Breaking changes are clearly marked as such in the PR description and changelog - [x] New behavior is reflected in tests - [x] [The specification](https://github.com/FuelLabs/fuel-specs/) matches the implemented behavior (link update PR if changes are needed) ### Before requesting review - [x] I have reviewed the code myself - [x] I have created follow-up issues caused by this PR and linked them here ### After merging, notify other teams [Add or remove entries as needed] - [ ] [Rust SDK](https://github.com/FuelLabs/fuels-rs/) - [ ] [Sway compiler](https://github.com/FuelLabs/sway/) - [ ] [Platform documentation](https://github.com/FuelLabs/devrel-requests/issues/new?assignees=&labels=new+request&projects=&template=NEW-REQUEST.yml&title=%5BRequest%5D%3A+) (for out-of-organization contributors, the person merging the PR will do this) - [ ] Someone else? --------- Co-authored-by: Mitchell Turner <[email protected]>
## Version v0.36.0 ### Added - [2135](FuelLabs/fuel-core#2135): Added metrics logging for number of blocks served over the p2p req/res protocol. - [2151](FuelLabs/fuel-core#2151): Added limitations on gas used during dry_run in API. - [2188](FuelLabs/fuel-core#2188): Added the new variant `V2` for the `ConsensusParameters` which contains the new `block_transaction_size_limit` parameter. - [2163](FuelLabs/fuel-core#2163): Added runnable task for fetching block committer data. - [2204](FuelLabs/fuel-core#2204): Added `dnsaddr` resolution for TLD without suffixes. ### Changed #### Breaking - [2199](FuelLabs/fuel-core#2199): Applying several breaking changes to the WASM interface from backlog: - Get the module to execute WASM byte code from the storage first, an fallback to the built-in version in the case of the `FUEL_ALWAYS_USE_WASM`. - Added `host_v1` with a new `peek_next_txs_size` method, that accepts `tx_number_limit` and `size_limit`. - Added new variant of the return type to pass the validation result. It removes block serialization and deserialization and should improve performance. - Added a V1 execution result type that uses `JSONError` instead of postcard serialized error. It adds flexibility of how variants of the error can be managed. More information about it in FuelLabs/fuel-vm#797. The change also moves `TooManyOutputs` error to the top. It shows that `JSONError` works as expected. - [2145](FuelLabs/fuel-core#2145): feat: Introduce time port in PoA service. - [2155](FuelLabs/fuel-core#2155): Added trait declaration for block committer data - [2142](FuelLabs/fuel-core#2142): Added benchmarks for varied forms of db lookups to assist in optimizations. - [2158](FuelLabs/fuel-core#2158): Log the public address of the signing key, if it is specified - [2188](FuelLabs/fuel-core#2188): Upgraded the `fuel-vm` to `0.57.0`. More information in the [release](https://github.com/FuelLabs/fuel-vm/releases/tag/v0.57.0). ## What's Changed * chore(p2p_service): add metrics for number of blocks requested over p2p req/res protocol by @rymnc in FuelLabs/fuel-core#2135 * Weekly `cargo update` by @github-actions in FuelLabs/fuel-core#2149 * Debug V1 algorightm and use more realistic values in gas price analysis by @MitchTurner in FuelLabs/fuel-core#2129 * feat(gas_price_service): include trait declaration for block committer data by @rymnc in FuelLabs/fuel-core#2155 * Convert gas price analysis tool to CLI by @MitchTurner in FuelLabs/fuel-core#2156 * chore: add benchmarks for varied forms of lookups by @rymnc in FuelLabs/fuel-core#2142 * Add label nochangelog on weekly cargo update by @AurelienFT in FuelLabs/fuel-core#2152 * Log consensus-key signer address if specified by @acerone85 in FuelLabs/fuel-core#2158 * chore(rocks_db): move ShallowTempDir to benches crate by @rymnc in FuelLabs/fuel-core#2168 * chore(benches): conditional dropping of databases in benchmarks by @rymnc in FuelLabs/fuel-core#2170 * feat: Introduce time port in PoA service by @netrome in FuelLabs/fuel-core#2145 * Get DA costs from predefined data by @MitchTurner in FuelLabs/fuel-core#2157 * chore(shallow_temp_dir): panic if not panicking by @rymnc in FuelLabs/fuel-core#2172 * chore: Add initial CODEOWNERS file by @netrome in FuelLabs/fuel-core#2179 * Weekly `cargo update` by @github-actions in FuelLabs/fuel-core#2177 * fix(db_lookup_times): rework core logic of benchmark by @rymnc in FuelLabs/fuel-core#2159 * Add verification on transaction dry_run that they don't spend more than block gas limit by @AurelienFT in FuelLabs/fuel-core#2151 * bug: fix algorithm overflow issues by @MitchTurner in FuelLabs/fuel-core#2173 * feat(gas_price_service): create runnable task for expensive background polling for da metadata by @rymnc in FuelLabs/fuel-core#2163 * Weekly `cargo update` by @github-actions in FuelLabs/fuel-core#2197 * Fix bug with gas price factor in V1 algorithm by @MitchTurner in FuelLabs/fuel-core#2201 * Applying several breaking changes to the WASM interface from backlog by @xgreenx in FuelLabs/fuel-core#2199 * chore(p2p): dnsaddr recursive resolution by @rymnc in FuelLabs/fuel-core#2204 ## New Contributors * @acerone85 made their first contribution in FuelLabs/fuel-core#2158 **Full Changelog**: FuelLabs/fuel-core@v0.35.0...v0.36.0
Warning
🏗️ This PR is 1/2 of including block committer "da"ta in v1 of the gas price algo. We have a dependency on the api of the block committer, which can be included in a follow up PR when we have more details 🚧
Linked Issues/PRs
Description
This PR includes the following changes -
DaCommitSourcewhich specifiesget_da_commit_detailsthat returns the latest da commit details from the block committercore::*Checklist
Before requesting review
After merging, notify other teams
[Add or remove entries as needed]