mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-07-26 06:36:43 +00:00
core: change GetRawReceiptsByHash -> GetRawReceipts to resolve a conflict
This commit is contained in:
parent
b2cef4b45e
commit
818b10c990
5 changed files with 17 additions and 12 deletions
|
|
@ -234,9 +234,17 @@ func (bc *BlockChain) GetReceiptsByHash(hash common.Hash) types.Receipts {
|
||||||
return receipts
|
return receipts
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetRawReceiptsByHash retrieves the receipts for all transactions in a given block
|
// GetRawReceipts retrieves the receipts for all transactions in a given block
|
||||||
// without deriving the internal fields and the Bloom.
|
// without deriving the internal fields and the Bloom.
|
||||||
func (bc *BlockChain) GetRawReceiptsByHash(hash common.Hash) rlp.RawValue {
|
func (bc *BlockChain) GetRawReceipts(hash common.Hash, number uint64) types.Receipts {
|
||||||
|
if receipts, ok := bc.receiptsCache.Get(hash); ok {
|
||||||
|
return receipts
|
||||||
|
}
|
||||||
|
return rawdb.ReadRawReceipts(bc.db, hash, number)
|
||||||
|
}
|
||||||
|
|
||||||
|
// GetReceiptsRLP retrieves the receipts of a block.
|
||||||
|
func (bc *BlockChain) GetReceiptsRLP(hash common.Hash) rlp.RawValue {
|
||||||
number := rawdb.ReadHeaderNumber(bc.db, hash)
|
number := rawdb.ReadHeaderNumber(bc.db, hash)
|
||||||
if number == nil {
|
if number == nil {
|
||||||
return nil
|
return nil
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,7 @@ type blockchain interface {
|
||||||
GetHeader(hash common.Hash, number uint64) *types.Header
|
GetHeader(hash common.Hash, number uint64) *types.Header
|
||||||
GetCanonicalHash(number uint64) common.Hash
|
GetCanonicalHash(number uint64) common.Hash
|
||||||
GetReceiptsByHash(hash common.Hash) types.Receipts
|
GetReceiptsByHash(hash common.Hash) types.Receipts
|
||||||
GetRawReceiptsByHash(hash common.Hash) types.Receipts
|
GetRawReceipts(hash common.Hash, number uint64) types.Receipts
|
||||||
}
|
}
|
||||||
|
|
||||||
// ChainView represents an immutable view of a chain with a block id and a set
|
// ChainView represents an immutable view of a chain with a block id and a set
|
||||||
|
|
@ -117,7 +117,7 @@ func (cv *ChainView) RawReceipts(number uint64) types.Receipts {
|
||||||
log.Error("Chain view: block hash unavailable", "number", number, "head", cv.headNumber)
|
log.Error("Chain view: block hash unavailable", "number", number, "head", cv.headNumber)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
return cv.chain.GetRawReceiptsByHash(blockHash)
|
return cv.chain.GetRawReceipts(blockHash, number)
|
||||||
}
|
}
|
||||||
|
|
||||||
// SharedRange returns the block range shared by two chain views.
|
// SharedRange returns the block range shared by two chain views.
|
||||||
|
|
|
||||||
|
|
@ -515,7 +515,7 @@ func (tc *testChain) GetReceiptsByHash(hash common.Hash) types.Receipts {
|
||||||
return tc.receipts[hash]
|
return tc.receipts[hash]
|
||||||
}
|
}
|
||||||
|
|
||||||
func (tc *testChain) GetRawReceiptsByHash(hash common.Hash) types.Receipts {
|
func (tc *testChain) GetRawReceipts(hash common.Hash, number uint64) types.Receipts {
|
||||||
tc.lock.RLock()
|
tc.lock.RLock()
|
||||||
defer tc.lock.RUnlock()
|
defer tc.lock.RUnlock()
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -80,11 +80,8 @@ func (b *testBackend) GetReceiptsByHash(hash common.Hash) types.Receipts {
|
||||||
return r
|
return r
|
||||||
}
|
}
|
||||||
|
|
||||||
func (b *testBackend) GetRawReceiptsByHash(hash common.Hash) types.Receipts {
|
func (b *testBackend) GetRawReceipts(hash common.Hash, number uint64) types.Receipts {
|
||||||
if number := rawdb.ReadHeaderNumber(b.db, hash); number != nil {
|
return rawdb.ReadRawReceipts(b.db, hash, number)
|
||||||
return rawdb.ReadRawReceipts(b.db, hash, *number)
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (b *testBackend) HeaderByNumber(ctx context.Context, blockNr rpc.BlockNumber) (*types.Header, error) {
|
func (b *testBackend) HeaderByNumber(ctx context.Context, blockNr rpc.BlockNumber) (*types.Header, error) {
|
||||||
|
|
|
||||||
|
|
@ -282,7 +282,7 @@ func ServiceGetReceiptsQuery68(chain *core.BlockChain, query GetReceiptsRequest)
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
// Retrieve the requested block's receipts
|
// Retrieve the requested block's receipts
|
||||||
results := chain.GetRawReceiptsByHash(hash)
|
results := chain.GetReceiptsRLP(hash)
|
||||||
if results == nil {
|
if results == nil {
|
||||||
if header := chain.GetHeaderByHash(hash); header == nil || header.ReceiptHash != types.EmptyRootHash {
|
if header := chain.GetHeaderByHash(hash); header == nil || header.ReceiptHash != types.EmptyRootHash {
|
||||||
continue
|
continue
|
||||||
|
|
@ -319,7 +319,7 @@ func serviceGetReceiptsQuery69(chain *core.BlockChain, query GetReceiptsRequest)
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
// Retrieve the requested block's receipts
|
// Retrieve the requested block's receipts
|
||||||
results := chain.GetRawReceiptsByHash(hash)
|
results := chain.GetReceiptsRLP(hash)
|
||||||
if results == nil {
|
if results == nil {
|
||||||
if header := chain.GetHeaderByHash(hash); header == nil || header.ReceiptHash != types.EmptyRootHash {
|
if header := chain.GetHeaderByHash(hash); header == nil || header.ReceiptHash != types.EmptyRootHash {
|
||||||
continue
|
continue
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue