+1 for the merge.

Thanks Lokesh

On 07/04/22 11:29 am, Lokesh Jain wrote:
+1 for merge

Thanks
Lokesh

On 07-Apr-2022, at 11:06 AM, Tsz Wo Sze <szets...@gmail.com> wrote:

+1
We should merge it so that more people can try it.  We can work on the
remaining tasks in the master branch.  Thanks a lot!

Tsz-Wo

On Thu, Apr 7, 2022 at 1:17 PM Aravindan Vijayan
<avija...@cloudera.com.invalid> wrote:

+1 for the merge. Thanks for the great work!



On Wed, Apr 6, 2022 at 9:45 PM Prashant Pogde <ppo...@cloudera.com.invalid
wrote:

+1 for the EC branch merge.

Regards,
Prashant

On Apr 6, 2022, at 8:20 PM, Siddharth Wagle <swa...@apache.org> wrote:

+1 for the EC branch merge.

Best,
Sid

On Wed, Apr 6, 2022 at 8:05 PM guimark <guim...@126.com> wrote:

Great news!
+1 to merge.




At 2022-04-06 22:18:31, "Stephen O'Donnell" <sodonn...@cloudera.com
.INVALID>
wrote:
I have been working on the code on this branch for some time, and I
believe
it is in a good state to merge now. It is mostly new code, and if
nothing
attempts to use EC, none of the EC code paths will be executed.

+1 to merge from me.

Stephen.

On Wed, Apr 6, 2022 at 7:11 AM Uma gangumalla <umamah...@apache.org>
wrote:
=====Few Edits Below===================

Dear Ozone Devs,

As you may know, we have been actively developing Ozone Erasure
Coding
support in a separate branch HDDS-3816-ec.

We have finished the development of EC key write and read
functionality.
The support of offline recovery( Recovering replica from node loss)
will be
part of second phase work.

Since the code has already grown and increasingly started seeing
merge
complications, we would like to merge the current EC branch into
master.
We filed the new JIRA(HDDS-6462) for the second phase of work and
continued
the offline recovery work there. (we have uploaded the design doc
there)
Details on Changes:

  -

  Most of the EC core logic went to newly extended classes. Key
changes
  went into EC*OutputStream and EC*InputStream classes for write and
read
  respectively. Based on replication type, ECPipelineProvider will
be
chosen
  for creating EC pipelines.



  -

  Since we cannot represent the EC replication in the existing
replication
  factor, we have introduced ECReplicationConfig. The
ReplicationConfig
  interface is already pushed to master, so it’s not a new idea
coming
  through this branch merge now. What is newly coming here is the
  ECReplicationConfig class which can be used to express EC
replication
  configuration.



  -

  We wanted to provide the support to enable EC at bucket level. To
  simplify some complications, we have moved the default replication
  configurations from client to server.



  -

  Client side replication type and replication factor removed from
the
  configuration files and introduced the
ozone.server.default.replication
  and ozone.server.default.replication.type.We would continue to
respect
if
  one configures at client side explicitly or passed through APIs,
otherwise
  server side bucket level properties or server side default
configuration
  would take effect.



  -

  Other than this change, the rest of EC side code should not impact
any
  of the existing code flows.


We have finished documentation JIRA(HDDS-6172) for covering this
feature
and we will continue to improve further in master.

Git Branch Name : HDDS-3816-ec

JIRAs: HDDS-3816 and HDDS-5351

Completed tasks: ~ 142

+ We are covering the following two mandatory JIRAs to come in:

1. HDDS-6209: EC: [Forward compatibility issue] New client to older
server
could fail due to the unavailability for client default replication
config
2. HDDS-5909: EC: Onboard EC into upgrade framework.

PRs reviews in-progress and expected to close in a day or two.

Few other JIRAs in HDDS-3816 are still open but I believe they're
not
blockers for merge.

In short what you can do now with this feature:

  -

  You can enable EC at bucket level and cluster level.

How to enable it at bucket level? Just create the bucket by passing
the
ec
replication options.

  -

  You can create EC keys and read the same back.
  -

  You should be able to continue writing even when chosen nodes are
  failing. (Of Course minimum of Data+Parity live nodes should be
available
  in cluster for complete the write)
  -

  You should be able to read the file back even if a few nodes
failed
in
  the same ec block group(Failures should not be more than parity
number
of
  nodes.).

What is pending? Offline recovery of lost/missing EC containers. As
mentioned above, post merge of this branch, I will create a separate
JIRA
for starting the work for OfflineRecovery.


There are automated acceptance test cases already added. HDDS-6231

In addition to that, we have also performed basic Acceptance Testing
in
physical cluster:

  1.

  Installed 10 nodes cluster and created EC bucket (3:2).

Uploaded 10GB key.

Downloaded the same key and checked the md5sum.

  1.

  Uploaded 8GB key.

Downloaded the same key and checked the md5sum.

  1.

  Uploaded 3MB key

Downloaded the same and verified md5sum.

  1.

  Changed bucket to (6:3)

Uploaded 8GB key

Download the same.

Also verified the new key should be in 6:3 policy and old keys must
be
3:2.Verified
with several different size key writes and reads.



Since the merge discussion thread, we have well stabilized code and
fixed
several bugs.


Merge checklist items assessment is here:


https://cwiki.apache.org/confluence/display/OZONE/Ozone+EC+Branch%28HDDS-3816-ec%29+Phase-1+%3A+Merge+Checklist
Big shoutout to Stephen O'Donnell <sodonn...@cloudera.com>, Istvan
Fajth
<pi...@cloudera.com> for great efforts in core development and also
thanks
a lot  to Sammi, Mingchao Zhao, Mark Gui, Kaijie, Attila for
collaborating
on some of the EC tasks.

Thanks to Marton for design discussion and on some dev tasks as
well.
Thanks to many others who were involved in design discussions,
Arpit,
Sidd,
Jitendra, Mukul, Sanjay, Karthik, Bharat, Nanda, Shashi, Prashanth,
Rakesh,
Yiqun Lin.
Sorry if I miss anyone here, but your efforts are much appreciated.
Without
your tremendous help, we would have not reached this position yet.



To start with, here is my +1

The vote will run for 5 days.

Regards,
Uma



On Tue, Apr 5, 2022 at 10:58 PM Uma gangumalla <
umamah...@apache.org>
wrote:

Dear Ozone Devs,

As you may know, we have been actively developing Ozone Erasure
Coding
support in a separate branch HDDS-3816-ec.

We have finished the development of EC key write and read
functionality.
The support of offline recovery( Recovering replica from node loss)
will
be
part of second phase work.

Since the code has already grown and increasingly started seeing
merge
complications, we would like to propose to merge the current EC
branch
into
master.

We filed the new JIRA(HDDS-6462) for the second phase of work and
continued the offline recovery work there.

Details on Changes:

  -

  Most of the EC core logic went to newly extended classes. Key
changes
  went into EC*OutputStream and EC*InputStream classes for write
and
read
  respectively. Based on replication type, ECPipelineProvider will
be
chosen
  for creating EC pipelines.



  -

  Since we cannot represent the EC replication in the existing
  replication factor, we have introduced ECReplicationConfig. The
  ReplicationConfig interface is already pushed to master, so it’s
not
a new
  idea coming through this branch merge now. What is newly coming
here
is the
  ECReplicationConfig class which can be used to express EC
replication
  configuration.



  -

  We wanted to provide the support to enable EC at bucket level. To
  simplify some complications, we have moved the default
replication
  configurations from client to server.



  -

  Client side replication type and replication factor removed from
the
  configuration files and introduced the
ozone.server.default.replication
  and ozone.server.default.replication.type.We would continue to
respect if
  one configures at client side explicitly or passed through APIs,
otherwise
  server side bucket level properties or server side default
configuration
  would take effect.



  -

  Other than this change, the rest of EC side code should not
impact
any
  of the existing code flows.


We have finished documentation JIRA(HDDS-6172) for covering this
feature
and we will continue to improve further in master.

Git Branch Name : HDDS-3816-ec

JIRAs: HDDS-3816 and HDDS-5351

Completed tasks: ~ 142

+ We are covering the following two mandatory JIRAs:

1. HDDS-6209: EC: [Forward compatibility issue] New client to older
server could fail due to the unavailability for client default
replication
config

2. HDDS-5909: EC: Onboard EC into upgrade framework.

PRs reviews in-progress and expected to close in a day or two.

Few other JIRAs in HDDS-3816 are still open but I believe they're
not
blockers for merge.

In short what you can do now with this feature:

  -

  You can enable EC at bucket level and cluster level.

How to enable it at bucket level? Just create the bucket by passing
the
ec
replication options.

  -

  You can create EC keys and read the same back.
  -

  You should be able to continue writing even when chosen nodes are
  failing. (Of Course minimum of Data+Parity live nodes should be
available
  in cluster for complete the write)
  -

  You should be able to read the file back even if a few nodes
failed in
  the same ec block group(Failures should not be more than parity
number of
  nodes.).

What is pending? Offline recovery of lost/missing EC containers. As
mentioned above, post merge of this branch, I will create a
separate
JIRA
for starting the work for OfflineRecovery.


There are automated acceptance test cases already added. HDDS-6231

In addition to that, we have also performed basic Acceptance
Testing
in
physical cluster:

  1.

  Installed 10 nodes cluster and created EC bucket (3:2).

Uploaded 10GB key.

Downloaded the same key and checked the md5sum.

  1.

  Uploaded 8GB key.

Downloaded the same key and checked the md5sum.

  1.

  Uploaded 3MB key

Downloaded the same and verified md5sum.

  1.

  Changed bucket to (6:3)

Uploaded 8GB key

Download the same.

Also verified the new key should be in 6:3 policy and old keys must
be
3:2.Verified
with several different size key writes and reads.

Merge checklist items assessment is here:

https://cwiki.apache.org/confluence/display/OZONE/Ozone+EC+Branch%28HDDS-3816-ec%29+Phase-1+%3A+Merge+Checklist
Big shoutout to Stephen O'Donnell <sodonn...@cloudera.com>, Istvan
Fajth
<pi...@cloudera.com> for great efforts in core development and
also
thanks a lot  to Sammi, Mingchao Zhao, Mark Gui, Kaijie for
collaborating
on some of the EC tasks.

Thanks to Marton for design discussion and on some dev tasks as
well.
Thanks to many others who were involved in design discussions,
Arpit,
Sidd, Jitendra, Mukul, Sanjay, Karthik, Bharat, Nanda, Shashi,
Prashanth,
Rakesh, Yiqun Lin.
Sorry if I miss anyone here, but your efforts are much appreciated.
Without your tremendous help, we would have not reached this
position
yet.
If there are no objections for the merge, I will start the official
vote
later.

Regards,

EC Branch Devs


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@ozone.apache.org
For additional commands, e-mail: dev-h...@ozone.apache.org


--
Thanks & Regards,
Aravindan


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@ozone.apache.org
For additional commands, e-mail: dev-h...@ozone.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@ozone.apache.org
For additional commands, e-mail: dev-h...@ozone.apache.org

Reply via email to