This commit is contained in:
Ian Norden 2021-05-11 20:03:08 -05:00
parent 830f0ffefd
commit eae8688c8b
4 changed files with 11 additions and 19 deletions

View File

@ -172,10 +172,8 @@ func (r *Receipt) MarshalBinary() ([]byte, error) {
return rlp.EncodeToBytes(r) return rlp.EncodeToBytes(r)
} }
data := &receiptRLP{r.statusEncoding(), r.CumulativeGasUsed, r.Bloom, r.Logs} data := &receiptRLP{r.statusEncoding(), r.CumulativeGasUsed, r.Bloom, r.Logs}
buf := encodeBufferPool.Get().(*bytes.Buffer) var buf bytes.Buffer
defer encodeBufferPool.Put(buf) err := r.encodeTyped(data, &buf)
buf.Reset()
err := r.encodeTyped(data, buf)
return buf.Bytes(), err return buf.Bytes(), err
} }

View File

@ -1,7 +1,6 @@
package ipld package ipld
import ( import (
"fmt"
"io/ioutil" "io/ioutil"
"path/filepath" "path/filepath"
"testing" "testing"
@ -73,8 +72,7 @@ func loadBlockData(t *testing.T) []testCase {
func TestFromBlockAndReceipts(t *testing.T) { func TestFromBlockAndReceipts(t *testing.T) {
testCases := loadBlockData(t) testCases := loadBlockData(t)
for i, tc := range testCases { for _, tc := range testCases {
fmt.Printf("testing %d\r\n", i)
_, _, _, _, _, _, err := FromBlockAndReceipts(tc.block, tc.receipts) _, _, _, _, _, _, err := FromBlockAndReceipts(tc.block, tc.receipts)
if err != nil { if err != nil {
t.Fatalf("error generating IPLDs from block and receipts, err %v, kind %s, block hash %s", err, tc.kind, tc.block.Hash()) t.Fatalf("error generating IPLDs from block and receipts, err %v, kind %s, block hash %s", err, tc.kind, tc.block.Hash())

View File

@ -24,7 +24,6 @@ import (
"github.com/multiformats/go-multihash" "github.com/multiformats/go-multihash"
"github.com/ethereum/go-ethereum/core/types" "github.com/ethereum/go-ethereum/core/types"
"github.com/ethereum/go-ethereum/rlp"
) )
// EthRctTrie (eth-tx-trie codec 0x92) represents // EthRctTrie (eth-tx-trie codec 0x92) represents
@ -61,9 +60,8 @@ func DecodeEthRctTrie(c cid.Cid, b []byte) (*EthRctTrie, error) {
// decodeEthRctTrieLeaf parses a eth-rct-trie leaf // decodeEthRctTrieLeaf parses a eth-rct-trie leaf
//from decoded RLP elements //from decoded RLP elements
func decodeEthRctTrieLeaf(i []interface{}) ([]interface{}, error) { func decodeEthRctTrieLeaf(i []interface{}) ([]interface{}, error) {
var r types.Receipt r := new(types.Receipt)
err := rlp.DecodeBytes(i[1].([]byte), &r) if err := r.UnmarshalBinary(i[1].([]byte)); err != nil {
if err != nil {
return nil, err return nil, err
} }
c, err := RawdataToCid(MEthTxReceipt, i[1].([]byte), multihash.KECCAK_256) c, err := RawdataToCid(MEthTxReceipt, i[1].([]byte), multihash.KECCAK_256)
@ -73,7 +71,7 @@ func decodeEthRctTrieLeaf(i []interface{}) ([]interface{}, error) {
return []interface{}{ return []interface{}{
i[0].([]byte), i[0].([]byte),
&EthReceipt{ &EthReceipt{
Receipt: &r, Receipt: r,
cid: c, cid: c,
rawdata: i[1].([]byte), rawdata: i[1].([]byte),
}, },
@ -135,7 +133,7 @@ func (rt *rctTrie) getNodes() ([]*EthRctTrie, error) {
for _, k := range keys { for _, k := range keys {
rawdata, err := rt.db.Get(k) rawdata, err := rt.db.Get(k)
if err != nil { if err != nil {
panic(err) return nil, err
} }
c, err := RawdataToCid(MEthTxReceiptTrie, rawdata, multihash.KECCAK_256) c, err := RawdataToCid(MEthTxReceiptTrie, rawdata, multihash.KECCAK_256)
if err != nil { if err != nil {

View File

@ -24,7 +24,6 @@ import (
"github.com/multiformats/go-multihash" "github.com/multiformats/go-multihash"
"github.com/ethereum/go-ethereum/core/types" "github.com/ethereum/go-ethereum/core/types"
"github.com/ethereum/go-ethereum/rlp"
) )
// EthTxTrie (eth-tx-trie codec 0x92) represents // EthTxTrie (eth-tx-trie codec 0x92) represents
@ -61,9 +60,8 @@ func DecodeEthTxTrie(c cid.Cid, b []byte) (*EthTxTrie, error) {
// decodeEthTxTrieLeaf parses a eth-tx-trie leaf // decodeEthTxTrieLeaf parses a eth-tx-trie leaf
//from decoded RLP elements //from decoded RLP elements
func decodeEthTxTrieLeaf(i []interface{}) ([]interface{}, error) { func decodeEthTxTrieLeaf(i []interface{}) ([]interface{}, error) {
var t types.Transaction t := new(types.Transaction)
err := rlp.DecodeBytes(i[1].([]byte), &t) if err := t.UnmarshalBinary(i[1].([]byte)); err != nil {
if err != nil {
return nil, err return nil, err
} }
c, err := RawdataToCid(MEthTx, i[1].([]byte), multihash.KECCAK_256) c, err := RawdataToCid(MEthTx, i[1].([]byte), multihash.KECCAK_256)
@ -73,7 +71,7 @@ func decodeEthTxTrieLeaf(i []interface{}) ([]interface{}, error) {
return []interface{}{ return []interface{}{
i[0].([]byte), i[0].([]byte),
&EthTx{ &EthTx{
Transaction: &t, Transaction: t,
cid: c, cid: c,
rawdata: i[1].([]byte), rawdata: i[1].([]byte),
}, },
@ -135,7 +133,7 @@ func (tt *txTrie) getNodes() ([]*EthTxTrie, error) {
for _, k := range keys { for _, k := range keys {
rawdata, err := tt.db.Get(k) rawdata, err := tt.db.Get(k)
if err != nil { if err != nil {
panic(err) return nil, err
} }
c, err := RawdataToCid(MEthTxTrie, rawdata, multihash.KECCAK_256) c, err := RawdataToCid(MEthTxTrie, rawdata, multihash.KECCAK_256)
if err != nil { if err != nil {