Ewan Higgs created HDFS-10759:
---------------------------------
Summary: Change fsimage bool isStriped from boolean to an enum
Key: HDFS-10759
URL: https://issues.apache.org/jira/browse/HDFS-10759
Project: Hadoop HDFS
Issue Type: Bug
Components: hdfs
Affects Versions: 3.0.0-alpha1, 3.0.0-beta1, 3.0.0-alpha2
Reporter: Ewan Higgs
The new erasure coding project has updated the protocol for fsimage such that
the {{INodeFile}} has a boolean '{{isStriped}}'. I think this is better as an
enum or integer since a boolean precludes any future block types.
For example:
{code}
enum BlockType {
CONTIGUOUS = 0,
STRIPED = 1,
}
{code}
We can also make this more robust to future changes where there are different
block types supported in a staged rollout. Here, we would use
{{UNKNOWN_BLOCK_TYPE}} as the first value since this is the default value. See
[here|http://androiddevblog.com/protocol-buffers-pitfall-adding-enum-values/]
for more discussion.
{code}
enum BlockType {
UNKNOWN_BLOCK_TYPE = 0,
CONTIGUOUS = 1,
STRIPED = 2,
}
{code}
But I'm not convinced this is necessary since there are other enums that don't
use this approach.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]