forked from anza-xyz/agave
-
Notifications
You must be signed in to change notification settings - Fork 4
Hui/v2.2.15 fd mod #6
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
Open
Xie-Hui
wants to merge
172
commits into
firedancer-io:master
Choose a base branch
from
Xie-Hui:hui/v2.2.15-fd-mod
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…4889) sdk: Remove everything from the repo (anza-xyz#4867) #### Problem The SDK has been moved over to https://github.com/anza-xyz/solana-sdk, but an implementation still exists within the agave repo. #### Summary of changes Remove the sdk from monorepo and use the published versions from crates.io. Or, put another way, see prior art in this domain: solana-labs#30062
anza-xyz#4822) (anza-xyz#4920) accounts-db: Use NoHashHasher in `AccountStorageMap` (anza-xyz#4822) `DashMap` uses SipHash by default. `AccountStorageMap` uses `Slot` as a key and therefore it doesn't have any chance of collisions. We can skip hashing the key entirely. (cherry picked from commit cd04323) Co-authored-by: Michal Rostecki <vadorovsky@protonmail.com>
…anza-xyz#4935) reworks gossip packets sent metrics (anza-xyz#4890) A lot of gossip packets are not counted, and for some there are duplicate metrics. The commit adds helper methods to count gossip packet every time we create outbound packets. (cherry picked from commit c7c0243) Co-authored-by: behzad nouri <behzadnouri@gmail.com>
…nza-xyz#4924) (anza-xyz#4933) Fix - loader-v4 deployment buffer funds retrieval (anza-xyz#4924) * Assigns the source program account back to the system program after deployment. * Swaps the funds of the source program account and the program account. (cherry picked from commit 289036c) Co-authored-by: Alexander Meißner <AlexanderMeissner@gmx.net>
…nza-xyz#4951) ci: use ubuntu-22.04 github runner (anza-xyz#4934) (cherry picked from commit abb639b) Co-authored-by: Yihau Chen <yihau.chen@icloud.com>
…-xyz#4946) ci: use ssl 3.4.1 for Windows (anza-xyz#4944) (cherry picked from commit 130b1d2) Co-authored-by: Yihau Chen <yihau.chen@icloud.com>
) (anza-xyz#4954) Scheduler: earlier fee check on receive (anza-xyz#4865) (cherry picked from commit 81d19c0) Co-authored-by: Andrew Fitzgerald <apfitzge@gmail.com>
) (anza-xyz#4961) * validator: Deprecate etcd tower storage (anza-xyz#4956) All etcd configuration arguments are deprecated, and with etcd deprecated, --tower-storage will also be deprecated as "file" would be the only remaining option (cherry picked from commit 1ed4f17) # Conflicts: # validator/src/commands/run/args.rs * resolve merge issue --------- Co-authored-by: steviez <steven@anza.xyz>
…nza-xyz#4969) (anza-xyz#4972) sdk: Bump all SDK crates for relaxed dependencies (anza-xyz#4969) * sdk: Bump all SDK crates for relaxed dependencies #### Problem The SDK relaxed its internal dependencies in anza-xyz/solana-sdk#27, but the monorepo is still using the pinned versions. #### Summary of changes Update all SDK crates to their next version. For almost all of them, that's v2.2.1 Otherwise, the address-lookup-table-interface crates goes to v2.2.2, and the loader-v3-interface goes to v3.0.0 due to a breaking change. To keep this PR small, the logic changes required for v3.0.0 are not implemented, and must be done in follow-up work, which essentially means reapplying the changes from anza-xyz#4661. * Return errors instead of panicking (cherry picked from commit a1ed2b1) Co-authored-by: Jon C <me@jonc.dev>
…nza-xyz#4970) Removes background account hasher (anza-xyz#4842) (cherry picked from commit 0844bbc) Co-authored-by: Brooks <brooks@anza.xyz>
…4997) (anza-xyz#5002) shredder: Remove intermediate allocation (anza-xyz#4997) shred::make_merkle_shreds_from_entries() was returning a Vec<Shred>, which was then immediately iterated over and split into other structures. Instead, return an iterator over shreds to save the intermediate collect() (cherry picked from commit 8e258a9) Co-authored-by: steviez <steven@anza.xyz>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
…z#4661) (backport of anza-xyz#4992) (anza-xyz#4998) Feature - Adds `UpgradeableLoaderInstruction::Migrate` (anza-xyz#4992) * Adds UpgradeableLoaderInstruction::Migrate. * Adds test_loader_v3_to_v4_migration. (cherry picked from commit 7491134)
…#4908) (anza-xyz#5035) docs: Remove copied installation commands (anza-xyz#4908) The install instructions are unlikely to change, but link to them so we don't retain stale instructions should they ever change (cherry picked from commit e9ecfe0) Co-authored-by: steviez <steven@anza.xyz>
…za-xyz#5067) CLI - loader v3 to v4 migration (anza-xyz#4856) * Adds CLI command. * Uses solana_loader_v3_interface instead of solana_program::bpf_loader_upgradeable. (cherry picked from commit 0eada94) Co-authored-by: Alexander Meißner <AlexanderMeissner@gmx.net>
…nza-xyz#5022) Bump platform tools to v1.44 (anza-xyz#5019) Co-authored-by: Lucas Ste <38472950+LucasSte@users.noreply.github.com>
…kport of anza-xyz#4506) (anza-xyz#4978) txview: run status and age checks on incoming transactions (anza-xyz#4506) (cherry picked from commit 54da9b2) Co-authored-by: Andrew Fitzgerald <apfitzge@gmail.com>
…anza-xyz#5024) (anza-xyz#5074) Update `cargo-build-sbf` to build new SBPF versions (anza-xyz#5024) (cherry picked from commit f892927) Co-authored-by: Lucas Ste <38472950+LucasSte@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
…a-xyz#5100) (anza-xyz#5120) Update C Makefile to support SBPFv1 and SBPFv2 (anza-xyz#5100) * Fix Makefile for C programs * Update changelog * Update command description Co-authored-by: Lucas Ste <38472950+LucasSte@users.noreply.github.com>
…ogram-v4 (backport of anza-xyz#5086) (anza-xyz#5103) Refactor - Adds CLI parameter "--with-compute-unit-price" to program-v4 (anza-xyz#5086) * Changes underscore to dash for consistency. * Adds helper closure for constructing messages. * Removes the closure parameter from calculate_max_chunk_size(). * Adds "--with-compute-unit-price". * Sends both instructions of process_close_program() in a single transaction. * Factors redundant code into a message_factory(). (cherry picked from commit 62f5b70) Co-authored-by: Alexander Meißner <AlexanderMeissner@gmx.net>
…5131) (anza-xyz#5150) blockstore: Update flaky compaction test (anza-xyz#5131) Call compact_range_cf() with the begin/end keys set to None in order to compact the entire range (cherry picked from commit 760b6fc) Co-authored-by: steviez <steven@anza.xyz>
… (anza-xyz#5138) remove duplicates from fanout leaders (anza-xyz#5109) Currently, when sending transactions to future leaders, duplicate leaders may appear in consecutive slots, resulting in unnecessary spam. This PRs removes duplicates from the fanout leaders set. (cherry picked from commit 62acd94) Co-authored-by: kirill lykov <kirill.lykov@anza.xyz>
…#4603)" (backport of anza-xyz#5132) (anza-xyz#5156) This reverts commit e48672c. (cherry picked from commit 30c95ff)
Firedancer determines the port for the TVU, which is specified in its config file, so an argument is added to the CLI and plumbed all the way through to gossip to wire this up.
The Firedancer shredder needs to know which nodes in the cluster to forward shreds to, which information is currently maintained by the Solana Labs cluster info. For now, we communicate this across the IPC boundary.
It's important for the Firedancer pack code to see all available transactions for packing, so it can schedule them optimally and avoid conflicts. Previously we have rerouted all transactions except gossiped votes which came via. a different path. This change also reroutes those so everything goes to Firedancer. We route gossiped votes to the dedup tile so that if the same vote comes in over the normal TPU port, it's correctly identified as a duplicate. Co-authored-by: Yufeng Zhou <yufzhou@jumptrading.com>
The leader schedule cache is updated so that it has an optional path to send stake weights to firedancer. This is done on a mcache because we do not want to drop or miss any recomputations, otherwise Firedancer will not recover. The pack tile uses stake weights to compute the leader schedule, and the shred tile uses stake weights to compute shred destinations.
The shred version sometimes needs to be fetched via. gossip on startup, which Firedancer can't do so we communicate it to Firedancer here via shared memory.
Co-authored-by: Yufeng Zhou <yufzhou@jumptrading.com>
Co-authored-by: Yufeng Zhou <yufzhou@jumptrading.com>
Remove the global RwLock around the status cache, and introduce more granular RwLocks per-blockhash and per-slot. Additionally, change the internal hash tables from std HashMap to Dashmap, so that operations at the blockhash and slot level can be done only holding read locks.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Problem
Summary of Changes
Fixes #