Skip to content

Commit

Permalink
fix ci
Browse files Browse the repository at this point in the history
  • Loading branch information
jonastheis committed Feb 6, 2025
1 parent e713424 commit f277483
Show file tree
Hide file tree
Showing 7 changed files with 240 additions and 43 deletions.
5 changes: 4 additions & 1 deletion build/.golangci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ linters-settings:
#local-prefixes: github.com/org/project
gocyclo:
# minimal code complexity to report, 30 by default (but we recommend 10-20)
min-complexity: 30
min-complexity: 40
maligned:
# print struct with more effective memory layout or not, false by default
suggest-new: true
Expand Down Expand Up @@ -254,6 +254,9 @@ issues:
- linters:
- wsl
text: "expressions should not be cuddled with declarations or returns"
- linters:
- govet
text: 'shadow: declaration of "(err|ctx)" shadows declaration at'

# Independently from option `exclude` we use default exclude patterns,
# it can be disabled by this option. To list all
Expand Down
6 changes: 3 additions & 3 deletions database/migrate/migrate_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -59,20 +59,20 @@ func testResetDB(t *testing.T) {
cur, err := Current(pgDB)
assert.NoError(t, err)
// total number of tables.
assert.Equal(t, int64(24), cur)
assert.Equal(t, int64(25), cur)
}

func testMigrate(t *testing.T) {
assert.NoError(t, Migrate(pgDB))
cur, err := Current(pgDB)
assert.NoError(t, err)
assert.Equal(t, int64(24), cur)
assert.Equal(t, int64(25), cur)
}

func testRollback(t *testing.T) {
version, err := Current(pgDB)
assert.NoError(t, err)
assert.Equal(t, int64(24), version)
assert.Equal(t, int64(25), version)

assert.NoError(t, Rollback(pgDB, nil))

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
-- +goose StatementBegin

ALTER TABLE chunk
ADD COLUMN initial_l1_message_queue_hash VARCHAR DEFAULT '';
ADD COLUMN initial_l1_message_queue_hash VARCHAR DEFAULT '',
ADD COLUMN last_l1_message_queue_hash VARCHAR DEFAULT '';

ALTER TABLE batch
ADD COLUMN initial_l1_message_queue_hash VARCHAR DEFAULT '';
ADD COLUMN initial_l1_message_queue_hash VARCHAR DEFAULT '',
ADD COLUMN last_l1_message_queue_hash VARCHAR DEFAULT '';


Expand All @@ -16,11 +16,11 @@ ADD COLUMN last_l1_message_queue_hash VARCHAR DEFAULT '';
-- +goose StatementBegin

ALTER TABLE IF EXISTS chunk
DROP COLUMN IF EXISTS initial_l1_message_queue_hash;
DROP COLUMN IF EXISTS initial_l1_message_queue_hash,
DROP COLUMN IF EXISTS last_l1_message_queue_hash;

ALTER TABLE IF EXISTS batch
DROP COLUMN IF EXISTS initial_l1_message_queue_hash;
DROP COLUMN IF EXISTS initial_l1_message_queue_hash,
DROP COLUMN IF EXISTS last_l1_message_queue_hash;

-- +goose StatementEnd
192 changes: 192 additions & 0 deletions go.work.sum

Large diffs are not rendered by default.

7 changes: 1 addition & 6 deletions rollup/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -249,14 +249,9 @@ github.com/sagikazarmark/locafero v0.4.0 h1:HApY1R9zGo4DBgr7dqsTH/JJxLTTsOt7u6ke
github.com/sagikazarmark/locafero v0.4.0/go.mod h1:Pe1W6UlPYUk/+wc/6KFhbORCfqzgYEpgQ3O5fPuL3H4=
github.com/sagikazarmark/slog-shim v0.1.0 h1:diDBnUNK9N/354PgrxMywXnAwEr1QZcOr6gto+ugjYE=
github.com/sagikazarmark/slog-shim v0.1.0/go.mod h1:SrcSrq8aKtyuqEI1uvTDTK1arOWRIczQRv+GVI1AkeQ=
github.com/scroll-tech/da-codec v0.1.3-0.20250128015324-64133efc3843 h1:Qd6bh5Cn5hqf/yyz4ucq4Z2qIStH4KUYsPNK/zfaAb8=
github.com/scroll-tech/da-codec v0.1.3-0.20250128015324-64133efc3843/go.mod h1:+ho/ItbapMf2xM9YUv/SfGFg3AJx9lBD7ksR7T0ZVmM=
github.com/scroll-tech/da-codec v0.1.3-0.20250205011841-edaf5d2f9f24 h1:E+DYPJPoIxviTfyjttoHoZ0ylv2n9fNHHwTK6n4vCss=
github.com/scroll-tech/da-codec v0.1.3-0.20250205011841-edaf5d2f9f24/go.mod h1:irqXJdRI5fsGkilJCpNTnJb8oV8KR51j68QXIWoth6U=
github.com/scroll-tech/da-codec v0.1.3-0.20250205043214-894a93bb6b53 h1:07eHUuUhQ2rOP6ij5+KV1MgQurkwyweomkxp5nAG6o8=
github.com/scroll-tech/da-codec v0.1.3-0.20250205043214-894a93bb6b53/go.mod h1:irqXJdRI5fsGkilJCpNTnJb8oV8KR51j68QXIWoth6U=
github.com/scroll-tech/go-ethereum v1.10.14-0.20250103082839-ea3ec93d8c1e h1:g8jtcGiHbjWYh/V7O245IDho3WfQT4CwEpBV+MhYDrg=
github.com/scroll-tech/go-ethereum v1.10.14-0.20250103082839-ea3ec93d8c1e/go.mod h1:Ik3OBLl7cJxPC+CFyCBYNXBPek4wpdzkWehn/y5qLM8=
github.com/scroll-tech/go-ethereum v1.10.14-0.20250129031936-44c72cd3fa47 h1:JbYYsGZMU1yAYsF/Ds6STMlItYy0SXj86nqdXC7nHyk=
github.com/scroll-tech/go-ethereum v1.10.14-0.20250129031936-44c72cd3fa47/go.mod h1:8WbNuuUjie/LTdFXGGT7Z711MRW8Vv2zWLrcibg7hDc=
github.com/scroll-tech/zktrie v0.8.4 h1:UagmnZ4Z3ITCk+aUq9NQZJNAwnWl4gSxsLb2Nl7IgRE=
github.com/scroll-tech/zktrie v0.8.4/go.mod h1:XvNo7vAk8yxNyTjBDj5WIiFzYW4bx/gJ78+NK6Zn6Uk=
Expand Down
9 changes: 5 additions & 4 deletions rollup/internal/controller/relayer/l2_relayer.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,10 @@ import (
"strings"
"time"

"scroll-tech/common/types"
"scroll-tech/common/types/message"
"scroll-tech/common/utils"

"github.com/go-resty/resty/v2"
"github.com/prometheus/client_golang/prometheus"
"github.com/scroll-tech/da-codec/encoding"
Expand All @@ -23,10 +27,6 @@ import (
"github.com/scroll-tech/go-ethereum/params"
"gorm.io/gorm"

"scroll-tech/common/types"
"scroll-tech/common/types/message"
"scroll-tech/common/utils"

bridgeAbi "scroll-tech/rollup/abi"
"scroll-tech/rollup/internal/config"
"scroll-tech/rollup/internal/controller/sender"
Expand Down Expand Up @@ -378,6 +378,7 @@ func (r *Layer2Relayer) ProcessGasPriceOracle() {
// ProcessPendingBatches processes the pending batches by sending commitBatch transactions to layer 1.
func (r *Layer2Relayer) ProcessPendingBatches() {
// get pending batches from database in ascending order by their index.
// TODO: sanity check config?
dbBatches, err := r.batchOrm.GetFailedAndPendingBatches(r.ctx, max(5, r.cfg.SenderConfig.BatchSubmission.MaxBatches))
if err != nil {
log.Error("Failed to fetch pending L2 batches", "err", err)
Expand Down
56 changes: 31 additions & 25 deletions rollup/internal/controller/sender/sender_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ var (
cfg *config.Config
testApps *testcontainers.TestcontainerApps
txTypes = []string{"LegacyTx", "DynamicFeeTx", "DynamicFeeTx"}
txBlob = []*kzg4844.Blob{nil, nil, randBlob()}
txBlob = []*kzg4844.Blob{nil, nil, randBlobs(2)[0]}
txUint8Types = []uint8{0, 2, 3}
db *gorm.DB
testContractsAddress common.Address
Expand Down Expand Up @@ -185,7 +185,7 @@ func testSendAndRetrieveTransaction(t *testing.T) {
s, err := NewSender(context.Background(), &cfgCopy, signerConfig, "test", "test", types.SenderTypeUnknown, db, nil)
assert.NoError(t, err)

hash, err := s.SendTransaction("0", &common.Address{}, nil, txBlob[i], 0)
hash, err := s.SendTransaction("0", &common.Address{}, nil, []*kzg4844.Blob{txBlob[i]}, 0)
assert.NoError(t, err)
txs, err := s.pendingTransactionOrm.GetPendingOrReplacedTransactionsBySenderType(context.Background(), s.senderType, 1)
assert.NoError(t, err)
Expand Down Expand Up @@ -225,7 +225,7 @@ func testFallbackGasLimit(t *testing.T) {
assert.NoError(t, err)

// FallbackGasLimit = 0
txHash0, err := s.SendTransaction("0", &common.Address{}, nil, txBlob[i], 0)
txHash0, err := s.SendTransaction("0", &common.Address{}, nil, []*kzg4844.Blob{txBlob[i]}, 0)
assert.NoError(t, err)
tx0, _, err := client.TransactionByHash(context.Background(), txHash0)
assert.NoError(t, err)
Expand All @@ -245,7 +245,7 @@ func testFallbackGasLimit(t *testing.T) {
},
)

txHash1, err := s.SendTransaction("1", &common.Address{}, nil, txBlob[i], 100000)
txHash1, err := s.SendTransaction("1", &common.Address{}, nil, []*kzg4844.Blob{txBlob[i]}, 100000)
assert.NoError(t, err)
tx1, _, err := client.TransactionByHash(context.Background(), txHash1)
assert.NoError(t, err)
Expand Down Expand Up @@ -329,7 +329,7 @@ func testAccessListTransactionGasLimit(t *testing.T) {

var sidecar *gethTypes.BlobTxSidecar
if txBlob[i] != nil {
sidecar, err = makeSidecar(txBlob[i])
sidecar, err = makeSidecar([]*kzg4844.Blob{txBlob[i]})
assert.NoError(t, err)
}

Expand Down Expand Up @@ -370,7 +370,7 @@ func testResubmitNonZeroGasPriceTransaction(t *testing.T) {
}
var sidecar *gethTypes.BlobTxSidecar
if txBlob[i] != nil {
sidecar, err = makeSidecar(txBlob[i])
sidecar, err = makeSidecar([]*kzg4844.Blob{txBlob[i]})
assert.NoError(t, err)
}
tx, err := s.createTx(feeData, &common.Address{}, nil, sidecar, s.transactionSigner.GetNonce())
Expand Down Expand Up @@ -505,7 +505,7 @@ func testResubmitBlobTransactionWithRisingBaseFeeAndBlobBaseFee(t *testing.T) {
})
defer patchGuard.Reset()

sidecar, err := makeSidecar(randBlob())
sidecar, err := makeSidecar(randBlobs(1))
assert.NoError(t, err)
tx := gethTypes.NewTx(&gethTypes.BlobTx{
ChainID: uint256.MustFromBig(s.chainID),
Expand Down Expand Up @@ -579,10 +579,10 @@ func testResubmitNonceGappedTransaction(t *testing.T) {
return nil, errors.New("simulated transaction receipt error")
})

_, err = s.SendTransaction("test-1", &common.Address{}, nil, txBlob[i], 0)
_, err = s.SendTransaction("test-1", &common.Address{}, nil, []*kzg4844.Blob{txBlob[i]}, 0)
assert.NoError(t, err)

_, err = s.SendTransaction("test-2", &common.Address{}, nil, txBlob[i], 0)
_, err = s.SendTransaction("test-2", &common.Address{}, nil, []*kzg4844.Blob{txBlob[i]}, 0)
assert.NoError(t, err)

s.checkPendingTransaction()
Expand Down Expand Up @@ -623,7 +623,7 @@ func testCheckPendingTransactionTxConfirmed(t *testing.T) {
return nil
})

_, err = s.SendTransaction("test", &common.Address{}, nil, randBlob(), 0)
_, err = s.SendTransaction("test", &common.Address{}, nil, randBlobs(1), 0)
assert.NoError(t, err)

txs, err := s.pendingTransactionOrm.GetPendingOrReplacedTransactionsBySenderType(context.Background(), s.senderType, 1)
Expand Down Expand Up @@ -665,7 +665,7 @@ func testCheckPendingTransactionResubmitTxConfirmed(t *testing.T) {
return nil
})

originTxHash, err := s.SendTransaction("test", &common.Address{}, nil, randBlob(), 0)
originTxHash, err := s.SendTransaction("test", &common.Address{}, nil, randBlobs(1), 0)
assert.NoError(t, err)

txs, err := s.pendingTransactionOrm.GetPendingOrReplacedTransactionsBySenderType(context.Background(), s.senderType, 1)
Expand Down Expand Up @@ -725,7 +725,7 @@ func testCheckPendingTransactionReplacedTxConfirmed(t *testing.T) {
return nil
})

txHash, err := s.SendTransaction("test", &common.Address{}, nil, randBlob(), 0)
txHash, err := s.SendTransaction("test", &common.Address{}, nil, randBlobs(1), 0)
assert.NoError(t, err)

txs, err := s.pendingTransactionOrm.GetPendingOrReplacedTransactionsBySenderType(context.Background(), s.senderType, 1)
Expand Down Expand Up @@ -795,7 +795,7 @@ func testCheckPendingTransactionTxMultipleTimesWithOnlyOneTxPending(t *testing.T
return nil
})

_, err = s.SendTransaction("test", &common.Address{}, nil, randBlob(), 0)
_, err = s.SendTransaction("test", &common.Address{}, nil, randBlobs(1), 0)
assert.NoError(t, err)

txs, err := s.pendingTransactionOrm.GetPendingOrReplacedTransactionsBySenderType(context.Background(), s.senderType, 1)
Expand Down Expand Up @@ -832,8 +832,8 @@ func testBlobTransactionWithBlobhashOpContractCall(t *testing.T) {
assert.NoError(t, err)
assert.NoError(t, migrate.ResetDB(sqlDB))

blob := randBlob()
sideCar, err := makeSidecar(blob)
blobs := randBlobs(1)
sideCar, err := makeSidecar(blobs)
assert.NoError(t, err)
versionedHash := sideCar.BlobHashes()[0]
blsModulo, ok := new(big.Int).SetString("52435875175126190479447740508185965837690552500527637822603658699938581184513", 10)
Expand All @@ -845,7 +845,7 @@ func testBlobTransactionWithBlobhashOpContractCall(t *testing.T) {
var point kzg4844.Point
copy(point[start:], pointBytes)
commitment := sideCar.Commitments[0]
proof, claim, err := kzg4844.ComputeProof(blob, point)
proof, claim, err := kzg4844.ComputeProof(blobs[0], point)
assert.NoError(t, err)

var claimArray [32]byte
Expand All @@ -869,7 +869,7 @@ func testBlobTransactionWithBlobhashOpContractCall(t *testing.T) {
assert.NoError(t, err)
defer s.Stop()

_, err = s.SendTransaction("0", &testContractsAddress, data, blob, 0)
_, err = s.SendTransaction("0", &testContractsAddress, data, blobs, 0)
assert.NoError(t, err)

var txHash common.Hash
Expand All @@ -889,13 +889,19 @@ func testBlobTransactionWithBlobhashOpContractCall(t *testing.T) {
}, 30*time.Second, time.Second)
}

func randBlob() *kzg4844.Blob {
var blob kzg4844.Blob
for i := 0; i < len(blob); i += gokzg4844.SerializedScalarSize {
fieldElementBytes := randFieldElement()
copy(blob[i:i+gokzg4844.SerializedScalarSize], fieldElementBytes[:])
func randBlobs(count int) []*kzg4844.Blob {
blobs := make([]*kzg4844.Blob, 0, count)

for c := 0; c < count; c++ {
var blob kzg4844.Blob
for i := 0; i < len(blob); i += gokzg4844.SerializedScalarSize {
fieldElementBytes := randFieldElement()
copy(blob[i:i+gokzg4844.SerializedScalarSize], fieldElementBytes[:])
}
blobs = append(blobs, &blob)
}
return &blob

return blobs
}

func randFieldElement() [32]byte {
Expand All @@ -921,10 +927,10 @@ func testSendBlobCarryingTxOverLimit(t *testing.T) {
assert.NoError(t, err)

for i := 0; i < int(cfgCopy.MaxPendingBlobTxs); i++ {
_, err = s.SendTransaction("0", &common.Address{}, nil, randBlob(), 0)
_, err = s.SendTransaction("0", &common.Address{}, nil, randBlobs(1), 0)
assert.NoError(t, err)
}
_, err = s.SendTransaction("0", &common.Address{}, nil, randBlob(), 0)
_, err = s.SendTransaction("0", &common.Address{}, nil, randBlobs(1), 0)
assert.ErrorIs(t, err, ErrTooManyPendingBlobTxs)
s.Stop()
}

0 comments on commit f277483

Please sign in to comment.