<?xml version="1.0" encoding="UTF-8"?>

<configuration>
    <property>
	<name>mapred.job.tracker</name>
	<value>{{ jobtracker_cluster_id }}</value>
    </property>
    <property>
	<name>mapred.jobtrackers.{{ jobtracker_cluster_id }}</name>
	<value>{{ jobtracker_cluster_id_1 }},{{ jobtracker_cluster_id_2 }}</value>
	<description>Comma-separated list of JobTracker IDs.</description>
    </property>
    <property>
	<name>mapred.jobtracker.rpc-address.{{ jobtracker_cluster_id }}.{{ jobtracker_cluster_id_1 }}</name> 
	<!-- RPC address for {{ jobtracker_cluster_id_1 }} -->
	<value>{{ jobtracker_node_1_hostname }}:{{ jobtracker_cluster_id1_rpc_port }}</value>
    </property>
    <property>
	<name>mapred.jobtracker.rpc-address.{{ jobtracker_cluster_id }}.{{ jobtracker_cluster_id_2 }}</name> 
	<!-- RPC address for {{ jobtracker_cluster_id_2 }} -->
	<value>{{ jobtracker_node_2_hostname }}:{{ jobtracker_cluster_id2_rpc_port }}</value>
    </property>
    <property>
	<name>mapred.job.tracker.http.address.{{ jobtracker_cluster_id }}.{{ jobtracker_cluster_id_1 }}</name> 
	<!-- HTTP bind address for {{ jobtracker_cluster_id_1 }} -->
	<value>0.0.0.0:{{ jobtracker_cluster_id1_http_port }}</value>
    </property>
    <property>
	<name>mapred.job.tracker.http.address.{{ jobtracker_cluster_id }}.{{ jobtracker_cluster_id_2 }}</name> 
	<!-- HTTP bind address for {{ jobtracker_cluster_id_2 }} -->
	<value>0.0.0.0:{{ jobtracker_cluster_id2_http_port }}</value>
    </property>
    <property>
	<name>mapred.ha.jobtracker.rpc-address.{{ jobtracker_cluster_id }}.{{ jobtracker_cluster_id_1 }}</name> 
	<!-- RPC address for {{ jobtracker_cluster_id_1 }} HA daemon -->
	<value>{{ jobtracker_node_1_hostname }}:{{ jobtracker_cluster_id1_ha_rpc_port }}</value>
    </property>
    <property>
	<name>mapred.ha.jobtracker.rpc-address.{{ jobtracker_cluster_id }}.{{ jobtracker_cluster_id_2 }}</name> 
	<!-- RPC address for {{ jobtracker_cluster_id_2 }} HA daemon -->
	<value>{{ jobtracker_node_2_hostname }}:{{ jobtracker_cluster_id2_ha_rpc_port }}</value>
    </property>
    <property>
	<name>mapred.ha.jobtracker.http-redirect-address.{{ jobtracker_cluster_id }}.{{ jobtracker_cluster_id_1 }}</name> 
	<!-- HTTP redirect address for {{ jobtracker_cluster_id_1 }} -->
	<value>{{ jobtracker_node_1_hostname }}:{{ jobtracker_cluster_id1_http_port }}</value>
    </property>
    <property>
	<name>mapred.ha.jobtracker.http-redirect-address.{{ jobtracker_cluster_id }}.{{ jobtracker_cluster_id_2 }}</name> 
	<!-- HTTP redirect address for {{ jobtracker_cluster_id_2 }} -->
	<value>{{ jobtracker_node_2_hostname }}:{{ jobtracker_cluster_id2_http_port }}</value>
    </property>
    <property>
	<name>mapred.jobtracker.restart.recover</name>
	<value>{{ jobtracker_restart_recover }}</value>
    </property>
    <property>
	<name>mapred.client.failover.proxy.provider.{{ jobtracker_cluster_id }}</name>
	<value>org.apache.hadoop.mapred.ConfiguredFailoverProxyProvider</value>
    </property>
    <property>
	<name>mapred.client.failover.max.attempts</name>
	<value>15</value>
    </property>
    <property>
	<name>mapred.client.failover.sleep.base.millis</name>
	<value>500</value>
    </property>
    <property>
	<name>mapred.client.failover.sleep.max.millis</name>
	<value>1500</value>  
    </property>
    <property>
	<name>mapred.client.failover.connection.retries</name>
	<value>{{ jobtracker_failover_connect_retries }}</value>  
    </property>
    <property>
	<name>mapred.client.failover.connection.retries.on.timeouts</name>
	<value>{{ jobtracker_failover_connect_retries }}</value>  
    </property>
    <property>
	<name>mapred.ha.fencing.methods</name>
	<!-- We don't need a real fencing command (?) -->
	<value>shell(/bin/true)</value>
    </property>
    <property>
	<name>mapred.ha.automatic-failover.enabled</name>
	<value>{{ jobtracker_auto_failover_enabled }}</value>
    </property>
    <property>
	<name>mapred.ha.zkfc.port</name>
	<value>{{ jobtracker_zkfc_port }}</value> 
    </property>
    <property>
	<name>mapred.hosts</name>
	<value>/etc/hadoop/conf/mapred_hosts_allow.txt</value>
    </property>
    <property>
	<name>mapred.hosts.exclude</name>
	<value>/etc/hadoop/conf/mapred_hosts_exclude.txt</value>
    </property>
    <property>
	<name>mapred.system.dir</name>
	<value>/tmp/mapred/system</value>
    </property>
    <property>
	<name>mapreduce.jobtracker.staging.root.dir</name>
	<value>{{ mapred_staging_root_dir }}</value>
    </property>
    <property>
	<name>mapred.acls.enabled</name>
	<value>false</value>
    </property>
    <property>
	<name>mapred.local.dir</name>
	<value>/data/mapred/jt</value>
    </property>
    <property>
	<name>hadoop.job.history.location</name>
	<!-- <value>file:////var/log/hadoop-0.20-mapreduce/history</value> -->
	<value>/jobtracker/history</value>
    </property>
    <property>
	<name>mapred.jobtracker.taskScheduler</name>
	<value>org.apache.hadoop.mapred.FairScheduler</value>
    </property>
{% if mapred_use_fair_scheduler %}
    <property>
	<name>mapred.jobtracker.taskScheduler</name>
	<value>org.apache.hadoop.mapred.FairScheduler</value>
    </property>
    <property>
	<name>mapred.fairscheduler.allocation.file</name>
	<value>{{ mapred_fair_scheduler_allocation_file }}</value>
    </property>
{% if mapred_fair_scheduler_use_poolnameproperty %}
    <property>
	<name>mapred.fairscheduler.poolnameproperty</name>
	<value>{{ mapred_fair_scheduler_poolnameproperty }}</value>
    </property>
    <property>
	<name>mapred.fairscheduler.allow.undeclared.pools</name>
	<value>{{ mapred_fair_scheduler_undecl_pools }}</value>
    </property>
{% endif %}
    <property>
	<name>mapred.fairscheduler.weight.adjuster</name>
	<value></value>
    </property>
    <property>
	<name>mapred.fairscheduler.assignmultiple</name>
	<value>{{ mapred_fair_scheduler_assignmultiple }}</value>
    </property>
    <property>
	<name>mapred.fairscheduler.preemption</name>
	<value>{{ mapred_fair_scheduler_preemption }}</value>
    </property>
{% endif %}
    <property>
	<name>mapred.job.tracker.handler.count</name>
	<value>{{ jobtracker_handler_count }}</value>
    </property>
    <property>
	<name>mapred.reduce.slowstart.completed.maps</name>
	<value>{{ mapred_reduce_slowstart_maps }}</value>
    </property>
    <property>
	<name>mapreduce.jobtracker.split.metainfo.maxsize</name>
	<value>{{ mapreduce_jt_split_metainfo_maxsize }}</value>
    </property>
    <property>
	<name>mapred.user.jobconf.limit</name>
	<value>{{ mapred_user_jobconf_limit }}</value>
    </property>
    <property>
	<name>mapreduce.job.counters.max</name>
	<value>{{ mapreduce_job_counters_max }}</value>
    </property>
    <property>
	<name>mapred.jobtracker.retirejob.interval</name>
	<value>{{ mapred_jt_retirejob_interval }}</value>
    </property>
    <property>
	<name>mapred.job.tracker.persist.jobstatus.active</name>
	<value>{{ jobtracker_persistent_jobstatus }}</value>
    </property>
    <property>
	<name>mapred.job.tracker.persist.jobstatus.hours</name>
	<value>{{ mapred_jt_persist_jobstatus_hours }}</value>
    </property>
    <property>
	<name>mapred.job.tracker.persist.jobstatus.dir</name>
	<value>/jobtracker/jobsInfo</value>
    </property>
    <property>
	<name>mapred.jobtracker.completeuserjobs.maximum</name>
	<value>{{ mapred_jt_completeuserjobs_max }}</value>
    </property>
    <property>
	<name>mapred.job.restart.recover</name>
	<value>{{ jobtracker_restart_recover }}</value>
    </property>
    <property>
	<name>hadoop.rpc.socket.factory.class.JobSubmissionProtocol</name>
	<value></value>
    </property>
    <property>
	<name>mapred.jobtracker.plugins</name>
	<value>org.apache.hadoop.thriftfs.ThriftJobTrackerPlugin</value>
    </property>
    <property>
	<name>mapred.queue.names</name>
	<value>{{ mapred_queue_names }}</value>
    </property>
    <property>
	<name>jobtracker.thrift.address</name>
	<value>0.0.0.0:{{ jobtracker_http_port }}</value>
    </property>
</configuration>
