Skip to content

Commit 60f7788

Browse files
committed
changes from comment
1 parent 1109c08 commit 60f7788

File tree

2 files changed

+12
-42
lines changed

2 files changed

+12
-42
lines changed

internal/orchestrator/committer_test.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -404,6 +404,9 @@ func TestStartCommitter(t *testing.T) {
404404
mockRPC.EXPECT().GetChainID().Return(chainID)
405405
mockMainStorage.EXPECT().GetMaxBlockNumber(chainID).Return(big.NewInt(100), nil)
406406

407+
// Add expectation for DeleteOlderThan call during cleanup
408+
mockStagingStorage.On("DeleteOlderThan", chainID, big.NewInt(100)).Return(nil)
409+
407410
blockData := []common.BlockData{
408411
{Block: common.Block{Number: big.NewInt(101)}},
409412
{Block: common.Block{Number: big.NewInt(102)}},
@@ -438,6 +441,9 @@ func TestCommitterRespectsSIGTERM(t *testing.T) {
438441
mockRPC.EXPECT().GetChainID().Return(chainID)
439442
mockMainStorage.EXPECT().GetMaxBlockNumber(chainID).Return(big.NewInt(100), nil)
440443

444+
// Add expectation for DeleteOlderThan call during cleanup
445+
mockStagingStorage.On("DeleteOlderThan", chainID, big.NewInt(100)).Return(nil)
446+
441447
blockData := []common.BlockData{
442448
{Block: common.Block{Number: big.NewInt(101)}},
443449
{Block: common.Block{Number: big.NewInt(102)}},

internal/storage/clickhouse.go

Lines changed: 6 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -2115,50 +2115,14 @@ func (c *ClickHouseConnector) GetFullBlockData(chainId *big.Int, blockNumbers []
21152115
}
21162116

21172117
func (c *ClickHouseConnector) DeleteOlderThan(chainId *big.Int, blockNumber *big.Int) error {
2118-
// First, get all the block numbers that need to be deleted
21192118
query := fmt.Sprintf(`
2120-
SELECT DISTINCT chain_id, block_number
2121-
FROM %s.block_data
2119+
INSERT INTO %s.block_data (chain_id, block_number, is_deleted)
2120+
SELECT chain_id, block_number, 1
2121+
FROM %s.block_data
21222122
WHERE chain_id = ? AND block_number <= ? AND is_deleted = 0
2123-
`, c.cfg.Database)
2124-
2125-
rows, err := c.conn.Query(context.Background(), query, chainId, blockNumber)
2126-
if err != nil {
2127-
return err
2128-
}
2129-
defer rows.Close()
2130-
2131-
// Prepare batch for deletion
2132-
deleteQuery := fmt.Sprintf(`
2133-
INSERT INTO %s.block_data (
2134-
chain_id, block_number, is_deleted
2135-
) VALUES (?, ?, ?)
2136-
`, c.cfg.Database)
2137-
2138-
batch, err := c.conn.PrepareBatch(context.Background(), deleteQuery)
2139-
if err != nil {
2140-
return err
2141-
}
2142-
defer batch.Close()
2143-
2144-
// Add each block to the deletion batch
2145-
for rows.Next() {
2146-
var chainIdVal, blockNumberVal *big.Int
2147-
if err := rows.Scan(&chainIdVal, &blockNumberVal); err != nil {
2148-
return err
2149-
}
2150-
2151-
err := batch.Append(
2152-
chainIdVal,
2153-
blockNumberVal,
2154-
1, // is_deleted = 1
2155-
)
2156-
if err != nil {
2157-
return err
2158-
}
2159-
}
2160-
2161-
return batch.Send()
2123+
GROUP BY chain_id, block_number
2124+
`, c.cfg.Database, c.cfg.Database)
2125+
return c.conn.Exec(context.Background(), query, chainId, blockNumber)
21622126
}
21632127

21642128
// Helper function to test query generation

0 commit comments

Comments
 (0)