-
Notifications
You must be signed in to change notification settings - Fork 116
Open
Labels
Peggy 2.0An issue blocking the Peggy 2.0 releaseAn issue blocking the Peggy 2.0 releasePeggy TeamPeggy team taskPeggy team task
Description
Description
BeginBlocker and EndBlocker are optional methods module developers can implement in their module. They will be triggered at the beginning and at the end of each block, respectively, when the BeginBlock and EndBlock ABCI messages are received from the underlying consensus engine. Making use of panics for error handling in the BeginBlock and EndBlock methods
may cause the chain to halt if an error does occur.
Code Location:
x/clp/abci.go, Line 130
130 panic ( err )
x/dispensation/abci.go, Lines 54-60
54 if err != nil {
55 panic ( fmt . Sprintf (" Unable to send %s coins to address %s", mintCoins . String () , ecoPoolAddress . String () ) )
56 }
57 err = k. AddMintAmount (ctx , mintCoins [0])
58 if err != nil {
59 panic ( err )
60 }
x/dispensation/abci.go, Lines 54-60
if err != nil {
55 panic ( fmt . Sprintf (" Unable to send %s coins to address %s", mintCoins . String () , ecoPoolAddress . String () ) )
56 }
57 err = k. AddMintAmount (ctx , mintCoins [0])
58 if err != nil {
59 panic ( err )
60 }
Recommendation
According to suggestion in the report, it is better to use error instead of panic. I don't agree on it. If the Sifchain runs into the situation that we shouldn't continue, panic and exit could be the right behavior. Otherwise the chain will be running at the wrong context. Stop it and fix the issue could be the right thing to do.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Peggy 2.0An issue blocking the Peggy 2.0 releaseAn issue blocking the Peggy 2.0 releasePeggy TeamPeggy team taskPeggy team task