Users can set very deep failure causes, and once it gets past 30 or so it breaks some protobuf parsers (any based on upb like Python and maybe Ruby/C/C++). We should limit the depth to something like 10/15. Can discuss implementation design on how this limitation occurs (not sure we should reject the failure but up to implementer). I can also provide more exact numbers on how deep before Python fails if that information is needed.
Describe the solution you'd like
Users can set very deep failure causes, and once it gets past 30 or so it breaks some protobuf parsers (any based on
upb
like Python and maybe Ruby/C/C++). We should limit the depth to something like 10/15. Can discuss implementation design on how this limitation occurs (not sure we should reject the failure but up to implementer). I can also provide more exact numbers on how deep before Python fails if that information is needed.