diff --git a/src/proto_alpha/lib_client/michelson_v1_error_reporter.ml b/src/proto_alpha/lib_client/michelson_v1_error_reporter.ml index ebe31b24c..db7714bdb 100644 --- a/src/proto_alpha/lib_client/michelson_v1_error_reporter.ml +++ b/src/proto_alpha/lib_client/michelson_v1_error_reporter.ml @@ -181,6 +181,11 @@ let report_errors ~details ~show_source ?parsed ppf errs = Format.fprintf ppf "Ill typed contract."; if rest <> [] then Format.fprintf ppf "@," ; print_trace (parsed_locations parsed) rest + | Alpha_environment.Ecoproto_error Apply.Gas_quota_exceeded_init_deserialize :: rest -> + Format.fprintf ppf + "@[Not enough gas to deserialize the operation.@,\ + Injecting such a transaction could have you banned from mempools.@]" ; + print_trace locations rest | Alpha_environment.Ecoproto_error (Missing_field prim) :: rest -> Format.fprintf ppf "@[Missing contract field: %s@]" (Michelson_v1_primitives.string_of_prim prim) ; diff --git a/src/proto_alpha/lib_protocol/src/apply.ml b/src/proto_alpha/lib_protocol/src/apply.ml index 4a7cd8b6a..4db2fda5f 100644 --- a/src/proto_alpha/lib_protocol/src/apply.ml +++ b/src/proto_alpha/lib_protocol/src/apply.ml @@ -323,9 +323,11 @@ let () = register_error_kind `Permanent ~id:"gas_exhausted.init_deserialize" - ~title:"Not enough gas for initial deserialization of parameters" - ~description:"Gas quota was not enough to deserialize the transaction \ - parameters in precheck" + ~title:"Not enough gas for initial deserialization of script expresions" + ~description:"Gas limit was not high enough to deserialize the \ + transaction parameters or origination script code or \ + initial storage, making the operation impossible to \ + parse within the provided gas bounds." Data_encoding.empty (function Gas_quota_exceeded_init_deserialize -> Some () | _ -> None) (fun () -> Gas_quota_exceeded_init_deserialize)