frostfs-adm: Add info to error messages #1386
No reviewers
Labels
No labels
P0
P1
P2
P3
badger
frostfs-adm
frostfs-cli
frostfs-ir
frostfs-lens
frostfs-node
good first issue
triage
Infrastructure
blocked
bug
config
discussion
documentation
duplicate
enhancement
go
help wanted
internal
invalid
kludge
observability
perfomance
question
refactoring
wontfix
No milestone
No project
No assignees
5 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: TrueCloudLab/frostfs-node#1386
Loading…
Reference in a new issue
No description provided.
Delete branch "potyarkin/frostfs-node:feature/better-errors"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
These error messages bubble up to human users - adding more context will help to find the cause of the issue faster.
morph init
could error out due to insufficient funds in committee wallet.Previously this would be shown as:
Error: Insufficient funds (-511) - insufficient funds
Error: script failed (FAULT state) due to an error: at instruction 94 (ASSERT): ASSERT failed
With suggested changes:
Error: committee transaction: Insufficient funds (-511) - insufficient funds
Error: transfer failed: from=committee(NZFj94ednrga3uHBrXCJL77GdAQVA3wdMS) amount=5000000000000: script failed (FAULT state) due to an error: at instruction 94 (ASSERT): ASSERT failed
New error messages are not perfect but they are better that what we have now. Possible improvements:
insufficient funds
error. I have not found a way to surface that. Fees are a visible deep inside neo-go but not at frostfs-adm level.Uint160
token ids but I don't know if we have an easy way to translate these ids into human-readable strings.Uint160
hash and for the sender we have full 25-byte base58 encoded address. Using different address formats in a single message would be misleading.@ -30,3 +32,3 @@
if err := c.SendCommitteeTx(w.Bytes(), false); err != nil {
return err
return fmt.Errorf("committee transaction: %w", err)
send committee transaction
- to distinguish between errors@ -35,1 +37,3 @@
return c.AwaitTx()
err := c.AwaitTx()
if err != nil {
err = fmt.Errorf("committee transaction: %w", err)
await committee transaction
- to distinguish between errors26b65a0141
tod79537edbb