mirror of
https://github.com/wassname/ray.git
synced 2026-07-06 05:16:30 +08:00
35eeec5647
* add global state actors * fix code style * fix GcsActorManagerTest bug * rebase master * add jni code * add get checkpoint id code * add debug code * add debug code * change log level * fix compile bug * return null in jni * fix crash bug * change import seq Co-authored-by: 灵洵 <fengbin.ffb@antfin.com> Co-authored-by: Hao Chen <chenh1024@gmail.com>
56 lines
1.7 KiB
Cython
56 lines
1.7 KiB
Cython
from ray.includes.unique_ids cimport (
|
|
CActorID,
|
|
CObjectID,
|
|
)
|
|
|
|
from ray.includes.global_state_accessor cimport (
|
|
CGlobalStateAccessor,
|
|
)
|
|
|
|
from libcpp.string cimport string as c_string
|
|
|
|
cdef class GlobalStateAccessor:
|
|
"""Cython wrapper class of C++ `ray::gcs::GlobalStateAccessor`."""
|
|
cdef:
|
|
unique_ptr[CGlobalStateAccessor] inner
|
|
|
|
def __init__(self, redis_address, redis_password, c_bool is_test_client=False):
|
|
if not redis_password:
|
|
redis_password = ""
|
|
self.inner.reset(
|
|
new CGlobalStateAccessor(redis_address.encode("ascii"),
|
|
redis_password.encode("ascii"), is_test_client))
|
|
|
|
def connect(self):
|
|
return self.inner.get().Connect()
|
|
|
|
def disconnect(self):
|
|
self.inner.get().Disconnect()
|
|
|
|
def get_job_table(self):
|
|
return self.inner.get().GetAllJobInfo()
|
|
|
|
def get_node_table(self):
|
|
return self.inner.get().GetAllNodeInfo()
|
|
|
|
def get_profile_table(self):
|
|
return self.inner.get().GetAllProfileInfo()
|
|
|
|
def get_object_table(self):
|
|
return self.inner.get().GetAllObjectInfo()
|
|
|
|
def get_object_info(self, object_id):
|
|
object_info = self.inner.get().GetObjectInfo(CObjectID.FromBinary(object_id.binary()))
|
|
if object_info:
|
|
return c_string(object_info.get().data(), object_info.get().size())
|
|
return None
|
|
|
|
def get_actor_table(self):
|
|
return self.inner.get().GetAllActorInfo()
|
|
|
|
def get_actor_info(self, actor_id):
|
|
actor_info = self.inner.get().GetActorInfo(CActorID.FromBinary(actor_id.binary()))
|
|
if actor_info:
|
|
return c_string(actor_info.get().data(), actor_info.get().size())
|
|
return None
|