Avoid aborting execution of helpers in case of error

BlockingExecutor must not block other helpers from being executed
if a error is detected by one of them.
Since helpers are built in unpredictable order, there can be situations
when an (unrelated) error causes intermittent failures.
This commit is contained in:
Fedor Isakov 2021-01-11 15:41:32 +01:00
parent 1389f9429f
commit 93cbb90fec
1 changed files with 45 additions and 27 deletions

View File

@ -17946,7 +17946,7 @@
</node>
<node concept="3cpWs8" id="2xx8OBythhY" role="3cqZAp">
<node concept="3cpWsn" id="2xx8OBythhZ" role="3cpWs9">
<property role="TrG5h" value="cause" />
<property role="TrG5h" value="firstCause" />
<node concept="3uibUv" id="2xx8OByrMyL" role="1tU5fm">
<ref role="3uigEE" to="wyt6:~Throwable" resolve="Throwable" />
</node>
@ -18004,27 +18004,36 @@
</node>
</node>
</node>
<node concept="3clFbF" id="2xx8OBytkUs" role="3cqZAp">
<node concept="37vLTI" id="2xx8OBytkUu" role="3clFbG">
<node concept="2OqwBi" id="2xx8OBythi0" role="37vLTx">
<node concept="2OqwBi" id="2xx8OBythi1" role="2Oq$k0">
<node concept="37vLTw" id="2xx8OBythi2" role="2Oq$k0">
<ref role="3cqZAo" node="6nFpYluGWA6" resolve="effect" />
<node concept="3clFbJ" id="3VwM5b6fJ6o" role="3cqZAp">
<node concept="3clFbS" id="3VwM5b6fJ6q" role="3clFbx">
<node concept="3clFbF" id="2xx8OBytkUs" role="3cqZAp">
<node concept="37vLTI" id="2xx8OBytkUu" role="3clFbG">
<node concept="2OqwBi" id="2xx8OBythi0" role="37vLTx">
<node concept="2OqwBi" id="2xx8OBythi1" role="2Oq$k0">
<node concept="37vLTw" id="2xx8OBythi2" role="2Oq$k0">
<ref role="3cqZAo" node="6nFpYluGWA6" resolve="effect" />
</node>
<node concept="liA8E" id="2xx8OBythi3" role="2OqNvi">
<ref role="37wK5l" to="1yqb:7TC1XcdSe_i" resolve="result" />
</node>
</node>
<node concept="liA8E" id="2xx8OBythi4" role="2OqNvi">
<ref role="37wK5l" to="psoy:5X1yxJI3vjy" resolve="cause" />
</node>
</node>
<node concept="liA8E" id="2xx8OBythi3" role="2OqNvi">
<ref role="37wK5l" to="1yqb:7TC1XcdSe_i" resolve="result" />
<node concept="37vLTw" id="2xx8OBytkUy" role="37vLTJ">
<ref role="3cqZAo" node="2xx8OBythhZ" resolve="firstCause" />
</node>
</node>
<node concept="liA8E" id="2xx8OBythi4" role="2OqNvi">
<ref role="37wK5l" to="psoy:5X1yxJI3vjy" resolve="cause" />
</node>
</node>
<node concept="37vLTw" id="2xx8OBytkUy" role="37vLTJ">
<ref role="3cqZAo" node="2xx8OBythhZ" resolve="cause" />
</node>
</node>
<node concept="3clFbC" id="3VwM5b6fJU0" role="3clFbw">
<node concept="37vLTw" id="3VwM5b6fJtd" role="3uHU7B">
<ref role="3cqZAo" node="2xx8OBythhZ" resolve="firstCause" />
</node>
<node concept="10Nm6u" id="3VwM5b6fJKk" role="3uHU7w" />
</node>
</node>
<node concept="3zACq4" id="2xx8OBywYXb" role="3cqZAp" />
<node concept="3SKdUt" id="1z4$59iOKo1" role="3cqZAp">
<node concept="1PaTwC" id="1z4$59iOKo2" role="1aUNEU">
<node concept="3oM_SD" id="1z4$59iOKo3" role="1PaTwD">
@ -18069,13 +18078,23 @@
</node>
</node>
<node concept="3clFbS" id="6nFpYluGWAl" role="1zc67A">
<node concept="3clFbF" id="2xx8OByvc9D" role="3cqZAp">
<node concept="37vLTI" id="2xx8OByvd5D" role="3clFbG">
<node concept="37vLTw" id="2xx8OByvdTf" role="37vLTx">
<ref role="3cqZAo" node="6nFpYluGWAj" resolve="ex" />
<node concept="3clFbJ" id="3VwM5b6fJZY" role="3cqZAp">
<node concept="3clFbS" id="3VwM5b6fK00" role="3clFbx">
<node concept="3clFbF" id="2xx8OByvc9D" role="3cqZAp">
<node concept="37vLTI" id="2xx8OByvd5D" role="3clFbG">
<node concept="37vLTw" id="2xx8OByvdTf" role="37vLTx">
<ref role="3cqZAo" node="6nFpYluGWAj" resolve="ex" />
</node>
<node concept="37vLTw" id="2xx8OByvc9B" role="37vLTJ">
<ref role="3cqZAo" node="2xx8OBythhZ" resolve="firstCause" />
</node>
</node>
</node>
<node concept="37vLTw" id="2xx8OByvc9B" role="37vLTJ">
<ref role="3cqZAo" node="2xx8OBythhZ" resolve="cause" />
</node>
<node concept="3clFbC" id="3VwM5b6fKdm" role="3clFbw">
<node concept="10Nm6u" id="3VwM5b6fKdI" role="3uHU7w" />
<node concept="37vLTw" id="3VwM5b6fK2_" role="3uHU7B">
<ref role="3cqZAo" node="2xx8OBythhZ" resolve="firstCause" />
</node>
</node>
</node>
@ -18103,7 +18122,6 @@
</node>
</node>
</node>
<node concept="3zACq4" id="6nFpYluGWAp" role="3cqZAp" />
<node concept="3SKdUt" id="1z4$59iOK45" role="3cqZAp">
<node concept="1PaTwC" id="1z4$59iOK46" role="1aUNEU">
<node concept="3oM_SD" id="1z4$59iOK47" role="1PaTwD">
@ -18162,14 +18180,14 @@
<ref role="3uigEE" to="w7la:~EvaluationFailureException" resolve="EvaluationFailureException" />
</node>
<node concept="37vLTw" id="1z4$59hQX51" role="2ZW6bz">
<ref role="3cqZAo" node="2xx8OBythhZ" resolve="cause" />
<ref role="3cqZAo" node="2xx8OBythhZ" resolve="firstCause" />
</node>
</node>
</node>
</node>
<node concept="3y3z36" id="1z4$59hPhUy" role="3uHU7B">
<node concept="37vLTw" id="1z4$59hPhU$" role="3uHU7B">
<ref role="3cqZAo" node="2xx8OBythhZ" resolve="cause" />
<ref role="3cqZAo" node="2xx8OBythhZ" resolve="firstCause" />
</node>
<node concept="10Nm6u" id="1z4$59hPhUz" role="3uHU7w" />
</node>
@ -18622,7 +18640,7 @@
<ref role="3uigEE" to="w7la:~EvaluationFailureException" resolve="EvaluationFailureException" />
</node>
<node concept="37vLTw" id="1z4$59hR9d_" role="2ZW6bz">
<ref role="3cqZAo" node="2xx8OBythhZ" resolve="cause" />
<ref role="3cqZAo" node="2xx8OBythhZ" resolve="firstCause" />
</node>
</node>
<node concept="3clFbS" id="1z4$59hR9dA" role="3eOfB_">
@ -18735,7 +18753,7 @@
<node concept="liA8E" id="2xx8OByt9OH" role="2OqNvi">
<ref role="37wK5l" to="et5u:~Message.setException(java.lang.Throwable)" resolve="setException" />
<node concept="37vLTw" id="2xx8OBytC0V" role="37wK5m">
<ref role="3cqZAo" node="2xx8OBythhZ" resolve="cause" />
<ref role="3cqZAo" node="2xx8OBythhZ" resolve="firstCause" />
</node>
</node>
</node>