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  IO_NATIVE_LIB_AVAILABLE_KEY =
042    "io.native.lib.available";
043  /** Default value for IO_NATIVE_LIB_AVAILABLE_KEY */
044  public static final boolean IO_NATIVE_LIB_AVAILABLE_DEFAULT = true;
045  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
046  public static final String  NET_TOPOLOGY_SCRIPT_NUMBER_ARGS_KEY =
047    "net.topology.script.number.args";
048  /** Default value for NET_TOPOLOGY_SCRIPT_NUMBER_ARGS_KEY */
049  public static final int     NET_TOPOLOGY_SCRIPT_NUMBER_ARGS_DEFAULT = 100;
050
051  //FS keys
052  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
053  public static final String  FS_DEFAULT_NAME_KEY = "fs.defaultFS";
054  /** Default value for FS_DEFAULT_NAME_KEY */
055  public static final String  FS_DEFAULT_NAME_DEFAULT = "file:///";
056  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
057  public static final String  FS_DF_INTERVAL_KEY = "fs.df.interval"; 
058  /** Default value for FS_DF_INTERVAL_KEY */
059  public static final long    FS_DF_INTERVAL_DEFAULT = 60000;
060  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
061  public static final String  FS_DU_INTERVAL_KEY = "fs.du.interval";
062  /** Default value for FS_DU_INTERVAL_KEY */
063  public static final long    FS_DU_INTERVAL_DEFAULT = 600000;
064  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
065  public static final String  FS_CLIENT_RESOLVE_REMOTE_SYMLINKS_KEY =
066    "fs.client.resolve.remote.symlinks";
067  /** Default value for FS_CLIENT_RESOLVE_REMOTE_SYMLINKS_KEY */
068  public static final boolean FS_CLIENT_RESOLVE_REMOTE_SYMLINKS_DEFAULT = true;
069
070
071  //Defaults are not specified for following keys
072  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
073  public static final String  NET_TOPOLOGY_SCRIPT_FILE_NAME_KEY =
074    "net.topology.script.file.name";
075  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
076  public static final String  NET_TOPOLOGY_NODE_SWITCH_MAPPING_IMPL_KEY =
077    "net.topology.node.switch.mapping.impl";
078  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
079  public static final String  NET_TOPOLOGY_IMPL_KEY =
080    "net.topology.impl";
081  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
082  public static final String  NET_TOPOLOGY_TABLE_MAPPING_FILE_KEY =
083    "net.topology.table.file.name";
084  public static final String NET_DEPENDENCY_SCRIPT_FILE_NAME_KEY = 
085    "net.topology.dependency.script.file.name";
086
087  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
088  public static final String  FS_TRASH_CHECKPOINT_INTERVAL_KEY =
089    "fs.trash.checkpoint.interval";
090  /** Default value for FS_TRASH_CHECKPOINT_INTERVAL_KEY */
091  public static final long    FS_TRASH_CHECKPOINT_INTERVAL_DEFAULT = 0;
092
093  /**
094   * Directories that cannot be removed unless empty, even by an
095   * administrator.
096   */
097  public static final String FS_PROTECTED_DIRECTORIES =
098      "fs.protected.directories";
099
100  // TBD: Code is still using hardcoded values (e.g. "fs.automatic.close")
101  // instead of constant (e.g. FS_AUTOMATIC_CLOSE_KEY)
102  //
103  /** Not used anywhere, looks like default value for FS_LOCAL_BLOCK_SIZE */
104  public static final long    FS_LOCAL_BLOCK_SIZE_DEFAULT = 32*1024*1024;
105  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
106  public static final String  FS_AUTOMATIC_CLOSE_KEY = "fs.automatic.close";
107  /** Default value for FS_AUTOMATIC_CLOSE_KEY */
108  public static final boolean FS_AUTOMATIC_CLOSE_DEFAULT = true;
109  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
110  public static final String  FS_FILE_IMPL_KEY = "fs.file.impl";
111  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
112  public static final String  FS_FTP_HOST_KEY = "fs.ftp.host";
113  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
114  public static final String  FS_FTP_HOST_PORT_KEY = "fs.ftp.host.port";
115  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
116  public static final String  FS_TRASH_INTERVAL_KEY = "fs.trash.interval";
117  /** Default value for FS_TRASH_INTERVAL_KEY */
118  public static final long    FS_TRASH_INTERVAL_DEFAULT = 0;
119
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  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
192  public static final String  IPC_CLIENT_CONNECTION_MAXIDLETIME_KEY =
193    "ipc.client.connection.maxidletime";
194  /** Default value for IPC_CLIENT_CONNECTION_MAXIDLETIME_KEY */
195  public static final int     IPC_CLIENT_CONNECTION_MAXIDLETIME_DEFAULT = 10000; // 10s
196  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
197  public static final String  IPC_CLIENT_CONNECT_TIMEOUT_KEY =
198    "ipc.client.connect.timeout";
199  /** Default value for IPC_CLIENT_CONNECT_TIMEOUT_KEY */
200  public static final int     IPC_CLIENT_CONNECT_TIMEOUT_DEFAULT = 20000; // 20s
201  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
202  public static final String  IPC_CLIENT_CONNECT_MAX_RETRIES_KEY =
203    "ipc.client.connect.max.retries";
204  /** Default value for IPC_CLIENT_CONNECT_MAX_RETRIES_KEY */
205  public static final int     IPC_CLIENT_CONNECT_MAX_RETRIES_DEFAULT = 10;
206  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
207  public static final String  IPC_CLIENT_CONNECT_RETRY_INTERVAL_KEY =
208      "ipc.client.connect.retry.interval";
209  /** Default value for IPC_CLIENT_CONNECT_RETRY_INTERVAL_KEY */
210  public static final int     IPC_CLIENT_CONNECT_RETRY_INTERVAL_DEFAULT = 1000;
211  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
212  public static final String  IPC_CLIENT_CONNECT_MAX_RETRIES_ON_SOCKET_TIMEOUTS_KEY =
213    "ipc.client.connect.max.retries.on.timeouts";
214  /** Default value for IPC_CLIENT_CONNECT_MAX_RETRIES_ON_SOCKET_TIMEOUTS_KEY */
215  public static final int  IPC_CLIENT_CONNECT_MAX_RETRIES_ON_SOCKET_TIMEOUTS_DEFAULT = 45;
216  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
217  public static final String  IPC_CLIENT_TCPNODELAY_KEY =
218    "ipc.client.tcpnodelay";
219  /** Default value for IPC_CLIENT_TCPNODELAY_KEY */
220  public static final boolean IPC_CLIENT_TCPNODELAY_DEFAULT = true;
221  /** Enable low-latency connections from the client */
222  public static final String   IPC_CLIENT_LOW_LATENCY = "ipc.client.low-latency";
223  /** Default value of IPC_CLIENT_LOW_LATENCY */
224  public static final boolean  IPC_CLIENT_LOW_LATENCY_DEFAULT = false;
225  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
226  public static final String  IPC_SERVER_LISTEN_QUEUE_SIZE_KEY =
227    "ipc.server.listen.queue.size";
228  /** Default value for IPC_SERVER_LISTEN_QUEUE_SIZE_KEY */
229  public static final int     IPC_SERVER_LISTEN_QUEUE_SIZE_DEFAULT = 128;
230  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
231  public static final String  IPC_CLIENT_KILL_MAX_KEY = "ipc.client.kill.max";
232  /** Default value for IPC_CLIENT_KILL_MAX_KEY */
233  public static final int     IPC_CLIENT_KILL_MAX_DEFAULT = 10;
234  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
235  public static final String  IPC_CLIENT_IDLETHRESHOLD_KEY =
236    "ipc.client.idlethreshold";
237  /** Default value for IPC_CLIENT_IDLETHRESHOLD_DEFAULT */
238  public static final int     IPC_CLIENT_IDLETHRESHOLD_DEFAULT = 4000;
239  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
240  public static final String  IPC_SERVER_TCPNODELAY_KEY =
241    "ipc.server.tcpnodelay";
242  /** Default value for IPC_SERVER_TCPNODELAY_KEY */
243  public static final boolean IPC_SERVER_TCPNODELAY_DEFAULT = true;
244  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
245  public static final String  IPC_SERVER_MAX_CONNECTIONS_KEY =
246    "ipc.server.max.connections";
247  /** Default value for IPC_SERVER_MAX_CONNECTIONS_KEY */
248  public static final int     IPC_SERVER_MAX_CONNECTIONS_DEFAULT = 0;
249
250  /** Logs if a RPC is really slow compared to rest of RPCs. */
251  public static final String IPC_SERVER_LOG_SLOW_RPC =
252                                                "ipc.server.log.slow.rpc";
253  public static final boolean IPC_SERVER_LOG_SLOW_RPC_DEFAULT = false;
254
255  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
256  public static final String  HADOOP_RPC_SOCKET_FACTORY_CLASS_DEFAULT_KEY =
257    "hadoop.rpc.socket.factory.class.default";
258  public static final String  HADOOP_RPC_SOCKET_FACTORY_CLASS_DEFAULT_DEFAULT =
259    "org.apache.hadoop.net.StandardSocketFactory";
260  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
261  public static final String  HADOOP_SOCKS_SERVER_KEY = "hadoop.socks.server";
262  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
263  public static final String  HADOOP_UTIL_HASH_TYPE_KEY =
264    "hadoop.util.hash.type";
265  /** Default value for HADOOP_UTIL_HASH_TYPE_KEY */
266  public static final String  HADOOP_UTIL_HASH_TYPE_DEFAULT = "murmur";
267  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
268  public static final String  HADOOP_SECURITY_GROUP_MAPPING =
269    "hadoop.security.group.mapping";
270  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
271  public static final String  HADOOP_SECURITY_GROUPS_CACHE_SECS =
272    "hadoop.security.groups.cache.secs";
273  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
274  public static final long HADOOP_SECURITY_GROUPS_CACHE_SECS_DEFAULT =
275    300;
276  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
277  public static final String  HADOOP_SECURITY_GROUPS_NEGATIVE_CACHE_SECS =
278    "hadoop.security.groups.negative-cache.secs";
279  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
280  public static final long HADOOP_SECURITY_GROUPS_NEGATIVE_CACHE_SECS_DEFAULT =
281    30;
282  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
283  public static final String HADOOP_SECURITY_GROUPS_CACHE_WARN_AFTER_MS =
284    "hadoop.security.groups.cache.warn.after.ms";
285  public static final long HADOOP_SECURITY_GROUPS_CACHE_WARN_AFTER_MS_DEFAULT =
286    5000;
287  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
288  public static final String  HADOOP_SECURITY_AUTHENTICATION =
289    "hadoop.security.authentication";
290  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
291  public static final String HADOOP_SECURITY_AUTHORIZATION =
292    "hadoop.security.authorization";
293  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
294  public static final String HADOOP_SECURITY_INSTRUMENTATION_REQUIRES_ADMIN =
295    "hadoop.security.instrumentation.requires.admin";
296  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
297  public static final String  HADOOP_SECURITY_SERVICE_USER_NAME_KEY =
298    "hadoop.security.service.user.name.key";
299  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
300  public static final String  HADOOP_SECURITY_AUTH_TO_LOCAL =
301    "hadoop.security.auth_to_local";
302
303  @Deprecated
304  /** Only used by HttpServer. */
305  public static final String HADOOP_SSL_ENABLED_KEY = "hadoop.ssl.enabled";
306  @Deprecated
307  /** Only used by HttpServer. */
308  public static final boolean HADOOP_SSL_ENABLED_DEFAULT = false;
309
310
311  // HTTP policies to be used in configuration
312  // Use HttpPolicy.name() instead
313  @Deprecated
314  public static final String HTTP_POLICY_HTTP_ONLY = "HTTP_ONLY";
315  @Deprecated
316  public static final String HTTP_POLICY_HTTPS_ONLY = "HTTPS_ONLY";
317  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
318  public static final String  HADOOP_RPC_PROTECTION =
319    "hadoop.rpc.protection";
320  /** Class to override Sasl Properties for a connection */
321  public static final String  HADOOP_SECURITY_SASL_PROPS_RESOLVER_CLASS =
322    "hadoop.security.saslproperties.resolver.class";
323  public static final String HADOOP_SECURITY_CRYPTO_CODEC_CLASSES_KEY_PREFIX = 
324    "hadoop.security.crypto.codec.classes";
325  public static final String
326      HADOOP_SECURITY_CRYPTO_CODEC_CLASSES_AES_CTR_NOPADDING_KEY =
327      HADOOP_SECURITY_CRYPTO_CODEC_CLASSES_KEY_PREFIX
328          + CipherSuite.AES_CTR_NOPADDING.getConfigSuffix();
329  public static final String
330      HADOOP_SECURITY_CRYPTO_CODEC_CLASSES_AES_CTR_NOPADDING_DEFAULT =
331      OpensslAesCtrCryptoCodec.class.getName() + "," +
332          JceAesCtrCryptoCodec.class.getName();
333  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
334  public static final String HADOOP_SECURITY_CRYPTO_CIPHER_SUITE_KEY =
335    "hadoop.security.crypto.cipher.suite";
336  public static final String HADOOP_SECURITY_CRYPTO_CIPHER_SUITE_DEFAULT = 
337    "AES/CTR/NoPadding";
338  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
339  public static final String HADOOP_SECURITY_CRYPTO_JCE_PROVIDER_KEY =
340    "hadoop.security.crypto.jce.provider";
341  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
342  public static final String HADOOP_SECURITY_CRYPTO_BUFFER_SIZE_KEY = 
343    "hadoop.security.crypto.buffer.size";
344  /** Defalt value for HADOOP_SECURITY_CRYPTO_BUFFER_SIZE_KEY */
345  public static final int HADOOP_SECURITY_CRYPTO_BUFFER_SIZE_DEFAULT = 8192;
346  /** Class to override Impersonation provider */
347  public static final String  HADOOP_SECURITY_IMPERSONATION_PROVIDER_CLASS =
348    "hadoop.security.impersonation.provider.class";
349
350  //  <!-- KMSClientProvider configurations -->
351  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
352  public static final String KMS_CLIENT_ENC_KEY_CACHE_SIZE =
353      "hadoop.security.kms.client.encrypted.key.cache.size";
354  /** Default value for KMS_CLIENT_ENC_KEY_CACHE_SIZE */
355  public static final int KMS_CLIENT_ENC_KEY_CACHE_SIZE_DEFAULT = 500;
356
357  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
358  public static final String KMS_CLIENT_ENC_KEY_CACHE_LOW_WATERMARK =
359      "hadoop.security.kms.client.encrypted.key.cache.low-watermark";
360  /** Default value for KMS_CLIENT_ENC_KEY_CACHE_LOW_WATERMARK */
361  public static final float KMS_CLIENT_ENC_KEY_CACHE_LOW_WATERMARK_DEFAULT =
362      0.3f;
363
364  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
365  public static final String KMS_CLIENT_ENC_KEY_CACHE_NUM_REFILL_THREADS =
366      "hadoop.security.kms.client.encrypted.key.cache.num.refill.threads";
367  /** Default value for KMS_CLIENT_ENC_KEY_NUM_REFILL_THREADS */
368  public static final int KMS_CLIENT_ENC_KEY_CACHE_NUM_REFILL_THREADS_DEFAULT =
369      2;
370
371  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
372  public static final String KMS_CLIENT_ENC_KEY_CACHE_EXPIRY_MS =
373      "hadoop.security.kms.client.encrypted.key.cache.expiry";
374  /** Default value for KMS_CLIENT_ENC_KEY_CACHE_EXPIRY (12 hrs)*/
375  public static final int KMS_CLIENT_ENC_KEY_CACHE_EXPIRY_DEFAULT = 43200000;
376
377  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
378  public static final String HADOOP_SECURITY_JAVA_SECURE_RANDOM_ALGORITHM_KEY = 
379    "hadoop.security.java.secure.random.algorithm";
380  /** Defalt value for HADOOP_SECURITY_JAVA_SECURE_RANDOM_ALGORITHM_KEY */
381  public static final String HADOOP_SECURITY_JAVA_SECURE_RANDOM_ALGORITHM_DEFAULT = 
382    "SHA1PRNG";
383  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
384  public static final String HADOOP_SECURITY_SECURE_RANDOM_IMPL_KEY = 
385    "hadoop.security.secure.random.impl";
386  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
387  public static final String HADOOP_SECURITY_SECURE_RANDOM_DEVICE_FILE_PATH_KEY = 
388    "hadoop.security.random.device.file.path";
389  public static final String HADOOP_SECURITY_SECURE_RANDOM_DEVICE_FILE_PATH_DEFAULT = 
390    "/dev/urandom";
391
392  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
393  public static final String HADOOP_SHELL_MISSING_DEFAULT_FS_WARNING_KEY =
394      "hadoop.shell.missing.defaultFs.warning";
395  public static final boolean HADOOP_SHELL_MISSING_DEFAULT_FS_WARNING_DEFAULT =
396      false;
397
398  /** See <a href="{@docRoot}/../core-default.html">core-default.xml</a> */
399  public static final String HADOOP_SHELL_SAFELY_DELETE_LIMIT_NUM_FILES =
400      "hadoop.shell.safely.delete.limit.num.files";
401  public static final long HADOOP_SHELL_SAFELY_DELETE_LIMIT_NUM_FILES_DEFAULT =
402      100;
403}
404