[
https://issues.apache.org/jira/browse/HDDS-6400?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Kaijie Chen updated HDDS-6400:
------------------------------
Description:
Refactor ECKeyOutputStream to make the code cleaner.
Reuse code when writing the last stripe or rewriting failed stripes.
The changes includes:
# handleDataWrite() has been changed to handleWrite(),
it will check strip full and call encodeAndWriteParityCells().
# checkAndWriteParityCells() has been changed to encodeAndWriteParityCells(),
and it can be reused to encode partial stripe in close().
# handleParityWrites() has seperated generateParityCells(),
it can be reused in rewriteStripeToNewBlockGroup().
# handleFailedStreams() has been changed to excludePipelineAndFailedDN(),
it will exclude both failed pipeline and failed datanodes.
was:
Refactor ECKeyOutputStream to make the code cleaner.
Reuse code when writing the last stripe or rewriting failed stripes.
The changes includes:
# Remove isFullCell argument in handleDataWrite()
# Move checkAndWriteParityCells() inside handleDataWrite()
# Change checkAndWriteParityCells() to encodeAndWriteParityCells()
# Support partial stripe in encodeAndWriteParityCells()
# Update acked position in handleParityWrites()
# Seperate generateParityCells() from handleParityWrites()
# Reuse handleParityWrites() in rewriteStripeToNewBlockGroup()
# Remove parityCellSize argument in handleParityWrites()
> EC: [Refactor] Reuse code to write parity in close and retry
> ------------------------------------------------------------
>
> Key: HDDS-6400
> URL: https://issues.apache.org/jira/browse/HDDS-6400
> Project: Apache Ozone
> Issue Type: Sub-task
> Reporter: Kaijie Chen
> Assignee: Kaijie Chen
> Priority: Major
> Labels: pull-request-available
>
> Refactor ECKeyOutputStream to make the code cleaner.
> Reuse code when writing the last stripe or rewriting failed stripes.
> The changes includes:
> # handleDataWrite() has been changed to handleWrite(),
> it will check strip full and call encodeAndWriteParityCells().
> # checkAndWriteParityCells() has been changed to encodeAndWriteParityCells(),
> and it can be reused to encode partial stripe in close().
> # handleParityWrites() has seperated generateParityCells(),
> it can be reused in rewriteStripeToNewBlockGroup().
> # handleFailedStreams() has been changed to excludePipelineAndFailedDN(),
> it will exclude both failed pipeline and failed datanodes.
--
This message was sent by Atlassian Jira
(v8.20.7#820007)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]