http://localhost:3000/http://localhost:3000/favicon.ico?16699092332020-01-09T08:48:56Zungleich redmineOpen Infrastructure - Task #7590: Expect everything to fail (uncloud)http://localhost:3000/issues/7590?journal_id=307052020-01-09T08:48:56ZAhmed Bilal
<ul></ul><a name="How-do-we-plan-to-handle-failures-in-etcd"></a>
<h2 >How do we plan to handle failures in etcd<a href="#How-do-we-plan-to-handle-failures-in-etcd" class="wiki-anchor">¶</a></h2>
<p>Failures can be temporarily (leadership change) or permanent (etcd cluster dies)</p>
<p>We use four type of functions of etcd<br />1. get<br />2. put<br />3. get_prefix<br />4. watch_prefix</p>
<a name="get"></a>
<h3 >get<a href="#get" class="wiki-anchor">¶</a></h3>
can output the following:
<ul>
<li>EtcdEntry</li>
<li>Exception (KeyError if key not found, and a pleothera of other depending on situations)</li>
</ul>
<p><strong>TODO:</strong> KeyError is recently introduced so would require us to handle it in all stretches of uncloud other errors are also not handled.<br /><strong>TODO:</strong> Handle Exception thrown by get.</p>
<a name="put"></a>
<h3 >put<a href="#put" class="wiki-anchor">¶</a></h3>
can output the following:
<ul>
<li>Response from etcd library</li>
<li>Exception</li>
</ul>
<p><strong>TODO:</strong> See whether the response from etcd library has success/failure indication.<br /><strong>TODO:</strong> Handle exception in case something goes wrong.</p>
<a name="get_prefix"></a>
<h3 >get_prefix<a href="#get_prefix" class="wiki-anchor">¶</a></h3>
<p>can output/yield the following:</p>
<ul>
<li>EtcdEntry</li>
<li>Exception</li>
</ul>
<p><strong>TODO:</strong> Handle exception in case something goes wrong.</p>
<a name="watch_prefix"></a>
<h3 >watch_prefix<a href="#watch_prefix" class="wiki-anchor">¶</a></h3>
<p>can output/yield the following:</p>
<ul>
<li>EtcdEntry</li>
<li>an empty iter in case of exception</li>
</ul> Open Infrastructure - Task #7590: Expect everything to fail (uncloud)http://localhost:3000/issues/7590?journal_id=307072020-01-09T08:52:57ZAhmed Bilal
<ul><li><strong>Related to</strong> <i><a class="issue tracker-5 status-6 priority-2 priority-default closed" href="/issues/7583">Task #7583</a>: Handle etcd leader change or temporary unavailability gracefully in uncloud</i> added</li></ul> Open Infrastructure - Task #7590: Expect everything to fail (uncloud)http://localhost:3000/issues/7590?journal_id=307082020-01-09T08:55:43ZAhmed Bilal
<ul></ul><p>I am little uncertain how to handle failures in etcd. For Example, put every etcd function call in try/except block or do something else.</p> Open Infrastructure - Task #7590: Expect everything to fail (uncloud)http://localhost:3000/issues/7590?journal_id=349512020-12-01T14:49:00ZAhmed Bilal
<ul><li><strong>Assignee</strong> deleted (<del><i>Ahmed Bilal</i></del>)</li></ul> Open Infrastructure - Task #7590: Expect everything to fail (uncloud)http://localhost:3000/issues/7590?journal_id=404942021-12-06T23:54:47ZNico Schotteliusnico.schottelius@ungleich.ch
<ul><li><strong>Status</strong> changed from <i>New</i> to <i>Rejected</i></li></ul>