The gRPC protocol is defined as sending over the bytes of arrays directly, but does not take into account endianness. This means the protocol will fail spectacularly (type 3 error, bad data with no error) if the client and server machines have different native endianness.
|
std::string ansys::grpc::client::GRPCClient::serialize_vector( |
|
vector_as_chunk=arg[tmp_idx:last_idx_chunk].tobytes(), |
Unless there is another reason, I recommend using gRPC arrays instead of bytes. gRPC can handle this for us.
The gRPC protocol is defined as sending over the bytes of arrays directly, but does not take into account endianness. This means the protocol will fail spectacularly (type 3 error, bad data with no error) if the client and server machines have different native endianness.
api-eigen-example/src/ansys/eigen/cpp/grpc/client/src/GRPCClient.cpp
Line 499 in 108085f
api-eigen-example/src/ansys/eigen/python/grpc/client.py
Line 280 in 108085f
Unless there is another reason, I recommend using gRPC arrays instead of bytes. gRPC can handle this for us.