Skip to content
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

A question about "raizn_write" function #3

Open
foreverbi opened this issue Jan 7, 2023 · 3 comments
Open

A question about "raizn_write" function #3

foreverbi opened this issue Jan 7, 2023 · 3 comments

Comments

@foreverbi
Copy link

As shown in Figure 1,if leading_substripe_sectors!=0,the function “raizn_stripe_buffer_parity” will calculate parity and the result will be stored in sh->parity_bufs
微信截图_20230107112414
But in the next judge:if (bio_sectors(sh->orig_bio) > leading_substripe_sectors + trailing_substripe_sectors) ,If it is true,the function “raizn_bio_parity” will calculate parity and the parameter is still sh->parity_bufs.As shown in Figure 2:
微信截图_20230107112513
The sh->parity_bufs already has the calculation result of Figure 1,but in the Figure 2,it seems that sh->parity_bufs is not updated,the parameter is still sh->parity_bufs,will this cause the calculation results of Figure 2 to overwrite the results of Figure 1?

@Thomas-Kim
Copy link
Member

Sorry for the delay in response, I have been (and still am) a bit ill as of late. I believe this may be a bug, though it does not affect the performance of the system (which is the primary objective of this artifact). I will get around to investigating and fixing it when I have some time.

Thanks,

Thomas

@foreverbi
Copy link
Author

Thank you for your reply. I also want to ask what is the capacity of the zone of the disk you use? How does it relate to the size of the stripe unit?

I wish you an early recovery!

@Thomas-Kim
Copy link
Member

Thank you for your reply. I also want to ask what is the capacity of the zone of the disk you use? How does it relate to the size of the stripe unit?

I wish you an early recovery!

The capacity of the zones in our drives is around a gigabyte, and it has no bearing on the choice of stripe unit size. Stripe unit size is based on the expected workload.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants