001/**
002 * Licensed to the Apache Software Foundation (ASF) under one
003 * or more contributor license agreements.  See the NOTICE file
004 * distributed with this work for additional information
005 * regarding copyright ownership.  The ASF licenses this file
006 * to you under the Apache License, Version 2.0 (the
007 * "License"); you may not use this file except in compliance
008 * with the License.  You may obtain a copy of the License at
009 *
010 *     http://www.apache.org/licenses/LICENSE-2.0
011 *
012 * Unless required by applicable law or agreed to in writing, software
013 * distributed under the License is distributed on an "AS IS" BASIS,
014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
015 * See the License for the specific language governing permissions and
016 * limitations under the License.
017 */
018
019package org.apache.hadoop.fs;
020
021import org.apache.hadoop.classification.InterfaceAudience;
022import org.apache.hadoop.crypto.CipherSuite;
023import org.apache.hadoop.crypto.JceAesCtrCryptoCodec;
024import org.apache.hadoop.crypto.OpensslAesCtrCryptoCodec;
025
026/** 
027 * This class contains constants for configuration keys used
028 * in the common code.
029 *
030 * It includes all publicly documented configuration keys. In general
031 * this class should not be used directly (use CommonConfigurationKeys
032 * instead)
033 *
034 */
035
036@InterfaceAudience.Public
037public class CommonConfigurationKeysPublic {
038  
039  // The Keys
040  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
041  public static final String  NET_TOPOLOGY_SCRIPT_NUMBER_ARGS_KEY =
042    "net.topology.script.number.args";
043  /** Default value for NET_TOPOLOGY_SCRIPT_NUMBER_ARGS_KEY */
044  public static final int     NET_TOPOLOGY_SCRIPT_NUMBER_ARGS_DEFAULT = 100;
045
046  //FS keys
047  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
048  public static final String  FS_DEFAULT_NAME_KEY = "fs.defaultFS";
049  /** Default value for FS_DEFAULT_NAME_KEY */
050  public static final String  FS_DEFAULT_NAME_DEFAULT = "file:///";
051  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
052  public static final String  FS_DF_INTERVAL_KEY = "fs.df.interval"; 
053  /** Default value for FS_DF_INTERVAL_KEY */
054  public static final long    FS_DF_INTERVAL_DEFAULT = 60000;
055  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
056  public static final String  FS_DU_INTERVAL_KEY = "fs.du.interval";
057  /** Default value for FS_DU_INTERVAL_KEY */
058  public static final long    FS_DU_INTERVAL_DEFAULT = 600000;
059  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
060  public static final String  FS_CLIENT_RESOLVE_REMOTE_SYMLINKS_KEY =
061    "fs.client.resolve.remote.symlinks";
062  /** Default value for FS_CLIENT_RESOLVE_REMOTE_SYMLINKS_KEY */
063  public static final boolean FS_CLIENT_RESOLVE_REMOTE_SYMLINKS_DEFAULT = true;
064
065
066  //Defaults are not specified for following keys
067  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
068  public static final String  NET_TOPOLOGY_SCRIPT_FILE_NAME_KEY =
069    "net.topology.script.file.name";
070  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
071  public static final String  NET_TOPOLOGY_NODE_SWITCH_MAPPING_IMPL_KEY =
072    "net.topology.node.switch.mapping.impl";
073  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
074  public static final String  NET_TOPOLOGY_IMPL_KEY =
075    "net.topology.impl";
076  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
077  public static final String  NET_TOPOLOGY_TABLE_MAPPING_FILE_KEY =
078    "net.topology.table.file.name";
079  public static final String NET_DEPENDENCY_SCRIPT_FILE_NAME_KEY = 
080    "net.topology.dependency.script.file.name";
081
082  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
083  public static final String  FS_TRASH_CHECKPOINT_INTERVAL_KEY =
084    "fs.trash.checkpoint.interval";
085  /** Default value for FS_TRASH_CHECKPOINT_INTERVAL_KEY */
086  public static final long    FS_TRASH_CHECKPOINT_INTERVAL_DEFAULT = 0;
087
088  /**
089   * Directories that cannot be removed unless empty, even by an
090   * administrator.
091   */
092  public static final String FS_PROTECTED_DIRECTORIES =
093      "fs.protected.directories";
094
095  // TBD: Code is still using hardcoded values (e.g. "fs.automatic.close")
096  // instead of constant (e.g. FS_AUTOMATIC_CLOSE_KEY)
097  //
098  /** Not used anywhere, looks like default value for FS_LOCAL_BLOCK_SIZE */
099  public static final long    FS_LOCAL_BLOCK_SIZE_DEFAULT = 32*1024*1024;
100  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
101  public static final String  FS_AUTOMATIC_CLOSE_KEY = "fs.automatic.close";
102  /** Default value for FS_AUTOMATIC_CLOSE_KEY */
103  public static final boolean FS_AUTOMATIC_CLOSE_DEFAULT = true;
104  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
105  public static final String  FS_FILE_IMPL_KEY = "fs.file.impl";
106  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
107  public static final String  FS_FTP_HOST_KEY = "fs.ftp.host";
108  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
109  public static final String  FS_FTP_HOST_PORT_KEY = "fs.ftp.host.port";
110  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
111  public static final String  FS_TRASH_INTERVAL_KEY = "fs.trash.interval";
112  /** Default value for FS_TRASH_INTERVAL_KEY */
113  public static final long    FS_TRASH_INTERVAL_DEFAULT = 0;
114  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a>. */
115  public static final String  FS_CLIENT_TOPOLOGY_RESOLUTION_ENABLED =
116      "fs.client.resolve.topology.enabled";
117  /** Default value for FS_CLIENT_TOPOLOGY_RESOLUTION_ENABLED. */
118  public static final boolean FS_CLIENT_TOPOLOGY_RESOLUTION_ENABLED_DEFAULT =
119      false;
120  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
121  public static final String  IO_MAPFILE_BLOOM_SIZE_KEY =
122    "io.mapfile.bloom.size";
123  /** Default value for IO_MAPFILE_BLOOM_SIZE_KEY */
124  public static final int     IO_MAPFILE_BLOOM_SIZE_DEFAULT = 1024*1024;
125  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
126  public static final String  IO_MAPFILE_BLOOM_ERROR_RATE_KEY =
127    "io.mapfile.bloom.error.rate" ;
128  /** Default value for IO_MAPFILE_BLOOM_ERROR_RATE_KEY */
129  public static final float   IO_MAPFILE_BLOOM_ERROR_RATE_DEFAULT = 0.005f;
130  /** Codec class that implements Lzo compression algorithm */
131  public static final String  IO_COMPRESSION_CODEC_LZO_CLASS_KEY =
132    "io.compression.codec.lzo.class";
133  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
134  public static final String  IO_MAP_INDEX_INTERVAL_KEY =
135    "io.map.index.interval";
136  /** Default value for IO_MAP_INDEX_INTERVAL_DEFAULT */
137  public static final int     IO_MAP_INDEX_INTERVAL_DEFAULT = 128;
138  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
139  public static final String  IO_MAP_INDEX_SKIP_KEY = "io.map.index.skip";
140  /** Default value for IO_MAP_INDEX_SKIP_KEY */
141  public static final int     IO_MAP_INDEX_SKIP_DEFAULT = 0;
142  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
143  public static final String  IO_SEQFILE_COMPRESS_BLOCKSIZE_KEY =
144    "io.seqfile.compress.blocksize";
145  /** Default value for IO_SEQFILE_COMPRESS_BLOCKSIZE_KEY */
146  public static final int     IO_SEQFILE_COMPRESS_BLOCKSIZE_DEFAULT = 1000000;
147  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
148  public static final String  IO_FILE_BUFFER_SIZE_KEY =
149    "io.file.buffer.size";
150  /** Default value for IO_FILE_BUFFER_SIZE_KEY */
151  public static final int     IO_FILE_BUFFER_SIZE_DEFAULT = 4096;
152  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
153  public static final String  IO_SKIP_CHECKSUM_ERRORS_KEY =
154    "io.skip.checksum.errors";
155  /** Default value for IO_SKIP_CHECKSUM_ERRORS_KEY */
156  public static final boolean IO_SKIP_CHECKSUM_ERRORS_DEFAULT = false;
157  /**
158   * @deprecated Moved to mapreduce, see mapreduce.task.io.sort.mb
159   * in mapred-default.xml
160   * See https://issues.apache.org/jira/browse/HADOOP-6801
161   */
162  public static final String  IO_SORT_MB_KEY = "io.sort.mb";
163  /** Default value for IO_SORT_MB_DEFAULT */
164  public static final int     IO_SORT_MB_DEFAULT = 100;
165  /**
166   * @deprecated Moved to mapreduce, see mapreduce.task.io.sort.factor
167   * in mapred-default.xml
168   * See https://issues.apache.org/jira/browse/HADOOP-6801
169   */
170  public static final String  IO_SORT_FACTOR_KEY = "io.sort.factor";
171  /** Default value for IO_SORT_FACTOR_DEFAULT */
172  public static final int     IO_SORT_FACTOR_DEFAULT = 100;
173  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
174  public static final String  IO_SERIALIZATIONS_KEY = "io.serializations";
175
176  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
177  public static final String  TFILE_IO_CHUNK_SIZE_KEY = "tfile.io.chunk.size";
178  /** Default value for TFILE_IO_CHUNK_SIZE_DEFAULT */
179  public static final int     TFILE_IO_CHUNK_SIZE_DEFAULT = 1024*1024;
180  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
181  public static final String  TFILE_FS_INPUT_BUFFER_SIZE_KEY =
182    "tfile.fs.input.buffer.size";
183  /** Default value for TFILE_FS_INPUT_BUFFER_SIZE_KEY */
184  public static final int     TFILE_FS_INPUT_BUFFER_SIZE_DEFAULT = 256*1024;
185  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
186  public static final String  TFILE_FS_OUTPUT_BUFFER_SIZE_KEY =
187    "tfile.fs.output.buffer.size";
188  /** Default value for TFILE_FS_OUTPUT_BUFFER_SIZE_KEY */
189  public static final int     TFILE_FS_OUTPUT_BUFFER_SIZE_DEFAULT = 256*1024;
190
191  public static final String  HADOOP_CALLER_CONTEXT_ENABLED_KEY =
192      "hadoop.caller.context.enabled";
193  public static final boolean HADOOP_CALLER_CONTEXT_ENABLED_DEFAULT = false;
194  public static final String  HADOOP_CALLER_CONTEXT_MAX_SIZE_KEY =
195      "hadoop.caller.context.max.size";
196  public static final int     HADOOP_CALLER_CONTEXT_MAX_SIZE_DEFAULT = 128;
197  public static final String  HADOOP_CALLER_CONTEXT_SIGNATURE_MAX_SIZE_KEY =
198      "hadoop.caller.context.signature.max.size";
199  public static final int     HADOOP_CALLER_CONTEXT_SIGNATURE_MAX_SIZE_DEFAULT =
200      40;
201
202  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
203  public static final String  IPC_CLIENT_CONNECTION_MAXIDLETIME_KEY =
204    "ipc.client.connection.maxidletime";
205  /** Default value for IPC_CLIENT_CONNECTION_MAXIDLETIME_KEY */
206  public static final int     IPC_CLIENT_CONNECTION_MAXIDLETIME_DEFAULT = 10000; // 10s
207  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
208  public static final String  IPC_CLIENT_CONNECT_TIMEOUT_KEY =
209    "ipc.client.connect.timeout";
210  /** Default value for IPC_CLIENT_CONNECT_TIMEOUT_KEY */
211  public static final int     IPC_CLIENT_CONNECT_TIMEOUT_DEFAULT = 20000; // 20s
212  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
213  public static final String  IPC_CLIENT_CONNECT_MAX_RETRIES_KEY =
214    "ipc.client.connect.max.retries";
215  /** Default value for IPC_CLIENT_CONNECT_MAX_RETRIES_KEY */
216  public static final int     IPC_CLIENT_CONNECT_MAX_RETRIES_DEFAULT = 10;
217  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
218  public static final String  IPC_CLIENT_CONNECT_RETRY_INTERVAL_KEY =
219      "ipc.client.connect.retry.interval";
220  /** Default value for IPC_CLIENT_CONNECT_RETRY_INTERVAL_KEY */
221  public static final int     IPC_CLIENT_CONNECT_RETRY_INTERVAL_DEFAULT = 1000;
222  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
223  public static final String  IPC_CLIENT_CONNECT_MAX_RETRIES_ON_SOCKET_TIMEOUTS_KEY =
224    "ipc.client.connect.max.retries.on.timeouts";
225  /** Default value for IPC_CLIENT_CONNECT_MAX_RETRIES_ON_SOCKET_TIMEOUTS_KEY */
226  public static final int  IPC_CLIENT_CONNECT_MAX_RETRIES_ON_SOCKET_TIMEOUTS_DEFAULT = 45;
227  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
228  public static final String  IPC_CLIENT_TCPNODELAY_KEY =
229    "ipc.client.tcpnodelay";
230  /** Default value for IPC_CLIENT_TCPNODELAY_KEY */
231  public static final boolean IPC_CLIENT_TCPNODELAY_DEFAULT = true;
232  /** Enable low-latency connections from the client */
233  public static final String   IPC_CLIENT_LOW_LATENCY = "ipc.client.low-latency";
234  /** Default value of IPC_CLIENT_LOW_LATENCY */
235  public static final boolean  IPC_CLIENT_LOW_LATENCY_DEFAULT = false;
236  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
237  public static final String  IPC_SERVER_LISTEN_QUEUE_SIZE_KEY =
238    "ipc.server.listen.queue.size";
239  /** Default value for IPC_SERVER_LISTEN_QUEUE_SIZE_KEY */
240  public static final int     IPC_SERVER_LISTEN_QUEUE_SIZE_DEFAULT = 128;
241  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
242  public static final String  IPC_CLIENT_KILL_MAX_KEY = "ipc.client.kill.max";
243  /** Default value for IPC_CLIENT_KILL_MAX_KEY */
244  public static final int     IPC_CLIENT_KILL_MAX_DEFAULT = 10;
245  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
246  public static final String  IPC_CLIENT_IDLETHRESHOLD_KEY =
247    "ipc.client.idlethreshold";
248  /** Default value for IPC_CLIENT_IDLETHRESHOLD_DEFAULT */
249  public static final int     IPC_CLIENT_IDLETHRESHOLD_DEFAULT = 4000;
250  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
251  public static final String  IPC_SERVER_TCPNODELAY_KEY =
252    "ipc.server.tcpnodelay";
253  /** Default value for IPC_SERVER_TCPNODELAY_KEY */
254  public static final boolean IPC_SERVER_TCPNODELAY_DEFAULT = true;
255  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
256  public static final String  IPC_SERVER_MAX_CONNECTIONS_KEY =
257    "ipc.server.max.connections";
258  /** Default value for IPC_SERVER_MAX_CONNECTIONS_KEY */
259  public static final int     IPC_SERVER_MAX_CONNECTIONS_DEFAULT = 0;
260
261  /** Logs if a RPC is really slow compared to rest of RPCs. */
262  public static final String IPC_SERVER_LOG_SLOW_RPC =
263                                                "ipc.server.log.slow.rpc";
264  public static final boolean IPC_SERVER_LOG_SLOW_RPC_DEFAULT = false;
265
266  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
267  public static final String  HADOOP_RPC_SOCKET_FACTORY_CLASS_DEFAULT_KEY =
268    "hadoop.rpc.socket.factory.class.default";
269  public static final String  HADOOP_RPC_SOCKET_FACTORY_CLASS_DEFAULT_DEFAULT =
270    "org.apache.hadoop.net.StandardSocketFactory";
271  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
272  public static final String  HADOOP_SOCKS_SERVER_KEY = "hadoop.socks.server";
273  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
274  public static final String  HADOOP_UTIL_HASH_TYPE_KEY =
275    "hadoop.util.hash.type";
276  /** Default value for HADOOP_UTIL_HASH_TYPE_KEY */
277  public static final String  HADOOP_UTIL_HASH_TYPE_DEFAULT = "murmur";
278  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
279  public static final String  HADOOP_SECURITY_GROUP_MAPPING =
280    "hadoop.security.group.mapping";
281  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
282  public static final String  HADOOP_SECURITY_GROUPS_CACHE_SECS =
283    "hadoop.security.groups.cache.secs";
284  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
285  public static final long HADOOP_SECURITY_GROUPS_CACHE_SECS_DEFAULT =
286    300;
287  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
288  public static final String  HADOOP_SECURITY_GROUPS_NEGATIVE_CACHE_SECS =
289    "hadoop.security.groups.negative-cache.secs";
290  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
291  public static final long HADOOP_SECURITY_GROUPS_NEGATIVE_CACHE_SECS_DEFAULT =
292    30;
293  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
294  public static final String HADOOP_SECURITY_GROUPS_CACHE_WARN_AFTER_MS =
295    "hadoop.security.groups.cache.warn.after.ms";
296  public static final long HADOOP_SECURITY_GROUPS_CACHE_WARN_AFTER_MS_DEFAULT =
297    5000;
298  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
299  public static final String  HADOOP_SECURITY_AUTHENTICATION =
300    "hadoop.security.authentication";
301  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
302  public static final String HADOOP_SECURITY_AUTHORIZATION =
303    "hadoop.security.authorization";
304  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
305  public static final String HADOOP_SECURITY_INSTRUMENTATION_REQUIRES_ADMIN =
306    "hadoop.security.instrumentation.requires.admin";
307  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
308  public static final String  HADOOP_SECURITY_SERVICE_USER_NAME_KEY =
309    "hadoop.security.service.user.name.key";
310  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
311  public static final String  HADOOP_SECURITY_AUTH_TO_LOCAL =
312    "hadoop.security.auth_to_local";
313  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
314  public static final String HADOOP_SECURITY_DNS_INTERFACE_KEY =
315    "hadoop.security.dns.interface";
316  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
317  public static final String HADOOP_SECURITY_DNS_NAMESERVER_KEY =
318    "hadoop.security.dns.nameserver";
319  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
320  public static final String HADOOP_TOKEN_FILES =
321      "hadoop.token.files";
322
323  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
324  public static final String HADOOP_KERBEROS_MIN_SECONDS_BEFORE_RELOGIN =
325          "hadoop.kerberos.min.seconds.before.relogin";
326  /** Default value for HADOOP_KERBEROS_MIN_SECONDS_BEFORE_RELOGIN */
327  public static final int HADOOP_KERBEROS_MIN_SECONDS_BEFORE_RELOGIN_DEFAULT =
328          60;
329  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
330  public static final String  HADOOP_RPC_PROTECTION =
331    "hadoop.rpc.protection";
332  /** Class to override Sasl Properties for a connection */
333  public static final String  HADOOP_SECURITY_SASL_PROPS_RESOLVER_CLASS =
334    "hadoop.security.saslproperties.resolver.class";
335  public static final String HADOOP_SECURITY_CRYPTO_CODEC_CLASSES_KEY_PREFIX = 
336    "hadoop.security.crypto.codec.classes";
337  public static final String
338      HADOOP_SECURITY_CRYPTO_CODEC_CLASSES_AES_CTR_NOPADDING_KEY =
339      HADOOP_SECURITY_CRYPTO_CODEC_CLASSES_KEY_PREFIX
340          + CipherSuite.AES_CTR_NOPADDING.getConfigSuffix();
341  public static final String
342      HADOOP_SECURITY_CRYPTO_CODEC_CLASSES_AES_CTR_NOPADDING_DEFAULT =
343      OpensslAesCtrCryptoCodec.class.getName() + "," +
344          JceAesCtrCryptoCodec.class.getName();
345  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
346  public static final String HADOOP_SECURITY_CRYPTO_CIPHER_SUITE_KEY =
347    "hadoop.security.crypto.cipher.suite";
348  public static final String HADOOP_SECURITY_CRYPTO_CIPHER_SUITE_DEFAULT = 
349    "AES/CTR/NoPadding";
350  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
351  public static final String HADOOP_SECURITY_CRYPTO_JCE_PROVIDER_KEY =
352    "hadoop.security.crypto.jce.provider";
353  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
354  public static final String HADOOP_SECURITY_CRYPTO_BUFFER_SIZE_KEY = 
355    "hadoop.security.crypto.buffer.size";
356  /** Defalt value for HADOOP_SECURITY_CRYPTO_BUFFER_SIZE_KEY */
357  public static final int HADOOP_SECURITY_CRYPTO_BUFFER_SIZE_DEFAULT = 8192;
358  /** Class to override Impersonation provider */
359  public static final String  HADOOP_SECURITY_IMPERSONATION_PROVIDER_CLASS =
360    "hadoop.security.impersonation.provider.class";
361
362  //  <!-- KMSClientProvider configurations -->
363  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
364  public static final String KMS_CLIENT_ENC_KEY_CACHE_SIZE =
365      "hadoop.security.kms.client.encrypted.key.cache.size";
366  /** Default value for KMS_CLIENT_ENC_KEY_CACHE_SIZE */
367  public static final int KMS_CLIENT_ENC_KEY_CACHE_SIZE_DEFAULT = 500;
368
369  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
370  public static final String KMS_CLIENT_ENC_KEY_CACHE_LOW_WATERMARK =
371      "hadoop.security.kms.client.encrypted.key.cache.low-watermark";
372  /** Default value for KMS_CLIENT_ENC_KEY_CACHE_LOW_WATERMARK */
373  public static final float KMS_CLIENT_ENC_KEY_CACHE_LOW_WATERMARK_DEFAULT =
374      0.3f;
375
376  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
377  public static final String KMS_CLIENT_ENC_KEY_CACHE_NUM_REFILL_THREADS =
378      "hadoop.security.kms.client.encrypted.key.cache.num.refill.threads";
379  /** Default value for KMS_CLIENT_ENC_KEY_NUM_REFILL_THREADS */
380  public static final int KMS_CLIENT_ENC_KEY_CACHE_NUM_REFILL_THREADS_DEFAULT =
381      2;
382
383  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
384  public static final String KMS_CLIENT_ENC_KEY_CACHE_EXPIRY_MS =
385      "hadoop.security.kms.client.encrypted.key.cache.expiry";
386  /** Default value for KMS_CLIENT_ENC_KEY_CACHE_EXPIRY (12 hrs)*/
387  public static final int KMS_CLIENT_ENC_KEY_CACHE_EXPIRY_DEFAULT = 43200000;
388
389  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
390  public static final String HADOOP_SECURITY_JAVA_SECURE_RANDOM_ALGORITHM_KEY = 
391    "hadoop.security.java.secure.random.algorithm";
392  /** Defalt value for HADOOP_SECURITY_JAVA_SECURE_RANDOM_ALGORITHM_KEY */
393  public static final String HADOOP_SECURITY_JAVA_SECURE_RANDOM_ALGORITHM_DEFAULT = 
394    "SHA1PRNG";
395  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
396  public static final String HADOOP_SECURITY_SECURE_RANDOM_IMPL_KEY = 
397    "hadoop.security.secure.random.impl";
398  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
399  public static final String HADOOP_SECURITY_SECURE_RANDOM_DEVICE_FILE_PATH_KEY = 
400    "hadoop.security.random.device.file.path";
401  public static final String HADOOP_SECURITY_SECURE_RANDOM_DEVICE_FILE_PATH_DEFAULT = 
402    "/dev/urandom";
403
404  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
405  public static final String HADOOP_SHELL_MISSING_DEFAULT_FS_WARNING_KEY =
406      "hadoop.shell.missing.defaultFs.warning";
407  public static final boolean HADOOP_SHELL_MISSING_DEFAULT_FS_WARNING_DEFAULT =
408      false;
409
410  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
411  public static final String HADOOP_SHELL_SAFELY_DELETE_LIMIT_NUM_FILES =
412      "hadoop.shell.safely.delete.limit.num.files";
413  public static final long HADOOP_SHELL_SAFELY_DELETE_LIMIT_NUM_FILES_DEFAULT =
414      100;
415
416  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
417  public static final String HADOOP_HTTP_LOGS_ENABLED =
418      "hadoop.http.logs.enabled";
419  /** Defalt value for HADOOP_HTTP_LOGS_ENABLED */
420  public static final boolean HADOOP_HTTP_LOGS_ENABLED_DEFAULT = true;
421}
422