Skip to content

Commit 68fc576

Browse files
author
tac0turtle
committed
fix
1 parent f691ab9 commit 68fc576

1 file changed

Lines changed: 39 additions & 0 deletions

File tree

block/submitter.go

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -301,6 +301,12 @@ func handleSubmissionResult[T any](
301301

302302
case coreda.StatusContextCanceled:
303303
m.logger.Info().Int("attempt", retryStrategy.attempt).Msg("DA layer submission canceled due to context cancellation")
304+
305+
// Record canceled submission in DA visualization server
306+
if daVisualizationServer := server.GetDAVisualizationServer(); daVisualizationServer != nil {
307+
daVisualizationServer.RecordSubmission(&res, retryStrategy.gasPrice, uint64(len(remaining)))
308+
}
309+
304310
return submissionOutcome[T]{
305311
RemainingItems: remaining,
306312
RemainingMarshal: marshaled,
@@ -365,6 +371,12 @@ func handleMempoolFailure[T any](
365371
m.logger.Error().Str("error", res.Message).Int("attempt", attempt).Msg("DA layer submission failed")
366372

367373
m.recordDAMetrics("submission", DAModeFail)
374+
375+
// Record failed submission in DA visualization server
376+
if daVisualizationServer := server.GetDAVisualizationServer(); daVisualizationServer != nil {
377+
daVisualizationServer.RecordSubmission(res, retryStrategy.gasPrice, uint64(len(remaining)))
378+
}
379+
368380
retryStrategy.BackoffOnMempool(int(m.config.DA.MempoolTTL), m.config.DA.BlockTime.Duration, m.gasMultiplier)
369381

370382
m.logger.Info().Dur("backoff", retryStrategy.backoff).Float64("gasPrice", retryStrategy.gasPrice).Msg("retrying DA layer submission with")
@@ -391,6 +403,17 @@ func handleTooBigError[T any](
391403

392404
m.recordDAMetrics("submission", DAModeFail)
393405

406+
// Record failed submission in DA visualization server (create a result for TooBig error)
407+
if daVisualizationServer := server.GetDAVisualizationServer(); daVisualizationServer != nil {
408+
tooBigResult := &coreda.ResultSubmit{
409+
BaseResult: coreda.BaseResult{
410+
Code: coreda.StatusTooBig,
411+
Message: "blob too big",
412+
},
413+
}
414+
daVisualizationServer.RecordSubmission(tooBigResult, retryStrategy.gasPrice, uint64(len(remaining)))
415+
}
416+
394417
if len(remaining) > 1 {
395418
totalSubmitted, err := submitWithRecursiveSplitting(m, ctx, remaining, marshaled, retryStrategy.gasPrice, postSubmit, itemType, namespace)
396419
if err != nil {
@@ -443,6 +466,12 @@ func handleGenericFailure[T any](
443466
m.logger.Error().Str("error", res.Message).Int("attempt", attempt).Msg("DA layer submission failed")
444467

445468
m.recordDAMetrics("submission", DAModeFail)
469+
470+
// Record failed submission in DA visualization server
471+
if daVisualizationServer := server.GetDAVisualizationServer(); daVisualizationServer != nil {
472+
daVisualizationServer.RecordSubmission(res, retryStrategy.gasPrice, uint64(len(remaining)))
473+
}
474+
446475
retryStrategy.BackoffOnFailure()
447476

448477
return submissionOutcome[T]{
@@ -643,12 +672,22 @@ func processBatch[T any](
643672
postSubmit(submitted, &batchRes, gasPrice)
644673
m.logger.Info().Int("batchSize", len(batch.Items)).Uint64("submittedCount", batchRes.SubmittedCount).Msg("successfully submitted batch to DA layer")
645674

675+
// Record successful submission in DA visualization server
676+
if daVisualizationServer := server.GetDAVisualizationServer(); daVisualizationServer != nil {
677+
daVisualizationServer.RecordSubmission(&batchRes, gasPrice, batchRes.SubmittedCount)
678+
}
679+
646680
return batchResult[T]{
647681
action: batchActionSubmitted,
648682
submittedCount: int(batchRes.SubmittedCount),
649683
}
650684
}
651685

686+
// Record failed submission in DA visualization server for all error cases
687+
if daVisualizationServer := server.GetDAVisualizationServer(); daVisualizationServer != nil {
688+
daVisualizationServer.RecordSubmission(&batchRes, gasPrice, uint64(len(batch.Items)))
689+
}
690+
652691
if batchRes.Code == coreda.StatusTooBig && len(batch.Items) > 1 {
653692
// Batch is too big - let the caller handle splitting
654693
m.logger.Info().Int("batchSize", len(batch.Items)).Msg("batch too big, returning to caller for splitting")

0 commit comments

Comments
 (0)