Skip to content

Commit c72cbfc

Browse files
committed
address review comments
1 parent 23e7a25 commit c72cbfc

File tree

3 files changed

+12
-6
lines changed

3 files changed

+12
-6
lines changed

core/rawdb/accessors_l1_message.go

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,8 @@ func (it *L1MessageIterator) Error() error {
210210

211211
// L1MessageV1Iterator is a wrapper around L1MessageIterator that allows us to iterate over L1 messages V1.
212212
type L1MessageV1Iterator struct {
213-
db ethdb.Database
213+
db ethdb.Database
214+
v2StartIndex *uint64
214215
L1MessageIterator
215216
}
216217

@@ -220,6 +221,7 @@ type L1MessageV1Iterator struct {
220221
func IterateL1MessagesV1From(db ethdb.Database, fromQueueIndex uint64) L1MessageV1Iterator {
221222
return L1MessageV1Iterator{
222223
db: db,
224+
v2StartIndex: ReadL1MessageV2StartIndex(db),
223225
L1MessageIterator: iterateL1MessagesFrom(db, fromQueueIndex),
224226
}
225227
}
@@ -228,9 +230,12 @@ func (it *L1MessageV1Iterator) Next() bool {
228230
for it.L1MessageIterator.Next() {
229231
// L1MessageV2StartIndex is the first queue index of L1 messages that are from L1MessageQueueV2.
230232
// Therefore, we stop reading L1 messages V1 when we reach this index.
231-
// We need to check in every iteration as the start index can be set in the meantime when we are reading L1 messages.
232-
v2StartIndex := ReadL1MessageV2StartIndex(it.db)
233-
if v2StartIndex != nil && it.QueueIndex() >= *v2StartIndex {
233+
// We need to check in every iteration if not yet set as the start index can be set in the meantime when we are reading L1 messages.
234+
if it.v2StartIndex == nil {
235+
it.v2StartIndex = ReadL1MessageV2StartIndex(it.db)
236+
}
237+
238+
if it.v2StartIndex != nil && it.QueueIndex() >= *it.v2StartIndex {
234239
return false
235240
}
236241
return true

core/rawdb/schema.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -109,8 +109,8 @@ var (
109109
l1MessagePrefix = []byte("L1") // l1MessagePrefix + queueIndex (uint64 big endian) -> L1MessageTx
110110
firstQueueIndexNotInL2BlockPrefix = []byte("q") // firstQueueIndexNotInL2BlockPrefix + L2 block hash -> enqueue index
111111
highestSyncedQueueIndexKey = []byte("HighestSyncedQueueIndex")
112-
l1MessageV2StartIndexKey = []byte("L1MessageV2StartIndex")
113-
l1MessageV2FirstL1BlockNumberKey = []byte("L1MessageV2FirstL1BlockNumber")
112+
l1MessageV2StartIndexKey = []byte("MessageQueueV2StartIndex")
113+
l1MessageV2FirstL1BlockNumberKey = []byte("MessageQueueV2FirstL1BlockNumber")
114114

115115
// Scroll rollup event store
116116
rollupEventSyncedL1BlockNumberKey = []byte("R-LastRollupEventSyncedL1BlockNumber")

rollup/sync_service/sync_service.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -262,6 +262,7 @@ func (s *SyncService) fetchMessages() {
262262
// write start index of very first L1MessageV2 to database. This is true only once.
263263
if len(msgsV2) > 0 && l1MessageV2StartIndex == nil {
264264
firstL1MessageV2 := msgsV2[0]
265+
log.Info("Received first L1Message from MessageQueueV2", "queueIndex", firstL1MessageV2.QueueIndex, "L1 blockNumber", to)
265266
l1MessageV2StartIndex = &firstL1MessageV2.QueueIndex
266267
rawdb.WriteL1MessageV2StartIndex(batchWriter, firstL1MessageV2.QueueIndex)
267268
rawdb.WriteL1MessageV2FirstL1BlockNumber(batchWriter, to)

0 commit comments

Comments
 (0)