How Does Ray Support Application Upgrade?

Currently, we use kuberay to deploy an application on K8s. The application is started using Ray Actor and runs in different Pods through Ray scheduling. The Actor code is Python + C++. The Python code is used to call C++ interfaces. as fuc (Int a, int b); If we upgrade the CCE image and perform rolling upgrade, some pod images have the latest version of the program, but the Python calls the C++ interface has changed fun (int a, float b), which will cause the remote execution to fail. Want to consult how to solve this problem?

You mean you have a C++ actor and a python caller to remote call it? Now that the C++ actor changed signature maybe you can give it a different name, and do backwards compatibility like:

in C++ actor:

int F(int i, int j) { return F_new_float(i, float(j); } }