From cf79a9e88b97c216e5be7a498804eef9bdf84adc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=96mer=20Faruk=20Irmak?= Date: Thu, 25 Jul 2024 17:35:32 +0300 Subject: [PATCH] fix: treat JSON errors as CCC error (#922) --- rollup/pipeline/pipeline.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/rollup/pipeline/pipeline.go b/rollup/pipeline/pipeline.go index e4467862def83..3ce84293bd31c 100644 --- a/rollup/pipeline/pipeline.go +++ b/rollup/pipeline/pipeline.go @@ -362,7 +362,7 @@ func (p *Pipeline) encodeStage(traces <-chan *BlockCandidate) <-chan *BlockCandi trace.RustTrace = circuitcapacitychecker.MakeRustTrace(trace.LastTrace, buffer) if trace.RustTrace == nil { log.Error("making rust trace", "txHash", trace.LastTrace.Transactions[0].TxHash) - return + // ignore the error here, CCC stage will catch it and treat it as a CCC error } } encodeTimer.UpdateSince(encodeStart) @@ -431,7 +431,11 @@ func (p *Pipeline) cccStage(candidates <-chan *BlockCandidate, deadline time.Tim var accRows *types.RowConsumption var err error if candidate != nil && p.ccc != nil { - accRows, err = p.ccc.ApplyTransactionRustTrace(candidate.RustTrace) + if candidate.RustTrace != nil { + accRows, err = p.ccc.ApplyTransactionRustTrace(candidate.RustTrace) + } else { + err = errors.New("no rust trace") + } lastTxn := candidate.Txs[candidate.Txs.Len()-1] cccTimer.UpdateSince(cccStart) if err != nil {