-
Notifications
You must be signed in to change notification settings - Fork 4.4k
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
Rocks db window service #1888
Rocks db window service #1888
Conversation
aceeefb
to
5840165
Compare
38ce50c
to
cfd82e4
Compare
src/bin/replicator.rs
Outdated
let (replicator, leader_info) = Replicator::new( | ||
db_ledger, |
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 it'd be better if you passed the ledger_path as the argument, did the opening in src/fullnode.rs. This way we can move to sled without changing this code.
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 comment was meant for bin/fullnode.rs? I made the suggested change there :)
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.
is the change not appropriate here, as well?
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.
The replicator doesn't open a fullnode, but I can move the open logic to src/replicator.rs to parallel the change in src/fullnode.rs
src/bin/fullnode.rs
Outdated
extern crate solana_metrics; | ||
|
||
use clap::{App, Arg}; | ||
use rocksdb::{Options, DB}; |
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 want to encapsulate these types so moving to sled is easier
@@ -273,6 +274,8 @@ pub fn process_blob( | |||
let is_coding = blob.read().unwrap().is_coding(); | |||
|
|||
// Check if the blob is in the range of our known leaders. If not, we return. | |||
// TODO: Need to update slot in broadcast, otherwise this check will fail with |
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.
how about a github issue instead?
src/bin/fullnode.rs
Outdated
use solana::client::mk_client; | ||
use solana::cluster_info::{Node, FULLNODE_PORT_RANGE}; | ||
use solana::db_ledger::{write_entries_to_ledger, DB_LEDGER_DIRECTORY}; |
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.
how come everybody has to pass in DB_LEDGER_DIRECTORY? could db_ledger do that for them, instead?
9bfbef6
to
2a1fb73
Compare
78a94fe
to
6116063
Compare
2075726
to
c9ece71
Compare
…node, clean up tests
9718256
to
e792b9c
Compare
e792b9c
to
0153f12
Compare
* Refactor and add metrics: - Combine remove_* and update_* functions to reduce locking on cost-tracker and iteration. - Add method to calculate executed transaction cost by directly using actual execution cost and loaded accounts size; - Wireup histogram to report loaded accounts size; - Report time of block limits checking; - Move account counters from ExecuteDetailsTimings to ExecuteAccountsDetails; * Move committed transactions adjustment into its own function
…olana-labs#1888) (solana-labs#1900) * Refactor and additional metrics for cost tracking (solana-labs#1888) * Refactor and add metrics: - Combine remove_* and update_* functions to reduce locking on cost-tracker and iteration. - Add method to calculate executed transaction cost by directly using actual execution cost and loaded accounts size; - Wireup histogram to report loaded accounts size; - Report time of block limits checking; - Move account counters from ExecuteDetailsTimings to ExecuteAccountsDetails; * Move committed transactions adjustment into its own function (cherry picked from commit c3fadac) * rename cost_tracker.account_data_size to better describe its purpose is to tracker per-block new account allocation --------- Co-authored-by: Tao Zhu <82401714+tao-stones@users.noreply.github.com> Co-authored-by: Tao Zhu <tao@solana.com>
…port of solana-labs#1888) (solana-labs#1900)" This reverts commit 0aef62e.
…s#1888)" (solana-labs#1936) This reverts commit c3fadac.
* Refactor and add metrics: - Combine remove_* and update_* functions to reduce locking on cost-tracker and iteration. - Add method to calculate executed transaction cost by directly using actual execution cost and loaded accounts size; - Wireup histogram to report loaded accounts size; - Report time of block limits checking; - Move account counters from ExecuteDetailsTimings to ExecuteAccountsDetails; * Move committed transactions adjustment into its own function
* Refactor and additional metrics for cost tracking (solana-labs#1888) * Refactor and add metrics: - Combine remove_* and update_* functions to reduce locking on cost-tracker and iteration. - Add method to calculate executed transaction cost by directly using actual execution cost and loaded accounts size; - Wireup histogram to report loaded accounts size; - Report time of block limits checking; - Move account counters from ExecuteDetailsTimings to ExecuteAccountsDetails; * Move committed transactions adjustment into its own function * remove histogram for loaded accounts size due to performance impact
…port of solana-labs#1888) (solana-labs#1900) (solana-labs#1937) Revert "v2.0: Refactor and additional metrics for cost tracking (backport of solana-labs#1888) (solana-labs#1900)" This reverts commit 0aef62e.
…abs#1975) * Refactor cost tracking (solana-labs#1954) * Refactor and additional metrics for cost tracking (solana-labs#1888) * Refactor and add metrics: - Combine remove_* and update_* functions to reduce locking on cost-tracker and iteration. - Add method to calculate executed transaction cost by directly using actual execution cost and loaded accounts size; - Wireup histogram to report loaded accounts size; - Report time of block limits checking; - Move account counters from ExecuteDetailsTimings to ExecuteAccountsDetails; * Move committed transactions adjustment into its own function * remove histogram for loaded accounts size due to performance impact (cherry picked from commit f8630a3) * rename cost_tracker.account_data_size to better describe its purpose is to tracker per-block new account allocation --------- Co-authored-by: Tao Zhu <82401714+tao-stones@users.noreply.github.com> Co-authored-by: Tao Zhu <tao@solana.com>
Problem
Current implementation of window service doesn't use new db_window module
Summary of Changes
Fixes #