Skip to content

Commit 1c1aea9

Browse files
committed
Fix block_fee to support NULL values.
1 parent 9087770 commit 1c1aea9

File tree

5 files changed

+9
-8
lines changed

5 files changed

+9
-8
lines changed

statediff/db/migrations/00004_create_eth_header_cids_table.sql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ CREATE TABLE eth.header_cids (
1616
bloom BYTEA NOT NULL,
1717
timestamp NUMERIC NOT NULL,
1818
times_validated INTEGER NOT NULL DEFAULT 1,
19-
base_fee BIGINT DEFAULT 0,
19+
base_fee BIGINT,
2020
UNIQUE (block_number, block_hash)
2121
);
2222

statediff/indexer/indexer.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -219,9 +219,10 @@ func (sdi *StateDiffIndexer) processHeader(tx *sqlx.Tx, header *types.Header, he
219219
return 0, fmt.Errorf("error publishing header IPLD: %v", err)
220220
}
221221

222-
var baseFee int64
222+
var baseFee *int64
223223
if header.BaseFee != nil {
224-
baseFee = header.BaseFee.Int64()
224+
baseFee = new(int64)
225+
*baseFee = header.BaseFee.Int64()
225226
}
226227

227228
// index header

statediff/indexer/indexer_legacy_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ func TestPublishAndIndexerLegacy(t *testing.T) {
7272
TD string
7373
Reward string
7474
ID int
75-
BaseFee int64 `db:"base_fee"`
75+
BaseFee *int64 `db:"base_fee"`
7676
}
7777
header := new(res)
7878
err = db.QueryRowx(pgStr, legacyData.BlockNumber.Uint64()).StructScan(header)
@@ -82,6 +82,6 @@ func TestPublishAndIndexerLegacy(t *testing.T) {
8282
shared.ExpectEqual(t, header.TD, legacyData.MockBlock.Difficulty().String())
8383
shared.ExpectEqual(t, header.Reward, "5000000000000011250")
8484
require.Nil(t, legacyData.MockHeader.BaseFee)
85-
shared.ExpectEqual(t, header.BaseFee, int64(0))
85+
require.Nil(t, header.BaseFee)
8686
})
8787
}

statediff/indexer/indexer_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ func TestPublishAndIndexer(t *testing.T) {
174174
TD string
175175
Reward string
176176
ID int
177-
BaseFee int64 `db:"base_fee"`
177+
BaseFee *int64 `db:"base_fee"`
178178
}
179179
header := new(res)
180180
err = db.QueryRowx(pgStr, mocks.BlockNumber.Uint64()).StructScan(header)
@@ -184,7 +184,7 @@ func TestPublishAndIndexer(t *testing.T) {
184184
shared.ExpectEqual(t, header.CID, headerCID.String())
185185
shared.ExpectEqual(t, header.TD, mocks.MockBlock.Difficulty().String())
186186
shared.ExpectEqual(t, header.Reward, "2000000000000021250")
187-
shared.ExpectEqual(t, header.BaseFee, mocks.MockHeader.BaseFee.Int64())
187+
shared.ExpectEqual(t, *header.BaseFee, mocks.MockHeader.BaseFee.Int64())
188188
dc, err := cid.Decode(header.CID)
189189
if err != nil {
190190
t.Fatal(err)

statediff/indexer/models/models.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ type HeaderModel struct {
3636
Bloom []byte `db:"bloom"`
3737
Timestamp uint64 `db:"timestamp"`
3838
TimesValidated int64 `db:"times_validated"`
39-
BaseFee int64 `db:"base_fee"`
39+
BaseFee *int64 `db:"base_fee"`
4040
}
4141

4242
// UncleModel is the db model for eth.uncle_cids

0 commit comments

Comments
 (0)