Skip to content

Conversation

@AryaLanjewar3005
Copy link
Collaborator

Description

Fixed: traceTransaction Failure for Synthetic Transactions

Summary

This PR fixes an issue where the traceTransaction function in rpc/backend/tracing.go was failing to handle synthetic transactions such as MsgDeployUEA, MsgMintPC, and MsgExecutePayload.

Issue

The traceTransaction function was originally designed to process only transactions of type MsgEthereumTx. As a result, synthetic transactions were completely ignored during trace execution, leading to missing traces and incomplete results.

Additionally, this caused a predecessor issue — during tracing, the system re-executes all transactions preceding the target one. Since only MsgEthereumTx transactions were considered, predecessors like DeployUEA and MintPC were skipped when tracing a MsgExecutePayload, resulting in execution failures for batch transactions.

Fix

The following changes were made to resolve the issue:

  1. Utilized existing parsing functions to extract additional data from synthetic transactions and reconstruct them to follow the MsgEthereumTx format.
  2. Implemented a helper function to reconstruct predecessor synthetic transactions using msgIndex.
  3. Applied minor updates in the push-chain-node repository related to gas price handling to support these changes.

Result

With this fix:

  • traceTransaction now correctly handles both standard and synthetic transactions.
  • Predecessor reconstruction works seamlessly for batch transactions.
  • Full trace execution is achieved for all supported message types (except for MintPC but it will be removed anyways)

Author Checklist

All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.

I have...

  • tackled an existing issue or discussed with a team member
  • left instructions on how to review the changes
  • targeted the feat/derived-tx branch

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant