/**
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.hadoop.hdfs.qjournal.protocol;
public class JournalConfigKeys {
// Journal-node related configs. These are read on the JN side.
public static final String DFS_JOURNALNODE_DIR_KEY = "dfs.journalnode.dir";
public static final String DFS_JOURNALNODE_DIR_DEFAULT = "/tmp/hadoop/dfs/journalnode/";
public static final String DFS_JOURNALNODE_RPC_ADDRESS_KEY = "dfs.journalnode.rpc-address";
public static final int DFS_JOURNALNODE_RPC_PORT_DEFAULT = 8485;
public static final String DFS_JOURNALNODE_RPC_ADDRESS_DEFAULT = "0.0.0.0:" + DFS_JOURNALNODE_RPC_PORT_DEFAULT;
public static final String DFS_JOURNALNODE_HOSTS = "dfs.journalnode.hosts";
public static final String DFS_JOURNALNODE_HTTP_ADDRESS_KEY = "dfs.journalnode.http-address";
public static final int DFS_JOURNALNODE_HTTP_PORT_DEFAULT = 8480;
public static final String DFS_JOURNALNODE_HTTP_ADDRESS_DEFAULT = "0.0.0.0:" + DFS_JOURNALNODE_HTTP_PORT_DEFAULT;
// Journal-node related configs for the client side.
public static final String DFS_QJOURNAL_QUEUE_SIZE_LIMIT_KEY = "dfs.qjournal.queued-edits.limit.mb";
public static final int DFS_QJOURNAL_QUEUE_SIZE_LIMIT_DEFAULT = 10;
// Quorum-journal timeouts for various operations. Unlikely to need
// to be tweaked, but configurable just in case.
public static final String DFS_QJOURNAL_START_SEGMENT_TIMEOUT_KEY = "dfs.qjournal.start-segment.timeout.ms";
public static final String DFS_QJOURNAL_PREPARE_RECOVERY_TIMEOUT_KEY = "dfs.qjournal.prepare-recovery.timeout.ms";
public static final String DFS_QJOURNAL_ACCEPT_RECOVERY_TIMEOUT_KEY = "dfs.qjournal.accept-recovery.timeout.ms";
public static final String DFS_QJOURNAL_FINALIZE_SEGMENT_TIMEOUT_KEY = "dfs.qjournal.finalize-segment.timeout.ms";
public static final String DFS_QJOURNAL_SELECT_INPUT_STREAMS_TIMEOUT_KEY = "dfs.qjournal.select-input-streams.timeout.ms";
public static final String DFS_QJOURNAL_GET_IMAGE_MANIFEST_TIMEOUT_KEY = "dfs.qjournal.get-image-manifest.timeout.ms";
public static final String DFS_QJOURNAL_GET_JOURNAL_STATE_TIMEOUT_KEY = "dfs.qjournal.get-journal-state.timeout.ms";
public static final String DFS_QJOURNAL_NEW_EPOCH_TIMEOUT_KEY = "dfs.qjournal.new-epoch.timeout.ms";
public static final String DFS_QJOURNAL_WRITE_TXNS_TIMEOUT_KEY = "dfs.qjournal.write-txns.timeout.ms";
public static final String DFS_QJOURNAL_HTTP_TIMEOUT_KEY = "dfs.qjournal.http.timeout.ms";
public static final String DFS_QJOURNAL_CONNECT_TIMEOUT_KEY = "dfs.qjournal.connect.timeout.ms";
public static final String DFS_QJOURNAL_IPC_READER_KEY = "dfs.qjournal.ipc.threads";
public static final String DFS_QJOURNAL_IMAGE_BUFFER_SIZE_KEY = "dfs.qjournal.image.buffer.size";
public static final String DFS_QJOURNAL_IMAGE_MAX_BUFFERED_CHUNKS_KEY = "dfs.qjournal.image.max.buffered.chunks";
public static final String DFS_QJOURNAL_FORMAT_TIMEOUT_KEY = "dfs.qjournal.format.timeout.ms";
public static final String DFS_QJOURNAL_HAS_DATA_TIMEOUT_KEY = "dfs.qjournal.has.data.timeout.ms";
public static final int DFS_QJOURNAL_START_SEGMENT_TIMEOUT_DEFAULT = 20000;
public static final int DFS_QJOURNAL_PREPARE_RECOVERY_TIMEOUT_DEFAULT = 120000;
public static final int DFS_QJOURNAL_ACCEPT_RECOVERY_TIMEOUT_DEFAULT = 120000;
public static final int DFS_QJOURNAL_FINALIZE_SEGMENT_TIMEOUT_DEFAULT = 120000;
public static final int DFS_QJOURNAL_SELECT_INPUT_STREAMS_TIMEOUT_DEFAULT = 20000;
public static final int DFS_QJOURNAL_GET_IMAGE_MANIFEST_TIMEOUT_DEFAULT = 20000;
public static final int DFS_QJOURNAL_GET_JOURNAL_STATE_TIMEOUT_DEFAULT = 120000;
public static final int DFS_QJOURNAL_NEW_EPOCH_TIMEOUT_DEFAULT = 120000;
public static final int DFS_QJOURNAL_WRITE_TXNS_TIMEOUT_DEFAULT = 20000;
public static final int DFS_QJOURNAL_HTTP_TIMEOUT_DEFAULT = 5000;
public static final long DFS_QJOURNAL_CONNECT_TIMEOUT_DEFAULT = Long.MAX_VALUE;
public static final int DFS_QJOURNAL_IPC_READER_DEFAULT = 16;
public static final int DFS_QJOURNAL_IMAGE_BUFFER_SIZE_DEFAULT = 10 * 1024 * 1024;
public static final int DFS_QJOURNAL_IMAGE_MAX_BUFFERED_CHUNKS_DEFAULT = 20;
public static final int DFS_QJOURNAL_FORMAT_TIMEOUT_DEFAULT = 600000; // 10 mins
public static final int DFS_QJOURNAL_HAS_DATA_TIMEOUT_DEFAULT = 600000; // 10 mins
}