[ https://issues.apache.org/jira/browse/HDFS-8249?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Haohui Mai updated HDFS-8249: ----------------------------- Status: Patch Available (was: Open) > Separate HdfsConstants into the client and the server side class > ---------------------------------------------------------------- > > Key: HDFS-8249 > URL: https://issues.apache.org/jira/browse/HDFS-8249 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: hdfs-client > Reporter: Haohui Mai > Assignee: Haohui Mai > Attachments: HDFS-8249.000.patch > > > The constants in {{HdfsConstants}} are used by both the client side and the > server side. There are two types of constants in the class: > 1. Constants that are used internally by the servers or not part of the APIs. > These constants are free to evolve without breaking compatibilities. For > example, {{MAX_PATH_LENGTH}} is used by the NN to enforce the length of the > path does not go too long. Developers are free to change the name of the > constants and to move it around if necessary. > 1. Constants that are used by the clients, but not parts of the APIs. For > example, {{QUOTA_DONT_SET}} represents an unlimited quota. The value is part > of the wire protocol but the value is not. Developers are free to rename the > constants but are not allowed to change the value of the constants. > 1. Constants that are parts of the APIs. For example, {{SafeModeAction}} is > used in {{DistributedFileSystem}}. Changing the name / value of the constant > will break binary compatibility, but not source code compatibility. > This jira proposes to separate the above three types of constants into > different classes: > * Creating a new class {{HdfsConstantsServer}} to hold the first type of > constants. > * Move {{HdfsConstants}} into the {{hdfs-client}} package. The work of > separating the second and the third types of constants will be postponed in a > separate jira. -- This message was sent by Atlassian JIRA (v6.3.4#6332)