5353
5454// StateDiffIndexer satisfies the indexer.StateDiffIndexer interface for ethereum statediff objects on top of a void
5555type StateDiffIndexer struct {
56- writer * SQLWriter
56+ fileWriter * SQLWriter
5757 chainConfig * params.ChainConfig
5858 nodeID string
5959 wg * sync.WaitGroup
@@ -79,7 +79,7 @@ func NewStateDiffIndexer(ctx context.Context, chainConfig *params.ChainConfig, c
7979 w .upsertNode (config .NodeInfo )
8080 w .upsertIPLDDirect (shared .RemovedNodeMhKey , []byte {})
8181 return & StateDiffIndexer {
82- writer : w ,
82+ fileWriter : w ,
8383 chainConfig : chainConfig ,
8484 nodeID : config .NodeInfo .ID ,
8585 wg : wg ,
@@ -133,7 +133,7 @@ func (sdi *StateDiffIndexer) PushBlock(block *types.Block, receipts types.Receip
133133 indexerMetrics .tStateStoreCodeProcessing .Update (tDiff )
134134 traceMsg += fmt .Sprintf ("state, storage, and code storage processing time: %s\r \n " , tDiff .String ())
135135 t = time .Now ()
136- sdi .writer .Flush ()
136+ sdi .fileWriter .Flush ()
137137 tDiff = time .Since (t )
138138 indexerMetrics .tPostgresCommit .Update (tDiff )
139139 traceMsg += fmt .Sprintf ("postgres transaction commit duration: %s\r \n " , tDiff .String ())
@@ -189,15 +189,15 @@ func (sdi *StateDiffIndexer) PushBlock(block *types.Block, receipts types.Receip
189189// processHeader write a header IPLD insert SQL stmt to a file
190190// it returns the headerID
191191func (sdi * StateDiffIndexer ) processHeader (header * types.Header , headerNode node.Node , reward , td * big.Int ) string {
192- sdi .writer .upsertIPLDNode (headerNode )
192+ sdi .fileWriter .upsertIPLDNode (headerNode )
193193
194- var baseFee * int64
194+ var baseFee * string
195195 if header .BaseFee != nil {
196- baseFee = new (int64 )
197- * baseFee = header .BaseFee .Int64 ()
196+ baseFee = new (string )
197+ * baseFee = header .BaseFee .String ()
198198 }
199199 headerID := header .Hash ().String ()
200- sdi .writer .upsertHeaderCID (models.HeaderModel {
200+ sdi .fileWriter .upsertHeaderCID (models.HeaderModel {
201201 NodeID : sdi .nodeID ,
202202 CID : headerNode .Cid ().String (),
203203 MhKey : shared .MultihashKeyFromCID (headerNode .Cid ()),
@@ -221,15 +221,15 @@ func (sdi *StateDiffIndexer) processHeader(header *types.Header, headerNode node
221221func (sdi * StateDiffIndexer ) processUncles (headerID string , blockNumber uint64 , uncleNodes []* ipld2.EthHeader ) {
222222 // publish and index uncles
223223 for _ , uncleNode := range uncleNodes {
224- sdi .writer .upsertIPLDNode (uncleNode )
224+ sdi .fileWriter .upsertIPLDNode (uncleNode )
225225 var uncleReward * big.Int
226226 // in PoA networks uncle reward is 0
227227 if sdi .chainConfig .Clique != nil {
228228 uncleReward = big .NewInt (0 )
229229 } else {
230230 uncleReward = shared .CalcUncleMinerReward (blockNumber , uncleNode .Number .Uint64 ())
231231 }
232- sdi .writer .upsertUncleCID (models.UncleModel {
232+ sdi .fileWriter .upsertUncleCID (models.UncleModel {
233233 HeaderID : headerID ,
234234 CID : uncleNode .Cid ().String (),
235235 MhKey : shared .MultihashKeyFromCID (uncleNode .Cid ()),
@@ -261,10 +261,10 @@ func (sdi *StateDiffIndexer) processReceiptsAndTxs(args processArgs) error {
261261 signer := types .MakeSigner (sdi .chainConfig , args .blockNumber )
262262 for i , receipt := range args .receipts {
263263 for _ , logTrieNode := range args .logTrieNodes [i ] {
264- sdi .writer .upsertIPLDNode (logTrieNode )
264+ sdi .fileWriter .upsertIPLDNode (logTrieNode )
265265 }
266266 txNode := args .txNodes [i ]
267- sdi .writer .upsertIPLDNode (txNode )
267+ sdi .fileWriter .upsertIPLDNode (txNode )
268268
269269 // index tx
270270 trx := args .txs [i ]
@@ -285,7 +285,7 @@ func (sdi *StateDiffIndexer) processReceiptsAndTxs(args processArgs) error {
285285 MhKey : shared .MultihashKeyFromCID (txNode .Cid ()),
286286 Type : trx .Type (),
287287 }
288- sdi .writer .upsertTransactionCID (txModel )
288+ sdi .fileWriter .upsertTransactionCID (txModel )
289289
290290 // index access list if this is one
291291 for j , accessListElement := range trx .AccessList () {
@@ -299,7 +299,7 @@ func (sdi *StateDiffIndexer) processReceiptsAndTxs(args processArgs) error {
299299 Address : accessListElement .Address .Hex (),
300300 StorageKeys : storageKeys ,
301301 }
302- sdi .writer .upsertAccessListElement (accessListElementModel )
302+ sdi .fileWriter .upsertAccessListElement (accessListElementModel )
303303 }
304304
305305 // this is the contract address if this receipt is for a contract creation tx
@@ -327,7 +327,7 @@ func (sdi *StateDiffIndexer) processReceiptsAndTxs(args processArgs) error {
327327 } else {
328328 rctModel .PostState = common .Bytes2Hex (receipt .PostState )
329329 }
330- sdi .writer .upsertReceiptCID (rctModel )
330+ sdi .fileWriter .upsertReceiptCID (rctModel )
331331
332332 // index logs
333333 logDataSet := make ([]* models.LogsModel , len (receipt .Logs ))
@@ -354,13 +354,13 @@ func (sdi *StateDiffIndexer) processReceiptsAndTxs(args processArgs) error {
354354 Topic3 : topicSet [3 ],
355355 }
356356 }
357- sdi .writer .upsertLogCID (logDataSet )
357+ sdi .fileWriter .upsertLogCID (logDataSet )
358358 }
359359
360360 // publish trie nodes, these aren't indexed directly
361361 for i , n := range args .txTrieNodes {
362- sdi .writer .upsertIPLDNode (n )
363- sdi .writer .upsertIPLDNode (args .rctTrieNodes [i ])
362+ sdi .fileWriter .upsertIPLDNode (n )
363+ sdi .fileWriter .upsertIPLDNode (args .rctTrieNodes [i ])
364364 }
365365
366366 return nil
@@ -380,10 +380,10 @@ func (sdi *StateDiffIndexer) PushStateNode(batch interfaces.Batch, stateNode sdt
380380 MhKey : shared .RemovedNodeMhKey ,
381381 NodeType : stateNode .NodeType .Int (),
382382 }
383- sdi .writer .upsertStateCID (stateModel )
383+ sdi .fileWriter .upsertStateCID (stateModel )
384384 return nil
385385 }
386- stateCIDStr , stateMhKey , err := sdi .writer .upsertIPLDRaw (ipld2 .MEthStateTrie , multihash .KECCAK_256 , stateNode .NodeValue )
386+ stateCIDStr , stateMhKey , err := sdi .fileWriter .upsertIPLDRaw (ipld2 .MEthStateTrie , multihash .KECCAK_256 , stateNode .NodeValue )
387387 if err != nil {
388388 return fmt .Errorf ("error generating and cacheing state node IPLD: %v" , err )
389389 }
@@ -396,7 +396,7 @@ func (sdi *StateDiffIndexer) PushStateNode(batch interfaces.Batch, stateNode sdt
396396 NodeType : stateNode .NodeType .Int (),
397397 }
398398 // index the state node
399- sdi .writer .upsertStateCID (stateModel )
399+ sdi .fileWriter .upsertStateCID (stateModel )
400400 // if we have a leaf, decode and index the account data
401401 if stateNode .NodeType == sdtypes .Leaf {
402402 var i []interface {}
@@ -418,7 +418,7 @@ func (sdi *StateDiffIndexer) PushStateNode(batch interfaces.Batch, stateNode sdt
418418 CodeHash : account .CodeHash ,
419419 StorageRoot : account .Root .String (),
420420 }
421- sdi .writer .upsertStateAccount (accountModel )
421+ sdi .fileWriter .upsertStateAccount (accountModel )
422422 }
423423 // if there are any storage nodes associated with this node, publish and index them
424424 for _ , storageNode := range stateNode .StorageNodes {
@@ -434,10 +434,10 @@ func (sdi *StateDiffIndexer) PushStateNode(batch interfaces.Batch, stateNode sdt
434434 MhKey : shared .RemovedNodeMhKey ,
435435 NodeType : storageNode .NodeType .Int (),
436436 }
437- sdi .writer .upsertStorageCID (storageModel )
437+ sdi .fileWriter .upsertStorageCID (storageModel )
438438 continue
439439 }
440- storageCIDStr , storageMhKey , err := sdi .writer .upsertIPLDRaw (ipld2 .MEthStorageTrie , multihash .KECCAK_256 , storageNode .NodeValue )
440+ storageCIDStr , storageMhKey , err := sdi .fileWriter .upsertIPLDRaw (ipld2 .MEthStorageTrie , multihash .KECCAK_256 , storageNode .NodeValue )
441441 if err != nil {
442442 return fmt .Errorf ("error generating and cacheing storage node IPLD: %v" , err )
443443 }
@@ -450,7 +450,7 @@ func (sdi *StateDiffIndexer) PushStateNode(batch interfaces.Batch, stateNode sdt
450450 MhKey : storageMhKey ,
451451 NodeType : storageNode .NodeType .Int (),
452452 }
453- sdi .writer .upsertStorageCID (storageModel )
453+ sdi .fileWriter .upsertStorageCID (storageModel )
454454 }
455455
456456 return nil
@@ -463,11 +463,11 @@ func (sdi *StateDiffIndexer) PushCodeAndCodeHash(batch interfaces.Batch, codeAnd
463463 if err != nil {
464464 return fmt .Errorf ("error deriving multihash key from codehash: %v" , err )
465465 }
466- sdi .writer .upsertIPLDDirect (mhKey , codeAndCodeHash .Code )
466+ sdi .fileWriter .upsertIPLDDirect (mhKey , codeAndCodeHash .Code )
467467 return nil
468468}
469469
470470// Close satisfies io.Closer
471471func (sdi * StateDiffIndexer ) Close () error {
472- return sdi .writer .Close ()
472+ return sdi .fileWriter .Close ()
473473}
0 commit comments