From 21ecaa65fe3b23ca4a625ab1d3ca0a67728873a9 Mon Sep 17 00:00:00 2001 From: Morty Date: Fri, 25 Oct 2024 19:59:07 +0800 Subject: [PATCH 1/5] fix(rollup): sender use pending block base fee --- rollup/internal/controller/sender/sender.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rollup/internal/controller/sender/sender.go b/rollup/internal/controller/sender/sender.go index 30ebd8d5d7..da6e804773 100644 --- a/rollup/internal/controller/sender/sender.go +++ b/rollup/internal/controller/sender/sender.go @@ -626,7 +626,7 @@ func (s *Sender) getSenderMeta() *orm.SenderMeta { } func (s *Sender) getBlockNumberAndBaseFeeAndBlobFee(ctx context.Context) (uint64, uint64, uint64, error) { - header, err := s.client.HeaderByNumber(ctx, nil) + header, err := s.client.HeaderByNumber(ctx, big.NewInt(rpc.PendingBlockNumber.Int64())) if err != nil { return 0, 0, 0, fmt.Errorf("failed to get header by number, err: %w", err) } From f1425e88e260c8730aec7da8bd58f3d36f221e95 Mon Sep 17 00:00:00 2001 From: Morty Date: Fri, 25 Oct 2024 23:54:25 +0800 Subject: [PATCH 2/5] fix(rollup): get latest block number --- rollup/internal/controller/sender/sender.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/rollup/internal/controller/sender/sender.go b/rollup/internal/controller/sender/sender.go index da6e804773..013c9575b4 100644 --- a/rollup/internal/controller/sender/sender.go +++ b/rollup/internal/controller/sender/sender.go @@ -641,7 +641,8 @@ func (s *Sender) getBlockNumberAndBaseFeeAndBlobFee(ctx context.Context) (uint64 parentExcessBlobGas := eip4844.CalcExcessBlobGas(*header.ExcessBlobGas, *header.BlobGasUsed) blobBaseFee = eip4844.CalcBlobFee(parentExcessBlobGas).Uint64() } - return header.Number.Uint64(), baseFee, blobBaseFee, nil + // header.Number.Uint64() returns the pendingBlockNumber, so we minus 1 to get the latestBlockNumber. + return header.Number.Uint64()-1, baseFee, blobBaseFee, nil } func makeSidecar(blob *kzg4844.Blob) (*gethTypes.BlobTxSidecar, error) { From a0b45c3dc0dff49aba6eb2abf62d76ac90c02057 Mon Sep 17 00:00:00 2001 From: Morty Date: Fri, 25 Oct 2024 23:56:39 +0800 Subject: [PATCH 3/5] fix: lint --- rollup/internal/controller/sender/sender.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rollup/internal/controller/sender/sender.go b/rollup/internal/controller/sender/sender.go index 013c9575b4..af08136ec3 100644 --- a/rollup/internal/controller/sender/sender.go +++ b/rollup/internal/controller/sender/sender.go @@ -642,7 +642,7 @@ func (s *Sender) getBlockNumberAndBaseFeeAndBlobFee(ctx context.Context) (uint64 blobBaseFee = eip4844.CalcBlobFee(parentExcessBlobGas).Uint64() } // header.Number.Uint64() returns the pendingBlockNumber, so we minus 1 to get the latestBlockNumber. - return header.Number.Uint64()-1, baseFee, blobBaseFee, nil + return header.Number.Uint64() - 1, baseFee, blobBaseFee, nil } func makeSidecar(blob *kzg4844.Blob) (*gethTypes.BlobTxSidecar, error) { From e2405f42d654eafabd59cd6a37e8f69cd05186c9 Mon Sep 17 00:00:00 2001 From: yiweichi Date: Fri, 25 Oct 2024 16:19:23 +0000 Subject: [PATCH 4/5] =?UTF-8?q?chore:=20auto=20version=20bump=E2=80=89[bot?= =?UTF-8?q?]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- common/version/version.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/version/version.go b/common/version/version.go index 696291edd0..9e5f7a7711 100644 --- a/common/version/version.go +++ b/common/version/version.go @@ -5,7 +5,7 @@ import ( "runtime/debug" ) -var tag = "v4.4.70" +var tag = "v4.4.71" var commit = func() string { if info, ok := debug.ReadBuildInfo(); ok { From 756b572477321619b7a2c40455e4019b19dce51d Mon Sep 17 00:00:00 2001 From: Morty Date: Tue, 29 Oct 2024 00:15:46 +0800 Subject: [PATCH 5/5] update blob fee calculation --- rollup/internal/controller/sender/sender.go | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/rollup/internal/controller/sender/sender.go b/rollup/internal/controller/sender/sender.go index af08136ec3..525ffc3992 100644 --- a/rollup/internal/controller/sender/sender.go +++ b/rollup/internal/controller/sender/sender.go @@ -637,9 +637,8 @@ func (s *Sender) getBlockNumberAndBaseFeeAndBlobFee(ctx context.Context) (uint64 } var blobBaseFee uint64 - if header.ExcessBlobGas != nil && header.BlobGasUsed != nil { - parentExcessBlobGas := eip4844.CalcExcessBlobGas(*header.ExcessBlobGas, *header.BlobGasUsed) - blobBaseFee = eip4844.CalcBlobFee(parentExcessBlobGas).Uint64() + if excess := header.ExcessBlobGas; excess != nil { + blobBaseFee = eip4844.CalcBlobFee(*excess).Uint64() } // header.Number.Uint64() returns the pendingBlockNumber, so we minus 1 to get the latestBlockNumber. return header.Number.Uint64() - 1, baseFee, blobBaseFee, nil