[
https://issues.apache.org/jira/browse/HDFS-5781?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13883131#comment-13883131
]
Jing Zhao commented on HDFS-5781:
---------------------------------
Thanks for the comment Daryn. In general, this patch just changes back to the
original behavior, which also uses the static block initializer. I agree it
will be a pain to debug static block initializers, that's why in my 001 patch I
try to make the initializer simpler. I think we can create a separate jira to
see if we can avoid using it.
> Use an array to record the mapping between FSEditLogOpCode and the
> corresponding byte value
> -------------------------------------------------------------------------------------------
>
> Key: HDFS-5781
> URL: https://issues.apache.org/jira/browse/HDFS-5781
> Project: Hadoop HDFS
> Issue Type: Improvement
> Components: namenode
> Affects Versions: 2.4.0
> Reporter: Jing Zhao
> Assignee: Jing Zhao
> Priority: Minor
> Fix For: 2.4.0
>
> Attachments: HDFS-5781.000.patch, HDFS-5781.001.patch,
> HDFS-5781.002.patch, HDFS-5781.002.patch
>
>
> HDFS-5674 uses Enum.values and enum.ordinal to identify an editlog op for a
> given byte value. While improving the efficiency, it may cause issue. E.g.,
> when several new editlog ops are added to trunk around the same time (for
> several different new features), it is hard to backport the editlog ops with
> larger byte values to branch-2 before those with smaller values, since there
> will be gaps in the byte values of the enum.
> This jira plans to still use an array to record the mapping between editlog
> ops and their byte values, and allow gap between valid ops.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)