You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by gi...@apache.org on 2018/06/21 20:38:48 UTC
[2/3] mesos-site git commit: Updated the website built from mesos
SHA: 0e8e5d2.
http://git-wip-us.apache.org/repos/asf/mesos-site/blob/094c1f77/content/api/latest/c++/src_2slave_2constants_8hpp_source.html
----------------------------------------------------------------------
diff --git a/content/api/latest/c++/src_2slave_2constants_8hpp_source.html b/content/api/latest/c++/src_2slave_2constants_8hpp_source.html
index cf0f7c4..03edb29 100644
--- a/content/api/latest/c++/src_2slave_2constants_8hpp_source.html
+++ b/content/api/latest/c++/src_2slave_2constants_8hpp_source.html
@@ -52,28 +52,29 @@
<div class="title">constants.hpp</div> </div>
</div><!--header-->
<div class="contents">
-<a href="src_2slave_2constants_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">// Licensed to the Apache Software Foundation (ASF) under one</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">// or more contributor license agreements. See the NOTICE file</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">// distributed with this work for additional information</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">// regarding copyright ownership. The ASF licenses this file</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">// to you under the Apache License, Version 2.0 (the</span></div><div class="line"><a name="l00006"
></a><span class="lineno"> 6</span> <span class="comment">// "License"); you may not use this file except in compliance</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment">// with the License. You may obtain a copy of the License at</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment">//</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment">// http://www.apache.org/licenses/LICENSE-2.0</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment">//</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment">// Unless required by applicable law or agreed to in writing, software</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment
">// distributed under the License is distributed on an "AS IS" BASIS,</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment">// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment">// See the License for the specific language governing permissions and</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment">// limitations under the License.</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> </div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="preprocessor">#ifndef __SLAVE_CONSTANTS_HPP__</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor">#define __SLAVE_CONSTANTS_HPP__</span></div><div
class="line"><a name="l00019"></a><span class="lineno"> 19</span> </div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include <stdint.h></span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <vector></span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <<a class="code" href="include_2mesos_2mesos_8hpp.html">mesos/mesos.hpp</a>></span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span> </div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <<a class="code" href="bytes_8hpp.html">stout/bytes.hpp</a>></span></div><div class="line"><a name="l00026"></a><span class="lineno"> 2
6</span> <span class="preprocessor">#include <<a class="code" href="duration_8hpp.html">stout/duration.hpp</a>></span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span> </div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="keyword">namespace </span><a class="code" href="namespacemesos.html">mesos</a> {</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="keyword">namespace </span><a class="code" href="namespaceinternal.html">internal</a> {</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="keyword">namespace </span>slave {</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="comment">// TODO(jieyu): Use static functions for all the constants. See more</span></div><div class="line"><a na
me="l00033"></a><span class="lineno"> 33</span> <span class="comment">// details in MESOS-1023.</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span> </div><div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a7d43125bd0cba56c9c1a0f5c43d6a1cf"> 35</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a7d43125bd0cba56c9c1a0f5c43d6a1cf">EXECUTOR_REGISTRATION_TIMEOUT</a> = <a class="code" href="classMinutes.html">Minutes</a>(1);</div><div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a124db27a66a15baa22c129a7599ec430"> 36</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a124db27a66a15baa22c129a7599ec430">EXECUTOR_REREG
ISTRATION_TIMEOUT</a> = <a class="code" href="classSeconds.html">Seconds</a>(2);</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span> </div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="comment">// The maximum timeout within which an executor can reregister.</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="comment">// Note that this value has to be << 'MIN_AGENT_REREGISTER_TIMEOUT'</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="comment">// declared in 'master/constants.hpp'; since agent recovery will only</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="comment">// complete after this timeout has elapsed, this ensures that the</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class
="comment">// agent can reregister with the master before it is marked</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="comment">// unreachable and its tasks are transitioned to TASK_UNREACHABLE or</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="comment">// TASK_LOST.</span></div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a325e350497e1448cbf615d8881482880"> 45</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a325e350497e1448cbf615d8881482880">MAX_EXECUTOR_REREGISTRATION_TIMEOUT</a> = <a class="code" href="classSeconds.html">Seconds</a>(15);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>
60;<span class="comment">// The default amount of time to wait for the executor to</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="comment">// shut down before destroying the container.</span></div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#add1ee64d10e656eee05899328ed30dab"> 49</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#add1ee64d10e656eee05899328ed30dab">DEFAULT_EXECUTOR_SHUTDOWN_GRACE_PERIOD</a> = <a class="code" href="classSeconds.html">Seconds</a>(5);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span> </div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a5b20ccf235919cc83665d5ba9a466383"> 51</a></span> constexpr <a class="code" href
="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a5b20ccf235919cc83665d5ba9a466383">RECOVERY_TIMEOUT</a> = <a class="code" href="classMinutes.html">Minutes</a>(15);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="comment">// TODO(gkleiman): Move this to a different file once `TaskStatusUpdateManager`</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="comment">// uses `StatusUpdateManagerProcess`. See MESOS-8296.</span></div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#aeb8b9ceb7ee7fb45557ab4beeb3361a9"> 55</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#aeb8b9ceb7ee7fb45557ab4beeb3
361a9">STATUS_UPDATE_RETRY_INTERVAL_MIN</a> = <a class="code" href="classSeconds.html">Seconds</a>(10);</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#ad21670291a9464020160f8b9048ef582"> 56</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#ad21670291a9464020160f8b9048ef582">STATUS_UPDATE_RETRY_INTERVAL_MAX</a> = <a class="code" href="classMinutes.html">Minutes</a>(10);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment">// Default backoff interval used by the slave to wait before registration.</span></div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#aa40bf3dc131f95819a83e7bebef70de4"> 59</a></spa
n> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#aa40bf3dc131f95819a83e7bebef70de4">DEFAULT_REGISTRATION_BACKOFF_FACTOR</a> = <a class="code" href="classSeconds.html">Seconds</a>(1);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="comment">// The maximum interval the slave waits before retrying registration.</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="comment">// Note that this value has to be << 'MIN_SLAVE_REREGISTER_TIMEOUT'</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="comment">// declared in 'master/constants.hpp'. This helps the slave to retry</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&
#160;<span class="comment">// (re-)registration multiple times between when the master finishes</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment">// recovery and when it times out slave re-registration.</span></div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#acfaf0850a5e7dc54daac3701b51838e3"> 66</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#acfaf0850a5e7dc54daac3701b51838e3">REGISTER_RETRY_INTERVAL_MAX</a> = <a class="code" href="classMinutes.html">Minutes</a>(1);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="comment">// The maximum interval the slave waits before retrying authentication.</span></div><div class="l
ine"><a name="l00069"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a4314509d761b55fc5c5ca2200bb2bc86"> 69</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a4314509d761b55fc5c5ca2200bb2bc86">AUTHENTICATION_RETRY_INTERVAL_MAX</a> = <a class="code" href="classMinutes.html">Minutes</a>(1);</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="comment">// Default backoff interval used by the slave to wait after failed</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="comment">// authentication.</span></div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#ac5681909591532a6ea98d0338f2af6a7"> 73</a></sp
an> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#ac5681909591532a6ea98d0338f2af6a7">DEFAULT_AUTHENTICATION_BACKOFF_FACTOR</a> = <a class="code" href="classSeconds.html">Seconds</a>(1);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a84c5903d8f027d97a5562ec780b0bda4"> 75</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a84c5903d8f027d97a5562ec780b0bda4">GC_DELAY</a> = <a class="code" href="classWeeks.html">Weeks</a>(1);</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a30ce2dea60e8214b2c6d85ff62320726"> 76</a></span> constexpr <a class="code" href="classDu
ration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a30ce2dea60e8214b2c6d85ff62320726">DISK_WATCH_INTERVAL</a> = <a class="code" href="classMinutes.html">Minutes</a>(1);</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="comment">// Minimum free disk capacity enforced by the garbage collector.</span></div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#ac85e94143a6a198db8326f9f4a52a22d"> 79</a></span> constexpr <span class="keywordtype">double</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#ac85e94143a6a198db8326f9f4a52a22d">GC_DISK_HEADROOM</a> = 0.1;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <
span class="comment">// Maximum number of completed frameworks to store in memory.</span></div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a9e1f463aeb2aaad492ce5ccd73914fee"> 82</a></span> constexpr <span class="keywordtype">size_t</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a9e1f463aeb2aaad492ce5ccd73914fee">MAX_COMPLETED_FRAMEWORKS</a> = 50;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="comment">// Default maximum number of completed executors per framework</span></div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="comment">// to store in memory.</span></div><div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#aace51cf90e724052
27b75a7269858a8f"> 86</a></span> constexpr <span class="keywordtype">size_t</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#aace51cf90e72405227b75a7269858a8f">DEFAULT_MAX_COMPLETED_EXECUTORS_PER_FRAMEWORK</a> = 150;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span> </div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="comment">// Maximum number of completed tasks per executor to store in memory.</span></div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="comment">//</span></div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="comment">// NOTE: This should be greater than zero because the agent looks</span></div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="comment">// for completed tasks to determine (with false positives) whether</span></div><div clas
s="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="comment">// an executor ever received tasks. See MESOS-8411.</span></div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="comment">//</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="comment">// TODO(mzhu): Remove this note once we can determine whether an</span></div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="comment">// executor ever received tasks without looking through the</span></div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="comment">// completed tasks.</span></div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a23f2ab61b74c10b2163a042f4e865d3c"> 97</a></span> constexpr <span class="keywordtype">size_t</span> <a class="code"
href="namespacemesos_1_1internal_1_1slave.html#a23f2ab61b74c10b2163a042f4e865d3c">MAX_COMPLETED_TASKS_PER_EXECUTOR</a> = 200;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="comment">// Default cpus offered by the slave.</span></div><div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#acd5fc2c16f1c399531ca23262a9fe3cf"> 100</a></span> constexpr <span class="keywordtype">double</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#acd5fc2c16f1c399531ca23262a9fe3cf">DEFAULT_CPUS</a> = 1;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span> </div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="comment">// Default memory offered by the slave.</span></div><div class="line"><a name="l00103"></a><s
pan class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a5b8da5062b4f53f03758960e1eb3f3b4"> 103</a></span> constexpr <a class="code" href="classBytes.html">Bytes</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a5b8da5062b4f53f03758960e1eb3f3b4">DEFAULT_MEM</a> = <a class="code" href="bytes_8hpp.html#a1ddad0da83178785efb031952a4ef6a5">Gigabytes</a>(1);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span> </div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="comment">// Default disk space offered by the slave.</span></div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a566e19d0af34a069d25b980ce07859a2"> 106</a></span> constexpr <a class="code" href="classBytes.html">Bytes</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a566e19d0af34a069d25b980ce07859a2">DEFAULT_DI
SK</a> = <a class="code" href="bytes_8hpp.html#a1ddad0da83178785efb031952a4ef6a5">Gigabytes</a>(10);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span> </div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="comment">// Default ports range offered by the slave.</span></div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a240fd6924623a94292899fd919af4415"> 109</a></span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a240fd6924623a94292899fd919af4415">DEFAULT_PORTS</a>[] = <span class="stringliteral">"[31000-32000]"</span>;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span> </div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="comment">// Default cpu resource given to a command executor
.</span></div><div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a39deb134c6da2122db4bf463315e8be9"> 112</a></span> constexpr <span class="keywordtype">double</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a39deb134c6da2122db4bf463315e8be9">DEFAULT_EXECUTOR_CPUS</a> = 0.1;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span> </div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="comment">// Default memory resource given to a command executor.</span></div><div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#ae06e3194ad829db8098c1791a750ca78"> 115</a></span> constexpr <a class="code" href="classBytes.html">Bytes</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#ae06e3194ad829db8098c1791a750ca78">DEFAULT_EXECUTOR_MEM</a> = <
a class="code" href="bytes_8hpp.html#a5d8fe3ccbf9cafff06846c05b3ca864b">Megabytes</a>(32);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span> </div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="preprocessor">#ifdef ENABLE_PORT_MAPPING_ISOLATOR</span></div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="comment">// Default number of ephemeral ports allocated to a container by the</span></div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="comment">// network isolator.</span></div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span> constexpr uint16_t DEFAULT_EPHEMERAL_PORTS_PER_CONTAINER = 1024;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span> 
</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="comment">// Default UNIX socket (Linux) or Named Pipe (Windows) resource that provides</span></div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="comment">// CLI access to the Docker daemon.</span></div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="preprocessor">#ifdef __WINDOWS__</span></div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a4069394b12f5808b1d5de703e7324c11">DEFAULT_DOCKER_HOST_RESOURCE</a>[] = <span class="stringliteral">"//./pipe/docker_engine"</span>;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="preprocessor">#else</span></div><div class="line"><a name="l00128"></a><span class="linen
o"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a4069394b12f5808b1d5de703e7324c11"> 128</a></span> constexpr <span class="keywordtype">char</span> DEFAULT_DOCKER_HOST_RESOURCE[] = <span class="stringliteral">"/var/run/docker.sock"</span>;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="preprocessor">#endif // __WINDOWS__</span></div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span> </div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="comment">// Default duration that docker containers will be removed after exit.</span></div><div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a17c32859de9018d4e35e223932956227"> 132</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a17c3
2859de9018d4e35e223932956227">DOCKER_REMOVE_DELAY</a> = <a class="code" href="classHours.html">Hours</a>(6);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span> </div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="comment">// Default duration to wait before retry inspecting a docker</span></div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="comment">// container.</span></div><div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#afc0d56cf9f52d4a7422fa0c9833988cc"> 136</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#afc0d56cf9f52d4a7422fa0c9833988cc">DOCKER_INSPECT_DELAY</a> = <a class="code" href="classSeconds.html">Seconds</a>(1);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</s
pan> </div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="comment">// Default duration to wait for `inspect` command completion.</span></div><div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#ad212bb9f10c21738fce8eb39c6700b00"> 139</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#ad212bb9f10c21738fce8eb39c6700b00">DOCKER_INSPECT_TIMEOUT</a> = <a class="code" href="classSeconds.html">Seconds</a>(5);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="comment">// Default maximum number of docker inspect calls docker ps will invoke</span></div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="comment">// in
parallel to prevent hitting system's open file descriptor limit.</span></div><div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a4224dcfd5af7747e25b91baedeec2b9b"> 143</a></span> constexpr <span class="keywordtype">size_t</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a4224dcfd5af7747e25b91baedeec2b9b">DOCKER_PS_MAX_INSPECT_CALLS</a> = 100;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span> </div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="comment">// Default duration that docker containerizer will wait to check</span></div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="comment">// docker version.</span></div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="comment">// TODO(tnachen): Make this a flag.</span></div><di
v class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a485e0a6583f1cf3ed2a42c2225dd7dcc"> 148</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a485e0a6583f1cf3ed2a42c2225dd7dcc">DOCKER_VERSION_WAIT_TIMEOUT</a> = <a class="code" href="classSeconds.html">Seconds</a>(5);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span> </div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="comment">// Additional duration that docker containerizer will wait beyond the</span></div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="comment">// configured `docker_stop_timeout` for docker stop to succeed, before</span></div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="comment">// trying to
kill the process by itself.</span></div><div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a7ea174fe9f6cd2213b58a2b369a6dd6b"> 153</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a7ea174fe9f6cd2213b58a2b369a6dd6b">DOCKER_FORCE_KILL_TIMEOUT</a> = <a class="code" href="classSeconds.html">Seconds</a>(1);</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span> </div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="comment">// Name of the default, CRAM-MD5 authenticatee.</span></div><div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#ac92d36ffcd9e8e6d1c2a41ae1b1dbc33"> 156</a></span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1interna
l_1_1slave.html#ac92d36ffcd9e8e6d1c2a41ae1b1dbc33">DEFAULT_AUTHENTICATEE</a>[] = <span class="stringliteral">"crammd5"</span>;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span> </div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="comment">// Name of the default, local authorizer.</span></div><div class="line"><a name="l00159"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a610508485df6b0c9f917e94d14f3ba97"> 159</a></span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a610508485df6b0c9f917e94d14f3ba97">DEFAULT_AUTHORIZER</a>[] = <span class="stringliteral">"local"</span>;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span> </div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="comment">// Name of the agent
HTTP authentication realm for read-only endpoints.</span></div><div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#ae63e0bbf34b7dcebdf8ea534dcf197e8"> 162</a></span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#ae63e0bbf34b7dcebdf8ea534dcf197e8">READONLY_HTTP_AUTHENTICATION_REALM</a>[] = <span class="stringliteral">"mesos-agent-readonly"</span>;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span> </div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="comment">// Name of the agent HTTP authentication realm for read-write endpoints.</span></div><div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a6ed17aed3e25ca05cacf647d9e614ae8"> 165</a></span> constexpr <span class="keywordtype">char</
span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a6ed17aed3e25ca05cacf647d9e614ae8">READWRITE_HTTP_AUTHENTICATION_REALM</a>[] = <span class="stringliteral">"mesos-agent-readwrite"</span>;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span> </div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="comment">// Name of the agent HTTP authentication realm for HTTP executors.</span></div><div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#ab06983b32306c295abea280c3ccfb87b"> 168</a></span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#ab06983b32306c295abea280c3ccfb87b">EXECUTOR_HTTP_AUTHENTICATION_REALM</a>[] = <span class="stringliteral">"mesos-agent-executor"</span>;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</s
pan> </div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="comment">// Name of the agent HTTP authentication realm for HTTP resource providers.</span></div><div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#ac4ac850be8dfacb7ded8bd816669333c"> 171</a></span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#ac4ac850be8dfacb7ded8bd816669333c">RESOURCE_PROVIDER_HTTP_AUTHENTICATION_REALM</a>[] =</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  <span class="stringliteral">"mesos-agent-resource-provider"</span>;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span> </div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="comment">// Default maximum storage space to be used by the fetcher cach
e.</span></div><div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a693bfee95e7402c2ea259abb0d46909d"> 175</a></span> constexpr <a class="code" href="classBytes.html">Bytes</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a693bfee95e7402c2ea259abb0d46909d">DEFAULT_FETCHER_CACHE_SIZE</a> = <a class="code" href="bytes_8hpp.html#a1ddad0da83178785efb031952a4ef6a5">Gigabytes</a>(2);</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span> </div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="comment">// Default timeout for the fetcher to wait when a net download stalls.</span></div><div class="line"><a name="l00178"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a6c0ea1863b47efd4a7e55fd473d0dc8e"> 178</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a c
lass="code" href="namespacemesos_1_1internal_1_1slave.html#a6c0ea1863b47efd4a7e55fd473d0dc8e">DEFAULT_FETCHER_STALL_TIMEOUT</a> = <a class="code" href="classMinutes.html">Minutes</a>(1);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span> </div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="comment">// If no pings received within this timeout, then the slave will</span></div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="comment">// trigger a re-detection of the master to cause a re-registration.</span></div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a75ebc6b9a39e3185324121d052e4bebd">DEFAULT_MASTER_PING_TIMEOUT</a>();</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span> </div><div clas
s="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="comment">// Name of the executable for default executor.</span></div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="preprocessor">#ifdef __WINDOWS__</span></div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#aaff17224d6907b6bc7f6367769f21ad5">MESOS_DEFAULT_EXECUTOR</a>[] = <span class="stringliteral">"mesos-default-executor.exe"</span>;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="preprocessor">#else</span></div><div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#aaff17224d6907b6bc7f6367769f21ad5"> 188</a></span> constexpr <span class="keywordtype">char</span> MESOS_DEFAULT_EXECUTOR[]
= <span class="stringliteral">"mesos-default-executor"</span>;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="preprocessor">#endif // __WINDOWS__</span></div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span> </div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="comment">// Virtual path on which agent logs are mounted in `/files/` endpoint.</span></div><div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a214946e51606694950e9dfa6336601d9"> 192</a></span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a214946e51606694950e9dfa6336601d9">AGENT_LOG_VIRTUAL_PATH</a>[] = <span class="stringliteral">"/slave/log"</span>;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span> </div><div cl
ass="line"><a name="l00194"></a><span class="lineno"> 194</span> std::vector<SlaveInfo::Capability> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a660376bcf88f089c191f22c164864286">AGENT_CAPABILITIES</a>();</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span> </div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span> } <span class="comment">// namespace slave {</span></div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span> } <span class="comment">// namespace internal {</span></div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span> } <span class="comment">// namespace mesos {</span></div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span> </div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="preprocessor">#endif // __SLAVE_CONSTANTS_HPP__</span></div><div class="ttc" id="namespac
emesos_1_1internal_1_1slave_html_ad21670291a9464020160f8b9048ef582"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#ad21670291a9464020160f8b9048ef582">mesos::internal::slave::STATUS_UPDATE_RETRY_INTERVAL_MAX</a></div><div class="ttdeci">constexpr Duration STATUS_UPDATE_RETRY_INTERVAL_MAX</div><div class="ttdef"><b>Definition:</b> constants.hpp:56</div></div>
-<div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_a7ea174fe9f6cd2213b58a2b369a6dd6b"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#a7ea174fe9f6cd2213b58a2b369a6dd6b">mesos::internal::slave::DOCKER_FORCE_KILL_TIMEOUT</a></div><div class="ttdeci">constexpr Duration DOCKER_FORCE_KILL_TIMEOUT</div><div class="ttdef"><b>Definition:</b> constants.hpp:153</div></div>
-<div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_a39deb134c6da2122db4bf463315e8be9"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#a39deb134c6da2122db4bf463315e8be9">mesos::internal::slave::DEFAULT_EXECUTOR_CPUS</a></div><div class="ttdeci">constexpr double DEFAULT_EXECUTOR_CPUS</div><div class="ttdef"><b>Definition:</b> constants.hpp:112</div></div>
+<a href="src_2slave_2constants_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">// Licensed to the Apache Software Foundation (ASF) under one</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">// or more contributor license agreements. See the NOTICE file</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">// distributed with this work for additional information</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">// regarding copyright ownership. The ASF licenses this file</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">// to you under the Apache License, Version 2.0 (the</span></div><div class="line"><a name="l00006"
></a><span class="lineno"> 6</span> <span class="comment">// "License"); you may not use this file except in compliance</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment">// with the License. You may obtain a copy of the License at</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment">//</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment">// http://www.apache.org/licenses/LICENSE-2.0</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment">//</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment">// Unless required by applicable law or agreed to in writing, software</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment
">// distributed under the License is distributed on an "AS IS" BASIS,</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment">// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment">// See the License for the specific language governing permissions and</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment">// limitations under the License.</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> </div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="preprocessor">#ifndef __SLAVE_CONSTANTS_HPP__</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor">#define __SLAVE_CONSTANTS_HPP__</span></div><div
class="line"><a name="l00019"></a><span class="lineno"> 19</span> </div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include <stdint.h></span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <vector></span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <<a class="code" href="include_2mesos_2mesos_8hpp.html">mesos/mesos.hpp</a>></span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span> </div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <<a class="code" href="bytes_8hpp.html">stout/bytes.hpp</a>></span></div><div class="line"><a name="l00026"></a><span class="lineno"> 2
6</span> <span class="preprocessor">#include <<a class="code" href="duration_8hpp.html">stout/duration.hpp</a>></span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span> </div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="keyword">namespace </span><a class="code" href="namespacemesos.html">mesos</a> {</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="keyword">namespace </span><a class="code" href="namespaceinternal.html">internal</a> {</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="keyword">namespace </span>slave {</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="comment">// TODO(jieyu): Use static functions for all the constants. See more</span></div><div class="line"><a na
me="l00033"></a><span class="lineno"> 33</span> <span class="comment">// details in MESOS-1023.</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span> </div><div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a7d43125bd0cba56c9c1a0f5c43d6a1cf"> 35</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a7d43125bd0cba56c9c1a0f5c43d6a1cf">EXECUTOR_REGISTRATION_TIMEOUT</a> = <a class="code" href="classMinutes.html">Minutes</a>(1);</div><div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a124db27a66a15baa22c129a7599ec430"> 36</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a124db27a66a15baa22c129a7599ec430">EXECUTOR_REREG
ISTRATION_TIMEOUT</a> = <a class="code" href="classSeconds.html">Seconds</a>(2);</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span> </div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="comment">// The maximum timeout within which an executor can reregister.</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="comment">// Note that this value has to be << 'MIN_AGENT_REREGISTER_TIMEOUT'</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="comment">// declared in 'master/constants.hpp'; since agent recovery will only</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="comment">// complete after this timeout has elapsed, this ensures that the</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class
="comment">// agent can reregister with the master before it is marked</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="comment">// unreachable and its tasks are transitioned to TASK_UNREACHABLE or</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="comment">// TASK_LOST.</span></div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a325e350497e1448cbf615d8881482880"> 45</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a325e350497e1448cbf615d8881482880">MAX_EXECUTOR_REREGISTRATION_TIMEOUT</a> = <a class="code" href="classSeconds.html">Seconds</a>(15);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>
60;<span class="comment">// The default amount of time to wait for the executor to</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="comment">// shut down before destroying the container.</span></div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#add1ee64d10e656eee05899328ed30dab"> 49</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#add1ee64d10e656eee05899328ed30dab">DEFAULT_EXECUTOR_SHUTDOWN_GRACE_PERIOD</a> = <a class="code" href="classSeconds.html">Seconds</a>(5);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span> </div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a5b20ccf235919cc83665d5ba9a466383"> 51</a></span> constexpr <a class="code" href
="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a5b20ccf235919cc83665d5ba9a466383">RECOVERY_TIMEOUT</a> = <a class="code" href="classMinutes.html">Minutes</a>(15);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="comment">// TODO(gkleiman): Move this to a different file once `TaskStatusUpdateManager`</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="comment">// uses `StatusUpdateManagerProcess`. See MESOS-8296.</span></div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#aeb8b9ceb7ee7fb45557ab4beeb3361a9"> 55</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#aeb8b9ceb7ee7fb45557ab4beeb3
361a9">STATUS_UPDATE_RETRY_INTERVAL_MIN</a> = <a class="code" href="classSeconds.html">Seconds</a>(10);</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#ad21670291a9464020160f8b9048ef582"> 56</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#ad21670291a9464020160f8b9048ef582">STATUS_UPDATE_RETRY_INTERVAL_MAX</a> = <a class="code" href="classMinutes.html">Minutes</a>(10);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment">// Default backoff interval used by the slave to wait before registration.</span></div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#aa40bf3dc131f95819a83e7bebef70de4"> 59</a></spa
n> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#aa40bf3dc131f95819a83e7bebef70de4">DEFAULT_REGISTRATION_BACKOFF_FACTOR</a> = <a class="code" href="classSeconds.html">Seconds</a>(1);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="comment">// The maximum interval the slave waits before retrying registration.</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="comment">// Note that this value has to be << 'MIN_SLAVE_REREGISTER_TIMEOUT'</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="comment">// declared in 'master/constants.hpp'. This helps the slave to retry</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&
#160;<span class="comment">// (re-)registration multiple times between when the master finishes</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment">// recovery and when it times out slave re-registration.</span></div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#acfaf0850a5e7dc54daac3701b51838e3"> 66</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#acfaf0850a5e7dc54daac3701b51838e3">REGISTER_RETRY_INTERVAL_MAX</a> = <a class="code" href="classMinutes.html">Minutes</a>(1);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="comment">// The maximum interval the slave waits before retrying authentication.</span></div><div class="l
ine"><a name="l00069"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a4314509d761b55fc5c5ca2200bb2bc86"> 69</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a4314509d761b55fc5c5ca2200bb2bc86">AUTHENTICATION_RETRY_INTERVAL_MAX</a> = <a class="code" href="classMinutes.html">Minutes</a>(1);</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="comment">// Default backoff interval used by the slave to wait after failed</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="comment">// authentication.</span></div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#ac5681909591532a6ea98d0338f2af6a7"> 73</a></sp
an> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#ac5681909591532a6ea98d0338f2af6a7">DEFAULT_AUTHENTICATION_BACKOFF_FACTOR</a> = <a class="code" href="classSeconds.html">Seconds</a>(1);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a84c5903d8f027d97a5562ec780b0bda4"> 75</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a84c5903d8f027d97a5562ec780b0bda4">GC_DELAY</a> = <a class="code" href="classWeeks.html">Weeks</a>(1);</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a30ce2dea60e8214b2c6d85ff62320726"> 76</a></span> constexpr <a class="code" href="classDu
ration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a30ce2dea60e8214b2c6d85ff62320726">DISK_WATCH_INTERVAL</a> = <a class="code" href="classMinutes.html">Minutes</a>(1);</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="comment">// Minimum free disk capacity enforced by the garbage collector.</span></div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#ac85e94143a6a198db8326f9f4a52a22d"> 79</a></span> constexpr <span class="keywordtype">double</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#ac85e94143a6a198db8326f9f4a52a22d">GC_DISK_HEADROOM</a> = 0.1;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <
span class="comment">// Maximum number of completed frameworks to store in memory.</span></div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a9e1f463aeb2aaad492ce5ccd73914fee"> 82</a></span> constexpr <span class="keywordtype">size_t</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a9e1f463aeb2aaad492ce5ccd73914fee">MAX_COMPLETED_FRAMEWORKS</a> = 50;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="comment">// Default maximum number of completed executors per framework</span></div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="comment">// to store in memory.</span></div><div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#aace51cf90e724052
27b75a7269858a8f"> 86</a></span> constexpr <span class="keywordtype">size_t</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#aace51cf90e72405227b75a7269858a8f">DEFAULT_MAX_COMPLETED_EXECUTORS_PER_FRAMEWORK</a> = 150;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span> </div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="comment">// Maximum number of a container id length, according to the</span></div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="comment">// max entry length for directory names on AUFS.</span></div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a9c57015ede4e49d9a29f0112893073aa"> 90</a></span> constexpr <span class="keywordtype">size_t</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a9c57015ede4e49d9a29f0112893073aa">M
AX_CONTAINER_ID_LENGTH</a> = 242;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span> </div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="comment">// Maximum number of completed tasks per executor to store in memory.</span></div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="comment">//</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="comment">// NOTE: This should be greater than zero because the agent looks</span></div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="comment">// for completed tasks to determine (with false positives) whether</span></div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="comment">// an executor ever received tasks. See MESOS-8411.</span></div><div class="line"><a name="l00097"></a><span class="line
no"> 97</span> <span class="comment">//</span></div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="comment">// TODO(mzhu): Remove this note once we can determine whether an</span></div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="comment">// executor ever received tasks without looking through the</span></div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="comment">// completed tasks.</span></div><div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a23f2ab61b74c10b2163a042f4e865d3c"> 101</a></span> constexpr <span class="keywordtype">size_t</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a23f2ab61b74c10b2163a042f4e865d3c">MAX_COMPLETED_TASKS_PER_EXECUTOR</a> = 200;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span> </
div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="comment">// Default cpus offered by the slave.</span></div><div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#acd5fc2c16f1c399531ca23262a9fe3cf"> 104</a></span> constexpr <span class="keywordtype">double</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#acd5fc2c16f1c399531ca23262a9fe3cf">DEFAULT_CPUS</a> = 1;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span> </div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="comment">// Default memory offered by the slave.</span></div><div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a5b8da5062b4f53f03758960e1eb3f3b4"> 107</a></span> constexpr <a class="code" href="classBytes.html">Bytes</a> <a class="cod
e" href="namespacemesos_1_1internal_1_1slave.html#a5b8da5062b4f53f03758960e1eb3f3b4">DEFAULT_MEM</a> = <a class="code" href="bytes_8hpp.html#a1ddad0da83178785efb031952a4ef6a5">Gigabytes</a>(1);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="comment">// Default disk space offered by the slave.</span></div><div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a566e19d0af34a069d25b980ce07859a2"> 110</a></span> constexpr <a class="code" href="classBytes.html">Bytes</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a566e19d0af34a069d25b980ce07859a2">DEFAULT_DISK</a> = <a class="code" href="bytes_8hpp.html#a1ddad0da83178785efb031952a4ef6a5">Gigabytes</a>(10);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div><div class="line"><a
name="l00112"></a><span class="lineno"> 112</span> <span class="comment">// Default ports range offered by the slave.</span></div><div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a240fd6924623a94292899fd919af4415"> 113</a></span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a240fd6924623a94292899fd919af4415">DEFAULT_PORTS</a>[] = <span class="stringliteral">"[31000-32000]"</span>;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="comment">// Default cpu resource given to a command executor.</span></div><div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a39deb134c6da2122db4bf463315e8be9"> 116</a></span> constexpr <span c
lass="keywordtype">double</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a39deb134c6da2122db4bf463315e8be9">DEFAULT_EXECUTOR_CPUS</a> = 0.1;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span> </div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="comment">// Default memory resource given to a command executor.</span></div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#ae06e3194ad829db8098c1791a750ca78"> 119</a></span> constexpr <a class="code" href="classBytes.html">Bytes</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#ae06e3194ad829db8098c1791a750ca78">DEFAULT_EXECUTOR_MEM</a> = <a class="code" href="bytes_8hpp.html#a5d8fe3ccbf9cafff06846c05b3ca864b">Megabytes</a>(32);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span> </div><div class="line"><a name="l001
21"></a><span class="lineno"> 121</span> <span class="preprocessor">#ifdef ENABLE_PORT_MAPPING_ISOLATOR</span></div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="comment">// Default number of ephemeral ports allocated to a container by the</span></div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="comment">// network isolator.</span></div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span> constexpr uint16_t DEFAULT_EPHEMERAL_PORTS_PER_CONTAINER = 1024;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span> </div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="comment">// Default UNIX socket (Linux) or Named Pipe (Windows) resource that provides</span></div><div class="lin
e"><a name="l00128"></a><span class="lineno"> 128</span> <span class="comment">// CLI access to the Docker daemon.</span></div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="preprocessor">#ifdef __WINDOWS__</span></div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a4069394b12f5808b1d5de703e7324c11">DEFAULT_DOCKER_HOST_RESOURCE</a>[] = <span class="stringliteral">"//./pipe/docker_engine"</span>;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="preprocessor">#else</span></div><div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a4069394b12f5808b1d5de703e7324c11"> 132</a></span> constexpr <span class="keywordtype">char</span> DEFAULT_DOCKER_HOST_RESOURCE[] = <span c
lass="stringliteral">"/var/run/docker.sock"</span>;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="preprocessor">#endif // __WINDOWS__</span></div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span> </div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="comment">// Default duration that docker containers will be removed after exit.</span></div><div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a17c32859de9018d4e35e223932956227"> 136</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a17c32859de9018d4e35e223932956227">DOCKER_REMOVE_DELAY</a> = <a class="code" href="classHours.html">Hours</a>(6);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span> </div><div class="l
ine"><a name="l00138"></a><span class="lineno"> 138</span> <span class="comment">// Default duration to wait before retry inspecting a docker</span></div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="comment">// container.</span></div><div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#afc0d56cf9f52d4a7422fa0c9833988cc"> 140</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#afc0d56cf9f52d4a7422fa0c9833988cc">DOCKER_INSPECT_DELAY</a> = <a class="code" href="classSeconds.html">Seconds</a>(1);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span> </div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="comment">// Default duration to wait for `inspect` command completion.</span></div><div class="line"><a
name="l00143"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#ad212bb9f10c21738fce8eb39c6700b00"> 143</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#ad212bb9f10c21738fce8eb39c6700b00">DOCKER_INSPECT_TIMEOUT</a> = <a class="code" href="classSeconds.html">Seconds</a>(5);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span> </div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="comment">// Default maximum number of docker inspect calls docker ps will invoke</span></div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="comment">// in parallel to prevent hitting system's open file descriptor limit.</span></div><div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a4224d
cfd5af7747e25b91baedeec2b9b"> 147</a></span> constexpr <span class="keywordtype">size_t</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a4224dcfd5af7747e25b91baedeec2b9b">DOCKER_PS_MAX_INSPECT_CALLS</a> = 100;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span> </div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="comment">// Default duration that docker containerizer will wait to check</span></div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="comment">// docker version.</span></div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="comment">// TODO(tnachen): Make this a flag.</span></div><div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a485e0a6583f1cf3ed2a42c2225dd7dcc"> 152</a></span> constexpr <a class="code" href="cl
assDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a485e0a6583f1cf3ed2a42c2225dd7dcc">DOCKER_VERSION_WAIT_TIMEOUT</a> = <a class="code" href="classSeconds.html">Seconds</a>(5);</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span> </div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="comment">// Additional duration that docker containerizer will wait beyond the</span></div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="comment">// configured `docker_stop_timeout` for docker stop to succeed, before</span></div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="comment">// trying to kill the process by itself.</span></div><div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a7ea174fe9f6cd2213b58a2b369a6dd6b"> 157</a></s
pan> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a7ea174fe9f6cd2213b58a2b369a6dd6b">DOCKER_FORCE_KILL_TIMEOUT</a> = <a class="code" href="classSeconds.html">Seconds</a>(1);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span> </div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="comment">// Name of the default, CRAM-MD5 authenticatee.</span></div><div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#ac92d36ffcd9e8e6d1c2a41ae1b1dbc33"> 160</a></span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#ac92d36ffcd9e8e6d1c2a41ae1b1dbc33">DEFAULT_AUTHENTICATEE</a>[] = <span class="stringliteral">"crammd5"</span>;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</sp
an> </div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="comment">// Name of the default, local authorizer.</span></div><div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a610508485df6b0c9f917e94d14f3ba97"> 163</a></span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a610508485df6b0c9f917e94d14f3ba97">DEFAULT_AUTHORIZER</a>[] = <span class="stringliteral">"local"</span>;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span> </div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="comment">// Name of the agent HTTP authentication realm for read-only endpoints.</span></div><div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#ae63e0bbf34b7dcebdf8ea534
dcf197e8"> 166</a></span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#ae63e0bbf34b7dcebdf8ea534dcf197e8">READONLY_HTTP_AUTHENTICATION_REALM</a>[] = <span class="stringliteral">"mesos-agent-readonly"</span>;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span> </div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="comment">// Name of the agent HTTP authentication realm for read-write endpoints.</span></div><div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a6ed17aed3e25ca05cacf647d9e614ae8"> 169</a></span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a6ed17aed3e25ca05cacf647d9e614ae8">READWRITE_HTTP_AUTHENTICATION_REALM</a>[] = <span class="stringliteral">"mesos-agent-readwrite"</
span>;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span> </div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="comment">// Name of the agent HTTP authentication realm for HTTP executors.</span></div><div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#ab06983b32306c295abea280c3ccfb87b"> 172</a></span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#ab06983b32306c295abea280c3ccfb87b">EXECUTOR_HTTP_AUTHENTICATION_REALM</a>[] = <span class="stringliteral">"mesos-agent-executor"</span>;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span> </div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="comment">// Name of the agent HTTP authentication realm for HTTP resource providers.</span></div><div cl
ass="line"><a name="l00175"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#ac4ac850be8dfacb7ded8bd816669333c"> 175</a></span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#ac4ac850be8dfacb7ded8bd816669333c">RESOURCE_PROVIDER_HTTP_AUTHENTICATION_REALM</a>[] =</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  <span class="stringliteral">"mesos-agent-resource-provider"</span>;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span> </div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="comment">// Default maximum storage space to be used by the fetcher cache.</span></div><div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a693bfee95e7402c2ea259abb0d46909d"> 179</a></span> constexpr <a cla
ss="code" href="classBytes.html">Bytes</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a693bfee95e7402c2ea259abb0d46909d">DEFAULT_FETCHER_CACHE_SIZE</a> = <a class="code" href="bytes_8hpp.html#a1ddad0da83178785efb031952a4ef6a5">Gigabytes</a>(2);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span> </div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="comment">// Default timeout for the fetcher to wait when a net download stalls.</span></div><div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a6c0ea1863b47efd4a7e55fd473d0dc8e"> 182</a></span> constexpr <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a6c0ea1863b47efd4a7e55fd473d0dc8e">DEFAULT_FETCHER_STALL_TIMEOUT</a> = <a class="code" href="classMinutes.html">Minutes</a>(1);</div><div class="line"><
a name="l00183"></a><span class="lineno"> 183</span> </div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="comment">// If no pings received within this timeout, then the slave will</span></div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="comment">// trigger a re-detection of the master to cause a re-registration.</span></div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <a class="code" href="classDuration.html">Duration</a> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a75ebc6b9a39e3185324121d052e4bebd">DEFAULT_MASTER_PING_TIMEOUT</a>();</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span> </div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="comment">// Name of the executable for default executor.</span></div><div class="line"><a name="l00189"></a><span class="lineno">
189</span> <span class="preprocessor">#ifdef __WINDOWS__</span></div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#aaff17224d6907b6bc7f6367769f21ad5">MESOS_DEFAULT_EXECUTOR</a>[] = <span class="stringliteral">"mesos-default-executor.exe"</span>;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="preprocessor">#else</span></div><div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#aaff17224d6907b6bc7f6367769f21ad5"> 192</a></span> constexpr <span class="keywordtype">char</span> MESOS_DEFAULT_EXECUTOR[] = <span class="stringliteral">"mesos-default-executor"</span>;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="preprocessor">#endif // __WINDOWS__</span
></div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span> </div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="comment">// Virtual path on which agent logs are mounted in `/files/` endpoint.</span></div><div class="line"><a name="l00196"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1slave.html#a214946e51606694950e9dfa6336601d9"> 196</a></span> constexpr <span class="keywordtype">char</span> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a214946e51606694950e9dfa6336601d9">AGENT_LOG_VIRTUAL_PATH</a>[] = <span class="stringliteral">"/slave/log"</span>;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span> </div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span> std::vector<SlaveInfo::Capability> <a class="code" href="namespacemesos_1_1internal_1_1slave.html#a660376bcf88f089c191f22c164864286">A
GENT_CAPABILITIES</a>();</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span> </div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span> } <span class="comment">// namespace slave {</span></div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span> } <span class="comment">// namespace internal {</span></div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span> } <span class="comment">// namespace mesos {</span></div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span> </div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="preprocessor">#endif // __SLAVE_CONSTANTS_HPP__</span></div><div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_ad21670291a9464020160f8b9048ef582"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#ad21670291a9464020160f8b9048ef582">mesos::internal::slave::STATUS_UPDATE_
RETRY_INTERVAL_MAX</a></div><div class="ttdeci">constexpr Duration STATUS_UPDATE_RETRY_INTERVAL_MAX</div><div class="ttdef"><b>Definition:</b> constants.hpp:56</div></div>
+<div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_a7ea174fe9f6cd2213b58a2b369a6dd6b"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#a7ea174fe9f6cd2213b58a2b369a6dd6b">mesos::internal::slave::DOCKER_FORCE_KILL_TIMEOUT</a></div><div class="ttdeci">constexpr Duration DOCKER_FORCE_KILL_TIMEOUT</div><div class="ttdef"><b>Definition:</b> constants.hpp:157</div></div>
+<div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_a39deb134c6da2122db4bf463315e8be9"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#a39deb134c6da2122db4bf463315e8be9">mesos::internal::slave::DEFAULT_EXECUTOR_CPUS</a></div><div class="ttdeci">constexpr double DEFAULT_EXECUTOR_CPUS</div><div class="ttdef"><b>Definition:</b> constants.hpp:116</div></div>
<div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_a5b20ccf235919cc83665d5ba9a466383"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#a5b20ccf235919cc83665d5ba9a466383">mesos::internal::slave::RECOVERY_TIMEOUT</a></div><div class="ttdeci">constexpr Duration RECOVERY_TIMEOUT</div><div class="ttdef"><b>Definition:</b> constants.hpp:51</div></div>
-<div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_a4069394b12f5808b1d5de703e7324c11"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#a4069394b12f5808b1d5de703e7324c11">mesos::internal::slave::DEFAULT_DOCKER_HOST_RESOURCE</a></div><div class="ttdeci">constexpr char DEFAULT_DOCKER_HOST_RESOURCE[]</div><div class="ttdef"><b>Definition:</b> constants.hpp:128</div></div>
+<div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_a4069394b12f5808b1d5de703e7324c11"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#a4069394b12f5808b1d5de703e7324c11">mesos::internal::slave::DEFAULT_DOCKER_HOST_RESOURCE</a></div><div class="ttdeci">constexpr char DEFAULT_DOCKER_HOST_RESOURCE[]</div><div class="ttdef"><b>Definition:</b> constants.hpp:132</div></div>
<div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_a4314509d761b55fc5c5ca2200bb2bc86"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#a4314509d761b55fc5c5ca2200bb2bc86">mesos::internal::slave::AUTHENTICATION_RETRY_INTERVAL_MAX</a></div><div class="ttdeci">constexpr Duration AUTHENTICATION_RETRY_INTERVAL_MAX</div><div class="ttdef"><b>Definition:</b> constants.hpp:69</div></div>
-<div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_a6c0ea1863b47efd4a7e55fd473d0dc8e"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#a6c0ea1863b47efd4a7e55fd473d0dc8e">mesos::internal::slave::DEFAULT_FETCHER_STALL_TIMEOUT</a></div><div class="ttdeci">constexpr Duration DEFAULT_FETCHER_STALL_TIMEOUT</div><div class="ttdef"><b>Definition:</b> constants.hpp:178</div></div>
+<div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_a6c0ea1863b47efd4a7e55fd473d0dc8e"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#a6c0ea1863b47efd4a7e55fd473d0dc8e">mesos::internal::slave::DEFAULT_FETCHER_STALL_TIMEOUT</a></div><div class="ttdeci">constexpr Duration DEFAULT_FETCHER_STALL_TIMEOUT</div><div class="ttdef"><b>Definition:</b> constants.hpp:182</div></div>
<div class="ttc" id="bytes_8hpp_html_a5d8fe3ccbf9cafff06846c05b3ca864b"><div class="ttname"><a href="bytes_8hpp.html#a5d8fe3ccbf9cafff06846c05b3ca864b">Megabytes</a></div><div class="ttdeci">constexpr Bytes Megabytes(uint64_t value)</div><div class="ttdef"><b>Definition:</b> bytes.hpp:123</div></div>
-<div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_a17c32859de9018d4e35e223932956227"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#a17c32859de9018d4e35e223932956227">mesos::internal::slave::DOCKER_REMOVE_DELAY</a></div><div class="ttdeci">constexpr Duration DOCKER_REMOVE_DELAY</div><div class="ttdef"><b>Definition:</b> constants.hpp:132</div></div>
+<div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_a17c32859de9018d4e35e223932956227"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#a17c32859de9018d4e35e223932956227">mesos::internal::slave::DOCKER_REMOVE_DELAY</a></div><div class="ttdeci">constexpr Duration DOCKER_REMOVE_DELAY</div><div class="ttdef"><b>Definition:</b> constants.hpp:136</div></div>
<div class="ttc" id="include_2mesos_2mesos_8hpp_html"><div class="ttname"><a href="include_2mesos_2mesos_8hpp.html">mesos.hpp</a></div></div>
<div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_a9e1f463aeb2aaad492ce5ccd73914fee"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#a9e1f463aeb2aaad492ce5ccd73914fee">mesos::internal::slave::MAX_COMPLETED_FRAMEWORKS</a></div><div class="ttdeci">constexpr size_t MAX_COMPLETED_FRAMEWORKS</div><div class="ttdef"><b>Definition:</b> constants.hpp:82</div></div>
<div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_ac5681909591532a6ea98d0338f2af6a7"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#ac5681909591532a6ea98d0338f2af6a7">mesos::internal::slave::DEFAULT_AUTHENTICATION_BACKOFF_FACTOR</a></div><div class="ttdeci">constexpr Duration DEFAULT_AUTHENTICATION_BACKOFF_FACTOR</div><div class="ttdef"><b>Definition:</b> constants.hpp:73</div></div>
-<div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_a240fd6924623a94292899fd919af4415"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#a240fd6924623a94292899fd919af4415">mesos::internal::slave::DEFAULT_PORTS</a></div><div class="ttdeci">constexpr char DEFAULT_PORTS[]</div><div class="ttdef"><b>Definition:</b> constants.hpp:109</div></div>
-<div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_a5b8da5062b4f53f03758960e1eb3f3b4"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#a5b8da5062b4f53f03758960e1eb3f3b4">mesos::internal::slave::DEFAULT_MEM</a></div><div class="ttdeci">constexpr Bytes DEFAULT_MEM</div><div class="ttdef"><b>Definition:</b> constants.hpp:103</div></div>
+<div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_a9c57015ede4e49d9a29f0112893073aa"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#a9c57015ede4e49d9a29f0112893073aa">mesos::internal::slave::MAX_CONTAINER_ID_LENGTH</a></div><div class="ttdeci">constexpr size_t MAX_CONTAINER_ID_LENGTH</div><div class="ttdef"><b>Definition:</b> constants.hpp:90</div></div>
+<div class="ttc" id="namespacemesos_1_1internal_1_1slave_html_a240fd6924623a94292899fd919af4415"><div class="ttname"><a href="namespacemesos_1_1internal_1_1slave.html#a240fd6924623a94292899fd919af4415">mesos::internal::slave::DEFAULT_PORTS</a></div><div class="ttdeci">constexpr char DEFAULT_PORTS[]</div><div class="ttdef"><b>Definition:</b> constants.hpp:113</div></div>
+<div cla
<TRUNCATED>