- 15 Jan, 2022 11 commits
-
-
Matthew Slipper authored
bss: split up SubmitBatchTx method in Driver iface
-
Conner Fromknecht authored
Previously it was being logged every time we modified the gas price. Additionally, we log the raw byte length rather than tx.Size(). The latter returns a float value of type StorageSize, which explains why the metrics haven't been indicating actual byte values.
-
Conner Fromknecht authored
-
Conner Fromknecht authored
The current interface supports only one method for both crafting and publishing a batch transaction, SubmitBatchTx. Currently this is being executed on each new gas price that the txmgr commands, implying we are doing a lot of extra work to rederive batches. In addition, much our instrumentation lives inside this method, meaning that the they are also being recorded multiple times per transaction. When we get to processing larger batches on Kovan and Mainnet, this could also become a resource bottleneck. This commit remedies all of the above issues by splitting out the transaction crafting process from the publication. A new method, CraftBatchTx, is added to the Driver interface. This method is responsible for creating a fully formed transaction, but does not publish it. The responsibility of SubmitBatchTx is now modified to take an predefined transaction, i.e. created by CraftBatchTx, overwrite the supplied gas price, and publish. In this way, this expensive call to build batches can be done once before handing the transaction of the txmgr.
-
Conner Fromknecht authored
fix(batch-submitter): clear state root batches
-
Conner Fromknecht authored
Fixes a bug where both the sequencer and proposer main loops were attempting to clear the pending transactions from the batch-tx submitter's wallet. The impact is that we may have been overspending on fees due to conflicting/reverting state batches. However the impact overall should be minor given the relative size of state batches in comparison to tx-batches.
-
Matthew Slipper authored
feat: implement clear pending txs for go batch submitter
-
Conner Fromknecht authored
-
Conner Fromknecht authored
-
Conner Fromknecht authored
-
Conner Fromknecht authored
-
- 14 Jan, 2022 14 commits
-
-
smartcontracts authored
feat: L2Provider test scaffold
-
Matthew Slipper authored
feat(proxyd): Support immutable RPC caching
-
inphi authored
-
inphi authored
-
inphi authored
-
inphi authored
-
inphi authored
-
inphi authored
-
inphi authored
-
inphi authored
-
inphi authored
-
inphi authored
-
inphi authored
-
inphi authored
-
- 13 Jan, 2022 3 commits
-
-
Mark Tyneway authored
Makes sure that the Default sender is address(0)
-
Indeavr authored
-
Indeavr authored
-
- 12 Jan, 2022 3 commits
-
-
Matthew Slipper authored
feat: add BatchPruneCount metric
-
Indeavr authored
-
Conner Fromknecht authored
This metric gives insight into how many times a batch is pruned to meet the required MaxL1TxSize.
-
- 11 Jan, 2022 7 commits
-
-
Matthew Slipper authored
go/proxyd: Add request/response payload size metrics
-
inphi authored
-
Mark Tyneway authored
l2geth: update timestamp logic
-
Mark Tyneway authored
-
Mark Tyneway authored
Update the assertion to not expect that the timestamps are exactly equal but instead assert that the values are within 5%. This is because now the timestamps in L2 no longer correspond to L1 timestamps and may be updated arbitrarily by the sequencer.
-
Mark Tyneway authored
-
Mark Tyneway authored
This commit updates the timestamp updating logic such that `time.Now` is used instead of relying on L1 timestamps. This gives a higher fidelity for the `TIMESTAMP` opcode as well as makes the time on L2 be closer to the time on L1. L1 to L2 transactions no longer have the property of having the same timestamp on L2 as the timestamp of the L1 block they were included in. This should be able to be turned on without needing hardfork logic as replicas should always accept the timestamp that the sequencer sets. The sequencer is a trusted entity in the existing implementation and it is expected that the sequencer will become more trustless in future iterations of the protocol. This change is added to improve both UX and devex. Users are confused by the timestamps on Etherscan being ~15 minutes behind. This is due to the timestamps being set based on L1 block numbers, and the system only pulls L1 data once a secure amount of PoW is placed on top. Developers would like the timestamps to have a higher fidelity and be closer to the timestamps on L1.
-
- 10 Jan, 2022 2 commits
-
-
Matthew Slipper authored
go/batch-submitter: Metrics updates
-
Matthew Slipper authored
- Renames a couple of metrics to include their units. - Adds histogram buckets to `num_elements_per_batch`. - Changes `batch_size_bytes` to a summary. - Changes a couple of metrics to be gauges rather than counters.
-