You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As indicated in #677/v1/chain/get_block is showing: "deadline 2023-01-31T22:14:07.564 exceeded by 914656us"
Outside of the issues being tracked on #677, get_block is currently not honoring http-max-response-time-ms appropriately. get_block runs for abi-serializer-max-time-ms and then checks http-max-response-time-ms after. This means if abi-serializer-max-time-ms is set to 2000 and http-max-response-time-ms is set to 30, then the get_block call can run for say 1750ms and then fail after the expensive work of the abi serializer has completed. In the above exception it appears that abi serializer ran for around 900ms and then failed after the abi serialization was complete.
First thought might be to use the minimum of http-max-response-time-ms and abi-serializer-max-time-ms for the limit on abi serialization of get_block. However, node operators, I believe would prefer for get_block to honor abi-serializer-max-time-ms and ignore http-max-response-time-ms.
Yes, we (me and Aaron) did indicate that : <<node operators, I believe would prefer for get_block to honor abi-serializer-max-time-ms and ignore http-max-response-time-ms.>>
However, before we start changing things around again I would like to better understand what are all the knobs used for and why they should be set depending the expected use of the node in question. I think this merits a more in-depth discussion than a quick fix. Once we decide how this should look, then we can decide on the appropriate code change.
As indicated in #677
/v1/chain/get_block
is showing:"deadline 2023-01-31T22:14:07.564 exceeded by 914656us"
Outside of the issues being tracked on #677,
get_block
is currently not honoringhttp-max-response-time-ms
appropriately.get_block
runs forabi-serializer-max-time-ms
and then checkshttp-max-response-time-ms
after. This means ifabi-serializer-max-time-ms
is set to 2000 andhttp-max-response-time-ms
is set to 30, then theget_block
call can run for say 1750ms and then fail after the expensive work of the abi serializer has completed. In the above exception it appears that abi serializer ran for around 900ms and then failed after the abi serialization was complete.First thought might be to use the minimum of
http-max-response-time-ms
andabi-serializer-max-time-ms
for the limit on abi serialization ofget_block
. However, node operators, I believe would prefer forget_block
to honorabi-serializer-max-time-ms
and ignorehttp-max-response-time-ms
.Introduced by #96
The text was updated successfully, but these errors were encountered: