Support EIP-2930 #64

Closed
opened 2021-04-15 17:47:51 +00:00 by i-norden · 4 comments
Member

Firstly just assert we can index EIP-2930 txs as normal, without the additional fields/rows and with no issues in storing them as IPLDs.

Secondly, adjust the code and database schemas to decode and index the new access list.

Firstly just assert we can index EIP-2930 txs as normal, without the additional fields/rows and with no issues in storing them as IPLDs. Secondly, adjust the code and database schemas to decode and index the new access list.
Author
Member

We are running into error like this until we support it: statediff.Service.WriteLoop: processing error block height=12323727 error="error creating IPLD nodes from block and receipts: wrong transaction hash computed" worker=8

This is because for 2930 txs it is not just the RLP encoded tx that is stored in the trie, but rather 0x01 || RLP(tx) so the EncodeRLP() method does not work any more and we need to use MarshalBinary().

The same is true for receipts, except we need to add the MarshalBinary() method first.

We are running into error like this until we support it: `statediff.Service.WriteLoop: processing error block height=12323727 error="error creating IPLD nodes from block and receipts: wrong transaction hash computed" worker=8` This is because for 2930 txs it is not just the RLP encoded tx that is stored in the trie, but rather `0x01 || RLP(tx)` so the `EncodeRLP()` method does not work any more and we need to use `MarshalBinary()`. The same is true for receipts, except we need to add the `MarshalBinary()` method first.
Author
Member

Addressed in #68

Addressed in #68
Owner
https://vulcanize.slack.com/archives/CGY8XDDNZ/p1620102149463900
Author
Member

I think we can close this now?

I think we can close this now?
Sign in to join this conversation.
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: cerc-io/go-ethereum#64
No description provided.