Files
ray/python/ray/tests/test_unreconstructable_errors.py
T
Eric LiangandGitHub bea43c85b1 Ref count objects created with ray.put (#5590)
* wip

* add weakref option

* tune util

* test ref

* doc

* fix tests
2019-08-30 16:43:23 -07:00

44 lines
1.2 KiB
Python

from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
import numpy as np
import unittest
import ray
class TestUnreconstructableErrors(unittest.TestCase):
def setUp(self):
ray.init(
num_cpus=1,
object_store_memory=150 * 1024 * 1024,
redis_max_memory=10000000)
def tearDown(self):
ray.shutdown()
def testDriverPutEvictedCannotReconstruct(self):
x_id = ray.put(np.zeros(1 * 1024 * 1024), weakref=True)
ray.get(x_id)
for _ in range(20):
ray.put(np.zeros(10 * 1024 * 1024))
self.assertRaises(ray.exceptions.UnreconstructableError,
lambda: ray.get(x_id))
def testLineageEvictedReconstructionFails(self):
@ray.remote
def f(data):
return 0
x_id = f.remote(None)
ray.get(x_id)
for _ in range(400):
ray.get([f.remote(np.zeros(10000)) for _ in range(50)])
self.assertRaises(ray.exceptions.UnreconstructableError,
lambda: ray.get(x_id))
if __name__ == "__main__":
unittest.main(verbosity=2)