This commit is contained in:
manojsdoshi
2021-10-22 02:12:39 +00:00
parent c0ea8591bd
commit d871a692b4
2167 changed files with 50367 additions and 45346 deletions

View File

@@ -100,37 +100,46 @@ $(function() {
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="classripple_1_1NodeStoreScheduler.html#a0b1c3260477e401b7e57493b0aaf9a3a"> 30</a></span>&#160;<a class="code" href="classripple_1_1NodeStoreScheduler.html#a0b1c3260477e401b7e57493b0aaf9a3a">NodeStoreScheduler::scheduleTask</a>(<a class="code" href="structripple_1_1NodeStore_1_1Task.html">NodeStore::Task</a>&amp; task)</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;{</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="classripple_1_1NodeStoreScheduler.html#aa0fbc996243ce5b4d1b5eb2a2cabc2fa">jobQueue_</a>.<a class="code" href="classripple_1_1JobQueue.html#af5e34187d55aa58e551dc196aaf1ec25">addJob</a>(<a class="code" href="namespaceripple.html#ae0f54f8ce649d639bf3e2b295347e17aaf5964ac101121f8e08de3603c12943e0">jtWRITE</a>, <span class="stringliteral">&quot;NodeObject::store&quot;</span>, [&amp;task](<a class="code" href="classripple_1_1Job.html">Job</a>&amp;) {</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; task.performScheduledTask();</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; }))</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; {</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="comment">// Job not added, presumably because we&#39;re shutting down.</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="comment">// Recover by executing the task synchronously.</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; task.<a class="code" href="structripple_1_1NodeStore_1_1Task.html#a1ed44e570fe3bd98407aae13a554ec2b">performScheduledTask</a>();</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; }</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;}</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classripple_1_1NodeStoreScheduler.html#a042848ff97f97cff8a602ffec6b9f807"> 43</a></span>&#160;<a class="code" href="classripple_1_1NodeStoreScheduler.html#a042848ff97f97cff8a602ffec6b9f807">NodeStoreScheduler::onFetch</a>(<a class="code" href="structripple_1_1NodeStore_1_1FetchReport.html">NodeStore::FetchReport</a> <span class="keyword">const</span>&amp; report)</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;{</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="classripple_1_1NodeStoreScheduler.html#aa0fbc996243ce5b4d1b5eb2a2cabc2fa">jobQueue_</a>.<a class="code" href="classripple_1_1JobQueue.html#a719a330a06633559303d6ebcd5945b07">addLoadEvents</a>(</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; report.<a class="code" href="structripple_1_1NodeStore_1_1FetchReport.html#a868b2b01ffe4faef250ab0d5fa685a0d">fetchType</a> == <a class="code" href="namespaceripple_1_1NodeStore.html#a6334ed426a8dbe335761b9d81ab6f19fa0df93e34273b367bb63bad28c94c78d5">NodeStore::FetchType::async</a> ? <a class="code" href="namespaceripple.html#ae0f54f8ce649d639bf3e2b295347e17aac573ff0fe885e62083387ad1823b4f84">jtNS_ASYNC_READ</a></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; : <a class="code" href="namespaceripple.html#ae0f54f8ce649d639bf3e2b295347e17aab724b0c38f524c70378ef010fe8b7e2c">jtNS_SYNC_READ</a>,</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; 1,</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; report.<a class="code" href="structripple_1_1NodeStore_1_1FetchReport.html#ad28c626873890debb451674b62037f57">elapsed</a>);</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;}</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; </div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classripple_1_1NodeStoreScheduler.html#a0b9464b915021b488e3d2e22b840a62f"> 53</a></span>&#160;<a class="code" href="classripple_1_1NodeStoreScheduler.html#a0b9464b915021b488e3d2e22b840a62f">NodeStoreScheduler::onBatchWrite</a>(<a class="code" href="structripple_1_1NodeStore_1_1BatchWriteReport.html">NodeStore::BatchWriteReport</a> <span class="keyword">const</span>&amp; report)</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;{</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="classripple_1_1NodeStoreScheduler.html#aa0fbc996243ce5b4d1b5eb2a2cabc2fa">jobQueue_</a>.<a class="code" href="classripple_1_1JobQueue.html#a719a330a06633559303d6ebcd5945b07">addLoadEvents</a>(<a class="code" href="namespaceripple.html#ae0f54f8ce649d639bf3e2b295347e17aaa94b630431b8f365820cf3a29ed67f3e">jtNS_WRITE</a>, report.<a class="code" href="structripple_1_1NodeStore_1_1BatchWriteReport.html#a357c5cc140aa8da903855175e07b4d0b">writeCount</a>, report.<a class="code" href="structripple_1_1NodeStore_1_1BatchWriteReport.html#a183bf74eb142fef4d3dd5d18905d9a22">elapsed</a>);</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classripple_1_1NodeStoreScheduler.html#aa0fbc996243ce5b4d1b5eb2a2cabc2fa">jobQueue_</a>.<a class="code" href="classripple_1_1JobQueue.html#a540fcd3211d86c0194bf5c154ab98541">isStopped</a>())</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; </div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="classripple_1_1NodeStoreScheduler.html#aa0fbc996243ce5b4d1b5eb2a2cabc2fa">jobQueue_</a>.<a class="code" href="classripple_1_1JobQueue.html#af5e34187d55aa58e551dc196aaf1ec25">addJob</a>(<a class="code" href="namespaceripple.html#ae0f54f8ce649d639bf3e2b295347e17aaf5964ac101121f8e08de3603c12943e0">jtWRITE</a>, <span class="stringliteral">&quot;NodeObject::store&quot;</span>, [&amp;task](<a class="code" href="classripple_1_1Job.html">Job</a>&amp;) {</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; task.performScheduledTask();</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; }))</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; {</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="comment">// Job not added, presumably because we&#39;re shutting down.</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="comment">// Recover by executing the task synchronously.</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; task.<a class="code" href="structripple_1_1NodeStore_1_1Task.html#a1ed44e570fe3bd98407aae13a554ec2b">performScheduledTask</a>();</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; }</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;}</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; </div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="classripple_1_1NodeStoreScheduler.html#a042848ff97f97cff8a602ffec6b9f807"> 46</a></span>&#160;<a class="code" href="classripple_1_1NodeStoreScheduler.html#a042848ff97f97cff8a602ffec6b9f807">NodeStoreScheduler::onFetch</a>(<a class="code" href="structripple_1_1NodeStore_1_1FetchReport.html">NodeStore::FetchReport</a> <span class="keyword">const</span>&amp; report)</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;{</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classripple_1_1NodeStoreScheduler.html#aa0fbc996243ce5b4d1b5eb2a2cabc2fa">jobQueue_</a>.<a class="code" href="classripple_1_1JobQueue.html#a540fcd3211d86c0194bf5c154ab98541">isStopped</a>())</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; </div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="classripple_1_1NodeStoreScheduler.html#aa0fbc996243ce5b4d1b5eb2a2cabc2fa">jobQueue_</a>.<a class="code" href="classripple_1_1JobQueue.html#a719a330a06633559303d6ebcd5945b07">addLoadEvents</a>(</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; report.<a class="code" href="structripple_1_1NodeStore_1_1FetchReport.html#a868b2b01ffe4faef250ab0d5fa685a0d">fetchType</a> == <a class="code" href="namespaceripple_1_1NodeStore.html#a6334ed426a8dbe335761b9d81ab6f19fa0df93e34273b367bb63bad28c94c78d5">NodeStore::FetchType::async</a> ? <a class="code" href="namespaceripple.html#ae0f54f8ce649d639bf3e2b295347e17aac573ff0fe885e62083387ad1823b4f84">jtNS_ASYNC_READ</a></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; : <a class="code" href="namespaceripple.html#ae0f54f8ce649d639bf3e2b295347e17aab724b0c38f524c70378ef010fe8b7e2c">jtNS_SYNC_READ</a>,</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; 1,</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; report.<a class="code" href="structripple_1_1NodeStore_1_1FetchReport.html#ad28c626873890debb451674b62037f57">elapsed</a>);</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;}</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; </div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;} <span class="comment">// namespace ripple</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keywordtype">void</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classripple_1_1NodeStoreScheduler.html#a0b9464b915021b488e3d2e22b840a62f"> 59</a></span>&#160;<a class="code" href="classripple_1_1NodeStoreScheduler.html#a0b9464b915021b488e3d2e22b840a62f">NodeStoreScheduler::onBatchWrite</a>(<a class="code" href="structripple_1_1NodeStore_1_1BatchWriteReport.html">NodeStore::BatchWriteReport</a> <span class="keyword">const</span>&amp; report)</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;{</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classripple_1_1NodeStoreScheduler.html#aa0fbc996243ce5b4d1b5eb2a2cabc2fa">jobQueue_</a>.<a class="code" href="classripple_1_1JobQueue.html#a540fcd3211d86c0194bf5c154ab98541">isStopped</a>())</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; </div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="classripple_1_1NodeStoreScheduler.html#aa0fbc996243ce5b4d1b5eb2a2cabc2fa">jobQueue_</a>.<a class="code" href="classripple_1_1JobQueue.html#a719a330a06633559303d6ebcd5945b07">addLoadEvents</a>(<a class="code" href="namespaceripple.html#ae0f54f8ce649d639bf3e2b295347e17aaa94b630431b8f365820cf3a29ed67f3e">jtNS_WRITE</a>, report.<a class="code" href="structripple_1_1NodeStore_1_1BatchWriteReport.html#a357c5cc140aa8da903855175e07b4d0b">writeCount</a>, report.<a class="code" href="structripple_1_1NodeStore_1_1BatchWriteReport.html#a183bf74eb142fef4d3dd5d18905d9a22">elapsed</a>);</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;}</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; </div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;} <span class="comment">// namespace ripple</span></div>
</div><!-- fragment --></div><!-- contents -->
<div class="ttc" id="aclassripple_1_1NodeStoreScheduler_html_a0b1c3260477e401b7e57493b0aaf9a3a"><div class="ttname"><a href="classripple_1_1NodeStoreScheduler.html#a0b1c3260477e401b7e57493b0aaf9a3a">ripple::NodeStoreScheduler::scheduleTask</a></div><div class="ttdeci">void scheduleTask(NodeStore::Task &amp;task) override</div><div class="ttdoc">Schedules a task.</div><div class="ttdef"><b>Definition:</b> <a href="NodeStoreScheduler_8cpp_source.html#l00030">NodeStoreScheduler.cpp:30</a></div></div>
<div class="ttc" id="aclassripple_1_1NodeStoreScheduler_html_a042848ff97f97cff8a602ffec6b9f807"><div class="ttname"><a href="classripple_1_1NodeStoreScheduler.html#a042848ff97f97cff8a602ffec6b9f807">ripple::NodeStoreScheduler::onFetch</a></div><div class="ttdeci">void onFetch(NodeStore::FetchReport const &amp;report) override</div><div class="ttdoc">Reports completion of a fetch Allows the scheduler to monitor the node store's performance.</div><div class="ttdef"><b>Definition:</b> <a href="NodeStoreScheduler_8cpp_source.html#l00043">NodeStoreScheduler.cpp:43</a></div></div>
<div class="ttc" id="aclassripple_1_1NodeStoreScheduler_html_a0b9464b915021b488e3d2e22b840a62f"><div class="ttname"><a href="classripple_1_1NodeStoreScheduler.html#a0b9464b915021b488e3d2e22b840a62f">ripple::NodeStoreScheduler::onBatchWrite</a></div><div class="ttdeci">void onBatchWrite(NodeStore::BatchWriteReport const &amp;report) override</div><div class="ttdoc">Reports the completion of a batch write Allows the scheduler to monitor the node store's performance.</div><div class="ttdef"><b>Definition:</b> <a href="NodeStoreScheduler_8cpp_source.html#l00053">NodeStoreScheduler.cpp:53</a></div></div>
<div class="ttc" id="aclassripple_1_1NodeStoreScheduler_html_a042848ff97f97cff8a602ffec6b9f807"><div class="ttname"><a href="classripple_1_1NodeStoreScheduler.html#a042848ff97f97cff8a602ffec6b9f807">ripple::NodeStoreScheduler::onFetch</a></div><div class="ttdeci">void onFetch(NodeStore::FetchReport const &amp;report) override</div><div class="ttdoc">Reports completion of a fetch Allows the scheduler to monitor the node store's performance.</div><div class="ttdef"><b>Definition:</b> <a href="NodeStoreScheduler_8cpp_source.html#l00046">NodeStoreScheduler.cpp:46</a></div></div>
<div class="ttc" id="aclassripple_1_1NodeStoreScheduler_html_a0b9464b915021b488e3d2e22b840a62f"><div class="ttname"><a href="classripple_1_1NodeStoreScheduler.html#a0b9464b915021b488e3d2e22b840a62f">ripple::NodeStoreScheduler::onBatchWrite</a></div><div class="ttdeci">void onBatchWrite(NodeStore::BatchWriteReport const &amp;report) override</div><div class="ttdoc">Reports the completion of a batch write Allows the scheduler to monitor the node store's performance.</div><div class="ttdef"><b>Definition:</b> <a href="NodeStoreScheduler_8cpp_source.html#l00059">NodeStoreScheduler.cpp:59</a></div></div>
<div class="ttc" id="anamespaceripple_html_ae0f54f8ce649d639bf3e2b295347e17aab724b0c38f524c70378ef010fe8b7e2c"><div class="ttname"><a href="namespaceripple.html#ae0f54f8ce649d639bf3e2b295347e17aab724b0c38f524c70378ef010fe8b7e2c">ripple::jtNS_SYNC_READ</a></div><div class="ttdeci">@ jtNS_SYNC_READ</div><div class="ttdef"><b>Definition:</b> <a href="Job_8h_source.html#l00082">Job.h:82</a></div></div>
<div class="ttc" id="astructripple_1_1NodeStore_1_1FetchReport_html"><div class="ttname"><a href="structripple_1_1NodeStore_1_1FetchReport.html">ripple::NodeStore::FetchReport</a></div><div class="ttdoc">Contains information about a fetch operation.</div><div class="ttdef"><b>Definition:</b> <a href="ripple_2nodestore_2Scheduler_8h_source.html#l00032">ripple/nodestore/Scheduler.h:32</a></div></div>
<div class="ttc" id="aclassripple_1_1JobQueue_html_af5e34187d55aa58e551dc196aaf1ec25"><div class="ttname"><a href="classripple_1_1JobQueue.html#af5e34187d55aa58e551dc196aaf1ec25">ripple::JobQueue::addJob</a></div><div class="ttdeci">bool addJob(JobType type, std::string const &amp;name, JobHandler &amp;&amp;jobHandler)</div><div class="ttdoc">Adds a job to the JobQueue.</div><div class="ttdef"><b>Definition:</b> <a href="JobQueue_8h_source.html#l00165">JobQueue.h:165</a></div></div>
@@ -138,6 +147,7 @@ $(function() {
<div class="ttc" id="anamespaceripple_html_ae0f54f8ce649d639bf3e2b295347e17aaf5964ac101121f8e08de3603c12943e0"><div class="ttname"><a href="namespaceripple.html#ae0f54f8ce649d639bf3e2b295347e17aaf5964ac101121f8e08de3603c12943e0">ripple::jtWRITE</a></div><div class="ttdeci">@ jtWRITE</div><div class="ttdef"><b>Definition:</b> <a href="Job_8h_source.html#l00063">Job.h:63</a></div></div>
<div class="ttc" id="astructripple_1_1NodeStore_1_1Task_html"><div class="ttname"><a href="structripple_1_1NodeStore_1_1Task.html">ripple::NodeStore::Task</a></div><div class="ttdoc">Derived classes perform scheduled tasks.</div><div class="ttdef"><b>Definition:</b> <a href="Task_8h_source.html#l00027">Task.h:27</a></div></div>
<div class="ttc" id="aclassripple_1_1Job_html"><div class="ttname"><a href="classripple_1_1Job.html">ripple::Job</a></div><div class="ttdef"><b>Definition:</b> <a href="Job_8h_source.html#l00087">Job.h:87</a></div></div>
<div class="ttc" id="aclassripple_1_1JobQueue_html_a540fcd3211d86c0194bf5c154ab98541"><div class="ttname"><a href="classripple_1_1JobQueue.html#a540fcd3211d86c0194bf5c154ab98541">ripple::JobQueue::isStopped</a></div><div class="ttdeci">bool isStopped() const</div><div class="ttdef"><b>Definition:</b> <a href="JobQueue_8cpp_source.html#l00304">JobQueue.cpp:304</a></div></div>
<div class="ttc" id="aclassripple_1_1NodeStoreScheduler_html_a92e3efe8d2011f9095a1e9c76628dc2e"><div class="ttname"><a href="classripple_1_1NodeStoreScheduler.html#a92e3efe8d2011f9095a1e9c76628dc2e">ripple::NodeStoreScheduler::NodeStoreScheduler</a></div><div class="ttdeci">NodeStoreScheduler(JobQueue &amp;jobQueue)</div><div class="ttdef"><b>Definition:</b> <a href="NodeStoreScheduler_8cpp_source.html#l00025">NodeStoreScheduler.cpp:25</a></div></div>
<div class="ttc" id="astructripple_1_1NodeStore_1_1BatchWriteReport_html"><div class="ttname"><a href="structripple_1_1NodeStore_1_1BatchWriteReport.html">ripple::NodeStore::BatchWriteReport</a></div><div class="ttdoc">Contains information about a batch write operation.</div><div class="ttdef"><b>Definition:</b> <a href="ripple_2nodestore_2Scheduler_8h_source.html#l00044">ripple/nodestore/Scheduler.h:44</a></div></div>
<div class="ttc" id="aclassripple_1_1JobQueue_html"><div class="ttname"><a href="classripple_1_1JobQueue.html">ripple::JobQueue</a></div><div class="ttdoc">A pool of threads to perform work.</div><div class="ttdef"><b>Definition:</b> <a href="JobQueue_8h_source.html#l00055">JobQueue.h:55</a></div></div>