Как установить ограничение прохождения сообщения Cap'n Proto RPC? - PullRequest
0 голосов
/ 01 марта 2019

Мне нужно отправить RPC с Rust Cap'n Proto API, который превышает установленный по умолчанию лимит обхода сообщений.Когда я пытаюсь отправить сообщение, я получаю следующую ошибку:

remote exception: <class \'capnp.lib.capnp.KjException
\'>:capnp/arena.c++:130: failed: Exceeded message traversal limit.
See capnp::ReaderOptions.

Если бы я читал сообщение, используя capnp::serialize::read_message, я мог бы предоставить ReaderOptions структура, указывающая новый лимит обхода.

Однако я делаю и отправляю запрос, как в примере калькулятора , вместо того, чтобы читать сообщение напрямую.Как я могу установить лимит обхода для моего сообщения запроса?

1 Ответ

0 голосов
/ 02 марта 2019

Вы можете установить его при построении VatNetwork:

pub fn new<U>(
    input_stream: T,
    output_stream: U,
    side: Side,
    receive_options: ReaderOptions,
) -> VatNetwork<T>
where
    U: Write + 'static,

https://github.com/capnproto/capnproto-rust/issues/124#issuecomment-468877758

...