cmd/workload: filtergen fails on history prune error

This commit is contained in:
Zsolt Felfoldi 2025-03-20 08:23:47 +01:00
parent 7960b3ffce
commit 65051bd249
3 changed files with 12 additions and 12 deletions

View file

@ -214,8 +214,9 @@ func (fq *filterQuery) run(client *client, historyPruneBlock *uint64) {
}) })
fq.results = logs fq.results = logs
fq.Err = validateHistoryPruneErr(err, uint64(fq.FromBlock), historyPruneBlock) fq.Err = validateHistoryPruneErr(err, uint64(fq.FromBlock), historyPruneBlock)
if fq.Err != nil && fq.Err != errPrunedHistory { }
fmt.Printf("Filter query failed: fromBlock: %d toBlock: %d addresses: %v topics: %v error: %v\n",
fq.FromBlock, fq.ToBlock, fq.Address, fq.Topics, err) func (fq *filterQuery) printError() {
} fmt.Printf("Filter query failed: fromBlock: %d toBlock: %d addresses: %v topics: %v error: %v\n",
fq.FromBlock, fq.ToBlock, fq.Address, fq.Topics, fq.Err)
} }

View file

@ -71,10 +71,8 @@ func filterGenCmd(ctx *cli.Context) error {
f.updateFinalizedBlock() f.updateFinalizedBlock()
query := f.newQuery() query := f.newQuery()
query.run(f.client, nil) query.run(f.client, nil)
if query.Err == errPrunedHistory {
continue
}
if query.Err != nil { if query.Err != nil {
query.printError()
f.errors = append(f.errors, query) f.errors = append(f.errors, query)
continue continue
} }
@ -85,9 +83,6 @@ func filterGenCmd(ctx *cli.Context) error {
break break
} }
extQuery.run(f.client, nil) extQuery.run(f.client, nil)
if extQuery.Err == errPrunedHistory {
break
}
if extQuery.Err == nil && len(extQuery.results) < len(query.results) { if extQuery.Err == nil && len(extQuery.results) < len(query.results) {
extQuery.Err = fmt.Errorf("invalid result length; old range %d %d; old length %d; new range %d %d; new length %d; address %v; Topics %v", extQuery.Err = fmt.Errorf("invalid result length; old range %d %d; old length %d; new range %d %d; new length %d; address %v; Topics %v",
query.FromBlock, query.ToBlock, len(query.results), query.FromBlock, query.ToBlock, len(query.results),
@ -96,6 +91,7 @@ func filterGenCmd(ctx *cli.Context) error {
) )
} }
if extQuery.Err != nil { if extQuery.Err != nil {
extQuery.printError()
f.errors = append(f.errors, extQuery) f.errors = append(f.errors, extQuery)
break break
} }

View file

@ -79,6 +79,7 @@ func filterPerfCmd(ctx *cli.Context) error {
slices.Sort(qt.runtime) slices.Sort(qt.runtime)
qt.medianTime = qt.runtime[len(qt.runtime)/2] qt.medianTime = qt.runtime[len(qt.runtime)/2]
if qt.query.Err != nil { if qt.query.Err != nil {
qt.query.printError()
failed++ failed++
continue continue
} }
@ -119,8 +120,10 @@ func filterPerfCmd(ctx *cli.Context) error {
sort.Slice(queries, func(i, j int) bool { sort.Slice(queries, func(i, j int) bool {
return queries[i].medianTime > queries[j].medianTime return queries[i].medianTime > queries[j].medianTime
}) })
for i := 0; i < 10; i++ { for i, q := range queries {
q := queries[i] if i >= 10 {
break
}
fmt.Printf("Most expensive query #%-2d median runtime: %13v max runtime: %13v result count: %4d fromBlock: %9d toBlock: %9d addresses: %v topics: %v\n", fmt.Printf("Most expensive query #%-2d median runtime: %13v max runtime: %13v result count: %4d fromBlock: %9d toBlock: %9d addresses: %v topics: %v\n",
i+1, q.medianTime, q.runtime[len(q.runtime)-1], len(q.query.results), q.query.FromBlock, q.query.ToBlock, q.query.Address, q.query.Topics) i+1, q.medianTime, q.runtime[len(q.runtime)-1], len(q.query.results), q.query.FromBlock, q.query.ToBlock, q.query.Address, q.query.Topics)
} }