gno icon indicating copy to clipboard operation
gno copied to clipboard

chore: stop recursive loop in TypeInfo error print

Open piux2 opened this issue 1 year ago • 1 comments

Fix the second issue in #1197

  • Before fix, if a Amino type was not imported as registered Amino package, we got stack overflow

runtime: goroutine stack exceeds 1000000000-byte limit
runtime: sp=0xc02050c458 stack=[0xc02050c000, 0xc04050c000]
fatal error: stack overflow

  • After fix, if a Amino type was not imported as registered Amino package, we could print the message to verify what has been imported for debugging purpose

Error: unable to unmarshal with amino, unmarshal to std.Tx failed after 17 bytes (error reading slice contents: unrecognized concrete type full name vm.m_call of map[abci.BlockParams:TypeInfo{Type:abci.BlockParams,Registered:true,PointerPreferred:false,TypeURL:"/abci.BlockParams",ReprType:,Fields:[]amino.FieldInfo{amino.FieldInfo{Type:(*reflect.rtype)(0x104cfc920), TypeInfo:(*amino.TypeInfo)(0x1400011c6e0), Name:"MaxTxBytes", Index:0, ........

Contributors' checklist...
  • [ ] Added new tests, or not needed, or not feasible
  • [ ] Provided an example (e.g. screenshot) to aid review or the PR is self-explanatory
  • [ ] Updated the official documentation or not needed
  • [ ] No breaking changes were made, or a BREAKING CHANGE: xxx message was included in the description
  • [x] Added references to related issues and PRs
  • [ ] Provided any useful hints for running manual tests
  • [ ] Added new benchmarks to generated graphs, if any. More info here.

piux2 avatar Oct 10 '23 22:10 piux2

Moving to draft (PR is old; the CI fails on build)

thehowl avatar Mar 04 '24 20:03 thehowl

Closing this, here is a better solution: https://github.com/gnolang/gno/pull/1315

piux2 avatar Apr 09 '24 00:04 piux2