Skip to content

Flags and interfaces for historical RPC requests#12

Merged
maurelian merged 2 commits intooptimism-historyfrom
handle-historical-rpc
Oct 18, 2022
Merged

Flags and interfaces for historical RPC requests#12
maurelian merged 2 commits intooptimism-historyfrom
handle-historical-rpc

Conversation

@maurelian
Copy link
Copy Markdown
Contributor

@maurelian maurelian commented Oct 17, 2022

Description

This PR builds on #10.

Adds two methods to the EthAPIBackend and LesApiBackend:

  • GetSequencerRPCService
  • GetGenesis

These methods will be used in a future PR to support redirecting pre-bedrock blocks to a historical node.

@maurelian maurelian force-pushed the handle-historical-rpc branch 2 times, most recently from 45d2c26 to 362c8fb Compare October 17, 2022 19:45
@maurelian maurelian marked this pull request as ready for review October 17, 2022 19:50
Copy link
Copy Markdown
Contributor

@protolambda protolambda left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, sorry about a few nits. And the PR this is based on needs to target the optimism-history dev branch.

@maurelian maurelian force-pushed the cli/rollup-historicalhttp branch 3 times, most recently from cd822c9 to 286d249 Compare October 18, 2022 15:36
Adds GetGenesis and GetSequencerRPCService methods to the
APIs so that they can be used to redirect historical
RPC calls.
@maurelian maurelian force-pushed the handle-historical-rpc branch from 4156bb6 to 38c9ffa Compare October 18, 2022 16:18
Base automatically changed from cli/rollup-historicalhttp to optimism-history October 18, 2022 17:30
@maurelian maurelian changed the title Handle historical RPC requests Flags and interfaces for historical RPC requests Oct 18, 2022
@maurelian maurelian merged commit ca15799 into optimism-history Oct 18, 2022
@maurelian maurelian deleted the handle-historical-rpc branch October 18, 2022 17:51
mmontour1306 pushed a commit to bobanetwork/v3-op-geth that referenced this pull request Oct 21, 2022
)

If the `st.gas` is not set, no gas is provided to the EVM resulting
in an immediate Out Of Gas error. While deposits do not affect the
gas pool, the EVM still expects to do gas metering.

Initial gas is still done for metering, but should be not used
for deposit transactions.
protolambda pushed a commit that referenced this pull request Nov 4, 2022
If the `st.gas` is not set, no gas is provided to the EVM resulting
in an immediate Out Of Gas error. While deposits do not affect the
gas pool, the EVM still expects to do gas metering.

Initial gas is still done for metering, but should be not used
for deposit transactions.
protolambda added a commit that referenced this pull request Feb 22, 2023
This commit squashes the op-geth fork history into a more maintainable
diff for rebasing upon upstream geth.

reference-optimistic-geth changes (origins of op-geth in early Bedrock
development stage):
- Deposit TX Type
- Enable deposit tx in EVM/tx pool
- Change deposit nonce to not be the max nonce
- Extend PayloadAttributesV1 with a Transactions field
- Force deposits at the start of each L2 block
- Fix height check
- noTxPool flag, reproduce block in verifier mode without tx pool interference
- Fix RPC json marshalling (ref op-geth PR 4)
- Deposit txs block height check in block body validation (ref op-geth PR 5)
- core: do not try to reinject deposit txs into tx-pool (ref-op-geth PR 6)
- deposit source hash field instead of L2 block height and tx index combination
- Include invalid deposits, rewind state, but always persist mint (#10)
- Provide gas to Call/Create in deposit transactions (#12)
- Add docker builds (ref-op-geth PR 16, 17)
- Don't panic on deposit transaction signature values or chain ID (ref-op-geth PR 18)
- core: Add version to DepositTx (ref-op-geth PR 19)
- Enable Geth build/lint/test in CircleCI (ref-op-geth PR 23)
- core: Include guaranteed gas in the gas pool (ref-op-geth PR 21)
- core: handle base fee, l1 availability fee, tx fee (ref-op-geth PR 27)
- fix: deposit tx hash
- fix l1 fee cache, rpc, tracing and tx pool
- core: remove deposit-tx sub-type (a.k.a. deposit version byte)
- eth/catalyst: allow engine user to reorg own chain
- miner: restore ability to reorg deep as block builder
- params: print Optimism consensus type in banner
- core/types: remove unused protected() method, see upstream PR 23376
- core: do not mutate original balance value in tx pool l1 cost adjustment
- core: subtract deposit gas from pool, so other txs do not use the same gas. And fail tx processing if deposits reach gas limit
- core/types: deposits do not tip, avoid basefee subtraction
- Unmeter the L1 Attributes Transaction
- miner: handle force tx errors as critical, clean up diff
- ci: Switch branch
- eth,miner: return STATUS_INVALID when failing to process forced transactions in request (ref-op-geth PR 40)
- verifier: forward tx to sequencer based on flag
- txpool: add flag to disable tx gossip (ref-op-geth PR 42)
- Add op-geth version in addition to geth version (ref-op-geth PR 43)
- ci: CircleCI improvements (ref-op-geth PR 44)
- Rename to op-geth
- Build latest tag on optimism branch

op-geth changes:
- Expose cache config in simulated backend (#2)
- Add EIP-1559 parameters
- eth/catalyst: update payload id computation (#1)
- make eip1559 configurable (#4)
- post-merge network should not log warnings about missing transition information (#5)
- Make the simulator more configurable (#6)
- fix OPB-6 - IsDepositTx check instead of artificial nonce value check (#7)
- Simulated backend - enable proof of stake consensus type and fix performance issue (#8)
- accounts: simulated backend consensus engine option and immediate tx indexing
- consensus/beacon: recognize all blocks as reached TTD with 0 TTD in chain config
- Add --rollup.historicalhttp CLI flag and fix backend iface
- Flags and interfaces for historical RPC requests (#12)
- Redirect historical RPC requests (#13)
- Use the pre-existing ethereum.NotFound error (#18)
- Add historical endpoint to TraceBlockByNumber and TraceBlockByHash (#19)
- Add historical endpoint to TraceTransaction (#20)
- Add historical endpoint to TraceCall (#21)
- optimism: fee params from info txi, update l1 cost func GPO params read (#15)
- add hardcoded addresses for fee payouts (#23)
- dynamic gas limit via engine API (#22)

Co-authored-by: Matthew Slipper <me@matthewslipper.com>
Co-authored-by: Joshua Gutow <jgutow@oplabs.co>
Co-authored-by: protolambda <proto@protolambda.com>
Co-authored-by: Mark Tyneway <mark.tyneway@gmail.com>
Co-authored-by: Maurelian <maurelian@protonmail.ch>
joey0612 pushed a commit to joey0612/op-geth that referenced this pull request Feb 20, 2024
…imism#12)

* ci: refactor docker release workflow and image metadata

* remove duplicate

* triggered by all tags
kangsorang pushed a commit to kroma-network/7560-geth that referenced this pull request Oct 15, 2024
blockchaindevsh added a commit to blockchaindevsh/op-geth that referenced this pull request Oct 28, 2024
…dateTransactionWithState

make ValidateTransactionWithState also consider sgt balance
blockchaindevsh added a commit to blockchaindevsh/op-geth that referenced this pull request Apr 28, 2025
kchojn referenced this pull request in compose-network/op-geth Oct 14, 2025
…ttempts to improve traceability (#12)

* chore(api_backend.go): remove unused testCIRCMessageSend function to clean up code
feat(api_backend.go): add debug logging for transaction chain ID matching to aid in troubleshooting
style(ssv.go): enhance logging in OnEnter and OnExit methods to include additional context for better traceability
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.

3 participants