Commit a6086c18 authored by Hamdi Allam's avatar Hamdi Allam

log when ignoring duplicates

parent 0cf40464
......@@ -82,7 +82,7 @@ func newBlocksDB(log log.Logger, db *gorm.DB) BlocksDB {
func (db *blocksDB) StoreL1BlockHeaders(headers []L1BlockHeader) error {
deduped := db.gorm.Clauses(clause.OnConflict{Columns: []clause.Column{{Name: "hash"}}, DoNothing: true})
result := deduped.CreateInBatches(&headers, batchInsertSize)
if result.Error != nil && int(result.RowsAffected) < len(headers) {
if result.Error == nil && int(result.RowsAffected) < len(headers) {
db.log.Warn("ignored L1 block duplicates", "duplicates", len(headers)-int(result.RowsAffected))
}
......@@ -125,7 +125,7 @@ func (db *blocksDB) L1LatestBlockHeader() (*L1BlockHeader, error) {
func (db *blocksDB) StoreL2BlockHeaders(headers []L2BlockHeader) error {
deduped := db.gorm.Clauses(clause.OnConflict{Columns: []clause.Column{{Name: "hash"}}, DoNothing: true})
result := deduped.CreateInBatches(&headers, batchInsertSize)
if result.Error != nil && int(result.RowsAffected) < len(headers) {
if result.Error == nil && int(result.RowsAffected) < len(headers) {
db.log.Warn("ignored L2 block duplicates", "duplicates", len(headers)-int(result.RowsAffected))
}
......
......@@ -77,7 +77,7 @@ func newBridgeMessagesDB(log log.Logger, db *gorm.DB) BridgeMessagesDB {
func (db bridgeMessagesDB) StoreL1BridgeMessages(messages []L1BridgeMessage) error {
deduped := db.gorm.Clauses(clause.OnConflict{Columns: []clause.Column{{Name: "message_hash"}}, DoNothing: true})
result := deduped.CreateInBatches(&messages, batchInsertSize)
if result.Error != nil && int(result.RowsAffected) < len(messages) {
if result.Error == nil && int(result.RowsAffected) < len(messages) {
db.log.Warn("ignored L1 bridge message duplicates", "duplicates", len(messages)-int(result.RowsAffected))
}
......@@ -127,8 +127,8 @@ func (db bridgeMessagesDB) MarkRelayedL1BridgeMessage(messageHash common.Hash, r
func (db bridgeMessagesDB) StoreL2BridgeMessages(messages []L2BridgeMessage) error {
deduped := db.gorm.Clauses(clause.OnConflict{Columns: []clause.Column{{Name: "message_hash"}}, DoNothing: true})
result := deduped.CreateInBatches(&messages, batchInsertSize)
if result.Error != nil && int(result.RowsAffected) < len(messages) {
db.log.Warn("ignored L1 bridge message duplicates", "duplicates", len(messages)-int(result.RowsAffected))
if result.Error == nil && int(result.RowsAffected) < len(messages) {
db.log.Warn("ignored L2 bridge message duplicates", "duplicates", len(messages)-int(result.RowsAffected))
}
return result.Error
......
......@@ -85,7 +85,7 @@ func newBridgeTransactionsDB(log log.Logger, db *gorm.DB) BridgeTransactionsDB {
func (db *bridgeTransactionsDB) StoreL1TransactionDeposits(deposits []L1TransactionDeposit) error {
deduped := db.gorm.Clauses(clause.OnConflict{Columns: []clause.Column{{Name: "source_hash"}}, DoNothing: true})
result := deduped.CreateInBatches(&deposits, batchInsertSize)
if result.Error != nil && int(result.RowsAffected) < len(deposits) {
if result.Error == nil && int(result.RowsAffected) < len(deposits) {
db.log.Warn("ignored L1 tx deposit duplicates", "duplicates", len(deposits)-int(result.RowsAffected))
}
......@@ -143,8 +143,8 @@ func (db *bridgeTransactionsDB) L1LatestBlockHeader() (*L1BlockHeader, error) {
func (db *bridgeTransactionsDB) StoreL2TransactionWithdrawals(withdrawals []L2TransactionWithdrawal) error {
deduped := db.gorm.Clauses(clause.OnConflict{Columns: []clause.Column{{Name: "withdrawal_hash"}}, DoNothing: true})
result := deduped.CreateInBatches(&withdrawals, batchInsertSize)
if result.Error != nil && int(result.RowsAffected) < len(withdrawals) {
db.log.Warn("ignored L2 tx deposit withdrawals", "duplicates", len(withdrawals)-int(result.RowsAffected))
if result.Error == nil && int(result.RowsAffected) < len(withdrawals) {
db.log.Warn("ignored L2 tx withdrawal duplicates", "duplicates", len(withdrawals)-int(result.RowsAffected))
}
return result.Error
......
......@@ -96,7 +96,7 @@ func newBridgeTransfersDB(log log.Logger, db *gorm.DB) BridgeTransfersDB {
func (db *bridgeTransfersDB) StoreL1BridgeDeposits(deposits []L1BridgeDeposit) error {
deduped := db.gorm.Clauses(clause.OnConflict{Columns: []clause.Column{{Name: "transaction_source_hash"}}, DoNothing: true})
result := deduped.CreateInBatches(&deposits, batchInsertSize)
if result.Error != nil && int(result.RowsAffected) < len(deposits) {
if result.Error == nil && int(result.RowsAffected) < len(deposits) {
db.log.Warn("ignored L1 bridge transfer duplicates", "duplicates", len(deposits)-int(result.RowsAffected))
}
......@@ -214,7 +214,7 @@ l1_bridge_deposits.timestamp, cross_domain_message_hash, local_token_address, re
func (db *bridgeTransfersDB) StoreL2BridgeWithdrawals(withdrawals []L2BridgeWithdrawal) error {
deduped := db.gorm.Clauses(clause.OnConflict{Columns: []clause.Column{{Name: "transaction_withdrawal_hash"}}, DoNothing: true})
result := deduped.CreateInBatches(&withdrawals, batchInsertSize)
if result.Error != nil && int(result.RowsAffected) < len(withdrawals) {
if result.Error == nil && int(result.RowsAffected) < len(withdrawals) {
db.log.Warn("ignored L2 bridge transfer duplicates", "duplicates", len(withdrawals)-int(result.RowsAffected))
}
......
......@@ -116,7 +116,7 @@ func (db *contractEventsDB) StoreL1ContractEvents(events []L1ContractEvent) erro
// that the RLP bytes match when doing conflict resolution.
deduped := db.gorm.Clauses(clause.OnConflict{OnConstraint: "l1_contract_events_block_hash_log_index_key", DoNothing: true})
result := deduped.CreateInBatches(&events, batchInsertSize)
if result.Error != nil && int(result.RowsAffected) < len(events) {
if result.Error == nil && int(result.RowsAffected) < len(events) {
db.log.Warn("ignored L1 contract event duplicates", "duplicates", len(events)-int(result.RowsAffected))
}
......@@ -190,7 +190,7 @@ func (db *contractEventsDB) StoreL2ContractEvents(events []L2ContractEvent) erro
// that the RLP bytes match when doing conflict resolution.
deduped := db.gorm.Clauses(clause.OnConflict{OnConstraint: "l2_contract_events_block_hash_log_index_key", DoNothing: true})
result := deduped.CreateInBatches(&events, batchInsertSize)
if result.Error != nil && int(result.RowsAffected) < len(events) {
if result.Error == nil && int(result.RowsAffected) < len(events) {
db.log.Warn("ignored L2 contract event duplicates", "duplicates", len(events)-int(result.RowsAffected))
}
......
......@@ -103,6 +103,7 @@ func (db *DB) Transaction(fn func(db *DB) error) error {
}
func (db *DB) Close() error {
db.log.Info("closing database")
sql, err := db.gorm.DB()
if err != nil {
return err
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment