-
Notifications
You must be signed in to change notification settings - Fork 7
Migrating to workspace structure #74
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
base: dev
Are you sure you want to change the base?
Conversation
fd388ed to
f13a129
Compare
|
In |
Ok with this, being explicit about those 2 features simultaneously doesn't make sense, but for now it's actually the default to pull both sync and async code, I though the overhead wasn't big and didn't want to start restricting too much before I was clear. Feature |
|
clippy yell a lot on my side, feel free to cherry-pick in 53bf2aa |
|
I have try to implem a dummy updater here I got weird build error that seems related to |
I just figure out that this create a new issue: we cannot run a bare |
| fn get_block_data_for_range( | ||
| &self, | ||
| range: RangeInclusive<u32>, | ||
| dust_limit: Amount, | ||
| with_cutthrough: bool, | ||
| ) -> BlockDataIterator { | ||
| let client = self.client.clone(); | ||
|
|
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.
| fn get_block_data_for_range( | |
| &self, | |
| range: RangeInclusive<u32>, | |
| dust_limit: Amount, | |
| with_cutthrough: bool, | |
| ) -> BlockDataIterator { | |
| let client = self.client.clone(); | |
| fn get_block_data_for_range( | |
| &self, | |
| mut range: RangeInclusive<u32>, | |
| dust_limit: Amount, | |
| with_cutthrough: bool, | |
| ) -> BlockDataIterator { | |
| let client = self.client.clone(); | |
| // blindbit will return an error 500 for genesis block | |
| if *range.start() == 0 { | |
| range = RangeInclusive::new(1, *range.end()); | |
| } | |
|
Since we removed parallel block scanning we should revert the change of SpScanner to a trait too |
Should we? I don't think it hurts and downstream may want to implement some or all methods differently. We may want to clean it up and propose more default implem maybe |
Just seen this, is it still happening? |
I think making SpScanner a trait it is too much flexibility without a clear benefit. The SpScanner is essentially the main struct of SPDK. The SpScanner takes a data source (that implements ChainBackend trait) and provides scanning results to some sink (that implements Updater trait). Consumers of SPDK have some degree of flexibility by using different chain backends / updaters, since they might e.g. use a different way of storing results. But if we want to provide a different way of scanning, I think it makes more sense to just make different scanner structs, e.g. |
yes |
Move Updated to core Remove dummy implementation of get_input_hashes Remove dead code Heavy refactoring
50c15ec to
fc60955
Compare
I think I addressed that in my last commit, let me know if you see that error again |
Use a workspace structure with a minimalist spdk-core and then one crate for a backend/architecture