@@ -224,7 +224,6 @@ type BlockChain struct {
224
224
hc * HeaderChain
225
225
rmLogsFeed event.Feed
226
226
chainFeed event.Feed
227
- chainSideFeed event.Feed
228
227
chainHeadFeed event.Feed
229
228
logsFeed event.Feed
230
229
blockProcFeed event.Feed
@@ -571,15 +570,14 @@ func (bc *BlockChain) SetHead(head uint64) error {
571
570
}
572
571
// Send chain head event to update the transaction pool
573
572
header := bc .CurrentBlock ()
574
- block := bc .GetBlock (header .Hash (), header .Number .Uint64 ())
575
- if block == nil {
573
+ if block := bc .GetBlock (header .Hash (), header .Number .Uint64 ()); block == nil {
576
574
// This should never happen. In practice, previously currentBlock
577
575
// contained the entire block whereas now only a "marker", so there
578
576
// is an ever so slight chance for a race we should handle.
579
577
log .Error ("Current block not found in database" , "block" , header .Number , "hash" , header .Hash ())
580
578
return fmt .Errorf ("current block missing: #%d [%x..]" , header .Number , header .Hash ().Bytes ()[:4 ])
581
579
}
582
- bc .chainHeadFeed .Send (ChainHeadEvent {Block : block })
580
+ bc .chainHeadFeed .Send (ChainHeadEvent {Header : header })
583
581
return nil
584
582
}
585
583
@@ -593,15 +591,14 @@ func (bc *BlockChain) SetHeadWithTimestamp(timestamp uint64) error {
593
591
}
594
592
// Send chain head event to update the transaction pool
595
593
header := bc .CurrentBlock ()
596
- block := bc .GetBlock (header .Hash (), header .Number .Uint64 ())
597
- if block == nil {
594
+ if block := bc .GetBlock (header .Hash (), header .Number .Uint64 ()); block == nil {
598
595
// This should never happen. In practice, previously currentBlock
599
596
// contained the entire block whereas now only a "marker", so there
600
597
// is an ever so slight chance for a race we should handle.
601
598
log .Error ("Current block not found in database" , "block" , header .Number , "hash" , header .Hash ())
602
599
return fmt .Errorf ("current block missing: #%d [%x..]" , header .Number , header .Hash ().Bytes ()[:4 ])
603
600
}
604
- bc .chainHeadFeed .Send (ChainHeadEvent {Block : block })
601
+ bc .chainHeadFeed .Send (ChainHeadEvent {Header : header })
605
602
return nil
606
603
}
607
604
@@ -1552,7 +1549,7 @@ func (bc *BlockChain) writeBlockAndSetHead(block *types.Block, receipts []*types
1552
1549
// Set new head.
1553
1550
bc .writeHeadBlock (block )
1554
1551
1555
- bc .chainFeed .Send (ChainEvent {Block : block , Hash : block . Hash (), Logs : logs })
1552
+ bc .chainFeed .Send (ChainEvent {Header : block . Header () })
1556
1553
if len (logs ) > 0 {
1557
1554
bc .logsFeed .Send (logs )
1558
1555
}
@@ -1562,7 +1559,7 @@ func (bc *BlockChain) writeBlockAndSetHead(block *types.Block, receipts []*types
1562
1559
// we will fire an accumulated ChainHeadEvent and disable fire
1563
1560
// event here.
1564
1561
if emitHeadEvent {
1565
- bc .chainHeadFeed .Send (ChainHeadEvent {Block : block })
1562
+ bc .chainHeadFeed .Send (ChainHeadEvent {Header : block . Header () })
1566
1563
}
1567
1564
return CanonStatTy , nil
1568
1565
}
@@ -1627,7 +1624,7 @@ func (bc *BlockChain) insertChain(chain types.Blocks, setHead bool, makeWitness
1627
1624
// Fire a single chain head event if we've progressed the chain
1628
1625
defer func () {
1629
1626
if lastCanon != nil && bc .CurrentBlock ().Hash () == lastCanon .Hash () {
1630
- bc .chainHeadFeed .Send (ChainHeadEvent {lastCanon })
1627
+ bc .chainHeadFeed .Send (ChainHeadEvent {Header : lastCanon . Header () })
1631
1628
}
1632
1629
}()
1633
1630
// Start the parallel header verifier
@@ -2328,9 +2325,6 @@ func (bc *BlockChain) reorg(oldHead *types.Header, newHead *types.Block) error {
2328
2325
// Deleted logs + blocks:
2329
2326
var deletedLogs []* types.Log
2330
2327
for i := len (oldChain ) - 1 ; i >= 0 ; i -- {
2331
- // Also send event for blocks removed from the canon chain.
2332
- bc .chainSideFeed .Send (ChainSideEvent {Block : oldChain [i ]})
2333
-
2334
2328
// Collect deleted logs for notification
2335
2329
if logs := bc .collectLogs (oldChain [i ], true ); len (logs ) > 0 {
2336
2330
deletedLogs = append (deletedLogs , logs ... )
@@ -2403,11 +2397,11 @@ func (bc *BlockChain) SetCanonical(head *types.Block) (common.Hash, error) {
2403
2397
2404
2398
// Emit events
2405
2399
logs := bc .collectLogs (head , false )
2406
- bc .chainFeed .Send (ChainEvent {Block : head , Hash : head . Hash (), Logs : logs })
2400
+ bc .chainFeed .Send (ChainEvent {Header : head . Header () })
2407
2401
if len (logs ) > 0 {
2408
2402
bc .logsFeed .Send (logs )
2409
2403
}
2410
- bc .chainHeadFeed .Send (ChainHeadEvent {Block : head })
2404
+ bc .chainHeadFeed .Send (ChainHeadEvent {Header : head . Header () })
2411
2405
2412
2406
context := []interface {}{
2413
2407
"number" , head .Number (),
0 commit comments