mirror of
https://github.com/wassname/ray.git
synced 2026-07-14 11:17:54 +08:00
44 lines
1.2 KiB
Python
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)
|