By default, reconstruction should only be enabled for actor creation. (#6613)

* wip

* fix

* fix
This commit is contained in:
Eric Liang
2019-12-26 19:57:50 -08:00
committed by GitHub
parent 98689bd263
commit d3db9e9c1e
8 changed files with 20 additions and 40 deletions
+10 -15
View File
@@ -12,8 +12,6 @@ import pytest
import ray
import ray.ray_constants as ray_constants
RAY_FORCE_DIRECT = ray_constants.direct_call_enabled()
@pytest.mark.parametrize(
"ray_start_cluster", [{
@@ -64,19 +62,16 @@ def test_actor_creation_node_failure(ray_start_cluster):
except ray.exceptions.RayActorError:
children[i] = Child.remote(death_probability)
if (RAY_FORCE_DIRECT):
children_out = [
child.get_probability.remote() for child in children
]
# Wait for new created actors to finish creation before
# removing a node. This is needed because right now we don't
# support reconstructing actors that died in the process of
# being created.
ready, _ = ray.wait(
children_out,
num_returns=len(children_out),
timeout=5 * 60.0)
assert len(ready) == len(children_out)
children_out = [
child.get_probability.remote() for child in children
]
# Wait for new created actors to finish creation before
# removing a node. This is needed because right now we don't
# support reconstructing actors that died in the process of
# being created.
ready, _ = ray.wait(
children_out, num_returns=len(children_out), timeout=5 * 60.0)
assert len(ready) == len(children_out)
# Remove a node. Any actor creation tasks that were forwarded to this
# node must be reconstructed.