Commit graph

548 commits

Author SHA1 Message Date
Péter Garamvölgyi
b3d0f164ea
feat: add new configuration (#526)
* add new configuration

* update

* update

* bump version

* remove todo
2023-10-08 13:29:09 +02:00
Péter Garamvölgyi
68697b0fee
fix: use non-overlapping DB prefix for L1 messages (#532)
* fix: use non-overlapping db prefix for L1 messages

* bump version
2023-10-04 19:28:26 +02:00
Nazarii Denha
fea7d94ebd
Fix/config fix small bug and set default maxBlockRange to -1 to not use it (#529)
* feat: configure max block range for eth_getLogs (#521)

* configure max block range for eth_getLogs

* bump version

* address comments, add test

* set default value

* address comments

* fix golint

* Update cmd/utils/flags.go

Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>

---------

Co-authored-by: colinlyguo <colinlyguo@scroll.io>
Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>

* set dafault maxblockrange to -1 and fix nil pointer bug

* update version

* change error logic

* check for range in filter

* Update eth/ethconfig/config.go

Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>

* adjust error message

* fix duplicate version

---------

Co-authored-by: colinlyguo <colinlyguo@scroll.io>
Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-10-04 19:18:52 +02:00
Steven
d4301334b8
fix(libzkp): upgrade libzkp to v0.9.5 (#531)
* Upgrade libzkp to `v0.9.5`.

* bump version

---------

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-10-04 16:49:19 +02:00
Péter Garamvölgyi
df41822bcf
fix: re-enable CCC light mode (#530)
fix: re-enable light mode
2023-10-04 14:01:55 +02:00
Steven
7cebee85a8
fix(libzkp): upgrade libzkp to v0.9.4 and add ccc SetLightMode (#522)
* Upgrade to prover `v0.9.4`, and add `SetLightMode` function.

* set ccc light_mode = false for validator

* fix

* bump version

---------

Co-authored-by: Zhang Zhuo <mycinbrin@gmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-10-03 15:42:54 +02:00
Péter Garamvölgyi
736cf7b1fb
Revert "feat: configure max block range for eth_getLogs (#521)" (#528)
This reverts commit de5aebdad5.
2023-10-03 15:07:43 +02:00
Nazarii Denha
de5aebdad5
feat: configure max block range for eth_getLogs (#521)
* configure max block range for eth_getLogs

* bump version

* address comments, add test

* set default value

* address comments

* fix golint

* Update cmd/utils/flags.go

Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>

---------

Co-authored-by: colinlyguo <colinlyguo@scroll.io>
Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>
2023-10-02 17:11:50 +02:00
Péter Garamvölgyi
751dbda234
feat: add metrics in L1 message iterator (#527)
* feat: add metrics in L1 message iterator

* add L1 message size metric
2023-10-01 14:48:59 +02:00
Péter Garamvölgyi
fe8232a40f
fix(worker): short-circuit l1 message iteration (#525)
* fix(worker): short-circuit l1 message iteration

* Update core/rawdb/accessors_l1_message_test.go

Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>

---------

Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>
2023-09-29 21:16:37 +02:00
Péter Garamvölgyi
abcf48f20c
fix(ccc): revert light mode (#524)
* Revert "feat: use light_mode = false for block ccc (#519)"

This reverts commit a51434da5a.

* bump version
2023-09-27 16:03:37 +02:00
Zhang Zhuo
a51434da5a
feat: use light_mode = false for block ccc (#519) 2023-09-27 07:30:44 +01:00
Steven
fa0be69a3f
fix(libzkp): upgrade libzkp to v0.9.2 (fix ccc panic CodeNotFound) (#520)
Upgrade libzkp to `v0.9.2` (fix ccc bug).
2023-09-19 10:41:51 +08:00
Péter Garamvölgyi
93a9497d75
refactor(worker): order L1 messages by queue index (#512)
* refactor(worker): order L1 messages by queue index

* bump version

* bump version
2023-09-18 10:34:51 +02:00
Steven
5b787be12c
fix(libzkp): upgrade to use prover v0.9.1 (#517)
Upgrade libzkp to use prover `v0.9.1`.
2023-09-17 08:30:23 +08:00
Steven
2b22bf9138
fix(libzkp): upgrade to use prover v0.9.0 (#513) 2023-09-14 19:28:24 +08:00
Péter Garamvölgyi
530830a01c
fix(worker): check gas limit before running ccc (#511)
Co-authored-by: maskpp <maskpp266@gmail.com>
2023-09-13 16:19:14 +02:00
iczc
734021fc27
p2p: limit ping requests from a single peer (#510)
* p2p: move ping handling into pingLoop goroutine (#27887)

Moving the response sending there allows tracking all peer goroutines
in the peer WaitGroup.

* bump version

---------

Co-authored-by: Felix Lange <fjl@twurst.com>
2023-09-12 19:27:16 +02:00
Péter Garamvölgyi
9c1433b62a
fix(trace): use correct roots in trace of block with one transaction (#508)
fix: use correct roots in trace of block with one transaction
2023-09-11 12:13:50 +02:00
Péter Garamvölgyi
1d824f42bd
fix(ccc): fix CCC build errors (#506) 2023-09-08 22:18:21 +08:00
Steven
7d79f27e6f
fix (libzkp): check tx num when CCC ErrUnknown error occurred (#505)
* Check tx num for CCC ErrUnknown error.

* Update worker.go

* Small fix.

* Update

* Fix log.

* Update version.

* Update miner/worker.go

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>

* Update according to review.

* Fix to return 0 for uint64.

* Add `tcount` to mock CCC, and function `SetTxNum`.

* refactor

* fix

* add comments

---------

Co-authored-by: Zhang Zhuo <mycinbrin@gmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
2023-09-08 13:17:02 +02:00
HAOYUatHZ
dade96d416
fix(rawdb, api): fix rawdb.writeSkippedTransaction & api.GetSkippedTransaction (#503)
* fix(rawsdb): fix `writeSkippedTransaction`

* Update version.go

* minor

* clean up
2023-09-07 15:35:04 +08:00
Steven
c75ebdbdb0
fix(libzkp): upgrade to v0.8.2 (#504) 2023-09-07 14:12:03 +08:00
Steven
fde2c3b6a7
fix: libzkp v0.8.1 (#502) 2023-09-07 11:11:31 +08:00
Xinran
293deff873
refactor(ccc): throw error instead of panic for recognized errors (#499) 2023-09-06 15:15:36 +08:00
HAOYUatHZ
0b6c3be40d
feat(api/rawdb): allow storing traces for skipped txs (#500) 2023-09-05 11:03:15 +08:00
Zhang Zhuo
2d9d48d463
fix(trace): record account proof for ErrContractAddressCollision (#488)
* fix(trace): record account proof for ErrContractAddressCollision

* bump version

* fix memory reading

* bump version

---------

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
2023-09-04 04:05:42 +00:00
Zhang Zhuo
c60fa3a643
fix(trace): fix memory trace size (#497)
* core/vm: for tracing, do not report post-op memory

* fmt

* bump version

---------

Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-09-01 17:01:53 +08:00
Zhang Zhuo
d45613f4b5
fix(trace): more consistent invalid opcode trace (#487)
* fix: more consistent invalid opcode trace

* Update version.go

---------

Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-31 15:30:22 +02:00
Xinran
24d856758b
feat(metrics): add skipped txs metrics for miner (#494) 2023-08-31 11:04:25 +08:00
Zhang Zhuo
ef328dbb6e
fix(modexp): disallow len of 0x8000000000000000000000000000000000000000000… (#496)
* modexp: disallow len of 0x8000000000000000000000000000000000000000000000000000000000000000

* minor

---------

Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
2023-08-31 10:33:31 +08:00
Zhang Zhuo
63cbb77cdc
chore(ccc): v0.7.6: fix: if rws reaches limit, stop early (#495)
* chore(ccc): v0.7.6: fix: if rws reaches limit, stop early

* Update version.go

---------

Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
2023-08-30 15:07:10 +08:00
HAOYUatHZ
ea3a3c9a5d
fix(miner): fix repeatedly processing dropped txs in a new block (#491)
* squash

* improve comments

* Remove tx (#493)

* force drop

* minor

* store skipped L2 tx for `circuitcapacitychecker.ErrUnknown`

* Update miner/worker.go

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>

* add lock

* use mu

---------

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-30 14:38:04 +08:00
HAOYUatHZ
f883dcdc21
docs(ccc): add more logs for skipping msg (#490)
* docs(ccc): add more logs for skipping msg

* bump version

* format codes

* improve
2023-08-29 08:05:27 +08:00
HAOYUatHZ
d650299a36
feat(miner): consider l1msg in txCount (#486)
* feat(miner): consider l1msg in txCount

* refactor

* tweak

* fix comments

* fix unit test

* set chainConfig.Scroll.MaxTxPerBlock in l1 message test

* add a skipped tx in TestAcceptableTxlimit

* add l1 skipped msg in test

* fix unit test

* fix unit test

* Update miner/worker.go

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>

* revert some test changes

* tweak

* bump version

---------

Co-authored-by: colinlyguo <colinlyguo@scroll.io>
Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-27 00:08:04 +08:00
Péter Garamvölgyi
7de261b1be
feat: store skipped transactions in local db (#467)
* feat: store skipped txs in local db

* bump version

* bump version

* fix test

* include L2 txs in skipped index

* goimports

* rename more

* bump version

* fix missed renames

* fix the bug when calculating l2TxCount. (#479)

* fix bug when calculate l2 tx count

* Update version

* fix: exclude L1 message from block payload size validation (#476)

* fix: exclude L1 message from block payload size validation

* fix the bug when calculating l2TxCount. (#479)

* fix bug when calculate l2 tx count

* Update version

* bump version

---------

Co-authored-by: maskpp <maskpp266@gmail.com>

* fix: update row estimation with scroll-prover `v0.7.2` (#475)

* Fix row estimation.

* Update libzkp.

* more

* prepare

* finish

* upgrade

* bump version

* fix tests

* Update to scroll-prover `v0.7.2`.

* fix tests

* Update miner/worker.go

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>

* Update miner/worker.go

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>

* Reset ccc when skips first tx.

* do not unnecessarily skip L1 message

* fix ccc reset and improve code readability

* seal block on circuitcapacitychecker.ErrUnknown

---------

Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>

* refactor: simplify ccc revert to snapshot (#480)

* simplify ccc revert to snapshot

* Update version.go

---------

Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>

* feat: use --gcmode=archive and --cache.noprefetch=true by default (#482)

* feat: use --gcmode=archive and --cache.noprefetch=true by default

* refuse to start with invalid config

* lint

* lint

* feat(sdk): support compressed response (#469)

* enable use compression algorithm

* fix ci

* Just enable decode compressed content at ethclient

* fix comments

---------

Co-authored-by: Haichen Shen <shenhaichen@gmail.com>

* fix: disable pruning and prefetch if not flags are provided (#483)

Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>

* fix: update libzkp to use scroll-prover `v0.7.5` (#484)

* Update libzkp to use scroll-prover `v0.7.5`.

* Update version.

* address comments

* bump version

* nit

---------

Co-authored-by: maskpp <maskpp266@gmail.com>
Co-authored-by: Steven <asongala@163.com>
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
Co-authored-by: iczc <iczcalan@gmail.com>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>
2023-08-25 15:41:05 +02:00
Steven
637cb3777f
fix: update libzkp to use scroll-prover v0.7.5 (#484)
* Update libzkp to use scroll-prover `v0.7.5`.

* Update version.
2023-08-25 07:33:39 +02:00
Péter Garamvölgyi
b0657a7e45
fix: disable pruning and prefetch if not flags are provided (#483)
Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>
2023-08-24 18:15:45 +02:00
Péter Garamvölgyi
e93930d6ba
feat: use --gcmode=archive and --cache.noprefetch=true by default (#482)
* feat: use --gcmode=archive and --cache.noprefetch=true by default

* refuse to start with invalid config

* lint

* lint
2023-08-24 11:51:20 +02:00
iczc
d02a410b36
refactor: simplify ccc revert to snapshot (#480)
* simplify ccc revert to snapshot

* Update version.go

---------

Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
2023-08-24 10:30:00 +08:00
Steven
6992cfe8c5
fix: update row estimation with scroll-prover v0.7.2 (#475)
* Fix row estimation.

* Update libzkp.

* more

* prepare

* finish

* upgrade

* bump version

* fix tests

* Update to scroll-prover `v0.7.2`.

* fix tests

* Update miner/worker.go

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>

* Update miner/worker.go

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>

* Reset ccc when skips first tx.

* do not unnecessarily skip L1 message

* fix ccc reset and improve code readability

* seal block on circuitcapacitychecker.ErrUnknown

---------

Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-23 14:27:00 +02:00
Péter Garamvölgyi
727f88bc5f
fix: exclude L1 message from block payload size validation (#476)
* fix: exclude L1 message from block payload size validation

* fix the bug when calculating l2TxCount. (#479)

* fix bug when calculate l2 tx count

* Update version

* bump version

---------

Co-authored-by: maskpp <maskpp266@gmail.com>
2023-08-23 14:06:06 +02:00
maskpp
b65f42b41a
fix the bug when calculating l2TxCount. (#479)
* fix bug when calculate l2 tx count

* Update version
2023-08-23 13:46:28 +02:00
Péter Garamvölgyi
e85c70c156
fix: free raw result returned from CCC (#477) 2023-08-22 11:27:17 +08:00
Ho
be1600f078
refactor(trace): wrap the core routine in CreateTraceEnv (#460) 2023-08-20 18:39:20 +08:00
Péter Garamvölgyi
d4597e369e
fix: enable worker but skip CCC on follower nodes (#474)
* fix: enable worker but skip CCC on follower nodes

* fix worker snapshot

* fix worker snapshot
2023-08-19 15:51:49 +02:00
Haichen Shen
e8d9d60cf0
fix: use FeeVault address in the EVM BlockContext (#473)
* fix: use Feevault address in the EVM BlockContext

* bump version

* revert format change

* fix
2023-08-19 14:01:14 +02:00
Péter Garamvölgyi
ad4ddbf60f
fix: disable commitNewWork on follower nodes (#472)
fix: disable mining on follower nodes
2023-08-18 16:06:15 +02:00
Zhang Zhuo
b2bd2838ac
fix(ccc): fix poseidon circuit row estimation under-estimation (#470)
* upgrade ccc: better row estimation

* update cargo lock

* update version
2023-08-18 10:41:13 +02:00
Péter Garamvölgyi
81dc3649a8
fix: seal block if single tx overflows (#468) 2023-08-18 07:09:53 +02:00
Péter Garamvölgyi
626ae08ebf
fix: update worker nextL1MsgIndex for unknown errors (#464)
* fix: update worker nextL1MsgIndex for strange errors

* more tests

* bump version

* refactor: add more context to tracing failure (#466)

* bump version

* bump version
2023-08-17 19:55:56 +02:00
Steven
7b8c20f3c2
fix: upgrade libzkp necessary for ccc (normalize row usage) (#461)
* Upgrade libzkp.

* Upgrade to scroll-prover `v0.5.20`.
2023-08-17 18:10:43 +08:00
Péter Garamvölgyi
3027111956
refactor: add more context to tracing failure (#466) 2023-08-17 07:25:03 +02:00
maskpp
6195e2e77d
fix(trace): fix contract call's ByteCode (#465)
* fix bug

* update version
2023-08-14 18:09:39 +08:00
Péter Garamvölgyi
25fe3ba69a
feat: add startL1QueueIndex field to traces (#463)
* feat: include startL1QueueIndex in traces

* fix

* update example
2023-08-12 11:07:36 +08:00
Steven
fcd7212b60
fix: upgrade libzkp to use scroll-prover v0.5.10 (#454)
Update libzkp to use scroll-prover `v0.5.10`.
2023-08-08 15:07:18 +02:00
Péter Garamvölgyi
4175f65734
fix: skip payload size check for L1 messages (#457) 2023-08-08 05:50:45 +02:00
Péter Garamvölgyi
eda99eec35
fix: skip L1 message that leads to gas limit exceeded (#455)
* skip L1 message that leads to gas limit exceeded

* add test

* do not skip l1 messages from the same account
2023-08-08 01:59:11 +02:00
HAOYUatHZ
b428fa1339
fix(trace): fix commit state when tracing (#451)
* fix(trace): fix commit state when tracing

* bump version
2023-08-07 14:15:21 +08:00
Steven
5c4530cd2a
fix: upgrade libzkp to use scroll-prover v0.5.6 (#450)
Upgrade libzkp to use scroll-prover `v0.5.6`.
2023-08-07 12:25:08 +08:00
Péter Garamvölgyi
805676e227
feat: Update Sepolia genesis (#449)
update Sepolia genesis
2023-08-06 19:25:10 +02:00
HAOYUatHZ
9997324b0d
feat(libzkp): update Cargo.lock (#448)
* feat(libzkp): update Cargo.lock

* update version

---------

Co-authored-by: Your Name <you@example.com>
2023-08-07 01:03:31 +08:00
xkx
805a2f415e
fix(libzkp): fix ethers-core dep (#447)
* fix the ethers-core dep in libzkp crate

* bump version

---------

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-07 00:47:09 +08:00
Péter Garamvölgyi
e70a07cc98
fix: Initialize nextL1MsgIndex before commit (#444)
* initialize nextL1MsgIndex before commit

* bump version

---------

Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
2023-08-06 21:48:03 +08:00
Péter Garamvölgyi
69dd39afba
fix: do not overwrite correct L1 index on signer startup (#443)
* fix signer worker

* add logs

* bump version

* Fix
2023-08-06 14:22:02 +02:00
Steven
8f431845c3
fix: upgrade libzkp to use scroll-prover v0.5.3 (#442)
Upgrade libzkp to use scroll-prover `v0.5.3`.
2023-08-06 20:02:51 +08:00
vyzo
94190f0163
feat: sepolia flag and config (#377)
* add sepolia flag and configuration

* bump patch version

* Update params/version.go

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>

* Update params/config.go

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>

* Update params/config.go

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>

* explicitly set l1.confirmations and l1.sync.startblock for sepolia

* update config

---------

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-04 19:45:39 +02:00
HAOYUatHZ
86c7cbe020
fix(ccc): remove debug-assertions in release (#441) 2023-08-04 16:26:15 +08:00
Ho
6b20ce624f
fix: correctly initialize ZkTrieTracer for ccc (#440)
* fix issue for zktrieTracer not inited

* bump version

---------

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-04 07:54:55 +02:00
Péter Garamvölgyi
cf42026e58
fix: do not skip QueueIndex 0 in worker (#439)
fix: do not skip QueueIndex 0
2023-08-04 06:07:34 +02:00
Péter Garamvölgyi
26eeb40ea3
fix: use correct hash for ccc write in worker (#438) 2023-08-04 04:22:47 +02:00
Péter Garamvölgyi
5611b8296a
refactor: add more ccc logs (#436)
* refactor: add more ccc logs

* format hashes

* more logs

* more logs
2023-08-03 18:16:32 +02:00
Péter Garamvölgyi
f87eb3127a
fix: do not reuse same snapshot twice (#435)
fix: create new snapshot
2023-08-03 16:45:45 +02:00
HAOYUatHZ
5b0b08b104
fix(miner): fix trace for empty block (#434)
* fix(miner): fix trace for empty block

* update version

* try fix

* improve docs
2023-08-03 16:19:52 +02:00
Péter Garamvölgyi
37ef8cad30
fix: ccc debug log Rust syntax (#433)
* fix ccc debug log syntax

* fix ccc debug log syntax
2023-08-03 13:56:24 +02:00
Péter Garamvölgyi
42e17229d5
fix: decode traces as UTF-8 string (#432)
decode traces as UTF-8 string
2023-08-03 13:21:30 +02:00
HAOYUatHZ
ef67ff8bbb
fix(miner): fix acc_rows for empty block (#431)
* Revert "fix(worker): set row consumption for genesis and empty blocks (#428)"

This reverts commit b51736fd3c.

* fix: fix accRows for empty block

* bump version

* remove log

* fix

* set default accRows as nil explicitly

* fix genesis block

* fix
2023-08-03 13:09:59 +02:00
Péter Garamvölgyi
21d430f018
feat: add ccc debug logs (#430)
add ccc debug logs
2023-08-03 16:11:09 +08:00
HAOYUatHZ
60e260b2f1
fix: fix block validator createTraceEnv (#429) 2023-08-03 15:56:11 +08:00
Péter Garamvölgyi
b51736fd3c
fix(worker): set row consumption for genesis and empty blocks (#428)
* fix: initialize row consumption for genesis and empty blocks

* bump version
2023-08-03 09:48:03 +02:00
HAOYUatHZ
4b2bbf6225
feat(rollup): update libzkp for new hash schema (#423) 2023-08-02 17:59:50 +08:00
Péter Garamvölgyi
a849722ba0
fix: expose -ccc flag on CLI (#424) 2023-08-02 10:34:19 +02:00
Péter Garamvölgyi
dbdc463006
refactor(ccc): log ccc error in Rust (#422)
log ccc error in Rust
2023-08-02 07:22:43 +02:00
Péter Garamvölgyi
96d12015e1
fix: decode subcircuit row usage as integer (#421)
* fix subcircuit row usage type

* bump version
2023-08-02 06:03:18 +02:00
Ho
11b35cd014
feat: upgrade zktrie to v0.6.0 (#403)
* add domain-spec poseidon hash

* add warning message for deprecated method

* update goimports

* update zktrie to v0.6

* fixes for upgrade

* resume deletion proof

* update alpha genesis since new hash sch eme

* dump zktrie to 0.6

* induce genesis block for scroll sepolia network

* Update version.go

---------

Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-02 10:54:41 +08:00
Nazarii Denha
7b75f163b0
feat(rpc): add scroll_getBlockByNumber (#413)
* add scroll_getBlockByNumber rpc api

* bump version

* fix

* bump version

* Update version.go

* Revert "Update version.go"

This reverts commit 1be1d9c4fdbb64254659ac193cffd23dbbacfb5e.

---------

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
2023-08-01 15:32:12 +02:00
HAOYUatHZ
22fec5714e
fix(rollup): fix error message and compile error (#416)
fix(rollup): fix compile error
2023-08-01 12:30:06 +02:00
HAOYUatHZ
2f9edf73ca
feat(rollup): add circuits capacity checker (#321)
* add proof for predeployed storages

* reverse inneeded code

* update for mainbranch merging

* add pertx storage trace

* dummy tx proof

* add txstorage trace

* add coinbase storage as trace

* enable (sync) tracing by default

* basic

* init cgo framework

* fix break loop

* integrate the right zkevm version (#323)

* finish rust codes

* use dylib (#325)

* flip

* ?

* use cdylib

* revert

* fix

* apply_tx

* rename

* fixing types

fixing types

fixing types

* clean up

* ExecutionResults (#328)

* filling

* filling

* more

* clean up

* filling

* coinbase

* add

* MPTWitness

* ExecutionResults WIP

* L1fee

L1fee

* sender

* to

* Failed & ReturnValue

* createdAcc & after

* remove MPTWitness

* txStorageTrace

* add FeeRecipient

* add StorageTrace

* fix FFI types

* better logger

* cargo fmt

* fix

* add build tags

* update Makefile

* fix library

* improve ld path

* correctly deal with circuit_capacity_checker returned result

* fix return value

* update cargo (#333)

* update cargo

* update

* update go

* refactor

* raname `circuits capacity checker` to `circuit capacity checker`

* some refactorings

* [Fix] storage proof generation in capacity checker (#348)

* make per-tx storage and deletion proof work

* format

* fix misplaced markdeletion

---------

Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>

* docker (#363)

* update Dockerfile

* build: update go version to 1.19

* update

* fix

* fix

* try

* simplify

* revert go version

update l2geth Dockerfiles

* fix

* fix coinbase

* fix (#369)

* format

* Update version.go

* address comments

* Capacity refactor (#374)

* init

* id

* support multiple instances

* fix id

* fix conflicts

* refactor to use same codes (#379)

* re-init

* WIP

* WIP

* refactor

* go

* minor

* fix storage proof of l1gas price oracle

* move 1

* move 2

* move 3

* move 4

* move 5

move 5

* move 6

move 6

* move 7

* move 8

* move 9

* move 10

* clean up

clean up

---------

Co-authored-by: Ho Vei <noelwei@gmail.com>

* finish basic

* minor

* config capacity check in block_validator (#380)

* init

* done

ref

* fix tests

fix tests

fix tests

fix tests

* add more comments

* apply_block

* improve logs

* cargo fmt

* Capacity big refactor (#383)

* CreateTraceEnv

* WIP

* draft

more

fix

* for test

* fortet

* clean up

* add more comments

* goimports -local github.com/scroll-tech/go-ethereum -w .

* fix typos

* attempt 1

* attempt 2

* attempt 3

* gogogo

* clean up

* fix

* fix

* rename

* minor

* fix

* minor

* minor

* improve doc

* use dedicated `checkCircuitCapacity` flag (#394)

* refactor

* fix

* add lock

* [feat] capacity checking: upgrade libzkp (#395)

* upgrade

* upgrade libzkp

* write RowConsumption (#396)

* write RowConsumption

* name alignments

* revert some formatting

* add lock to CircuitCapacityChecker in BlockValidator

* remove mutex pointer

* improve github workflow

* improve

* store row consumption in mining (#397)

* prepare

* finish

* add more logs

* mark `ApplyBlock` as ready

* update libzkp (#401)

* fix

* Capacity detail (#402)

* fix(block-validation): consider skipping in ValidateL1Messages (#405)

* fix(block-validation): consider skipping in ValidateL1Messages

* fix(block): consider skipping in L1MessageCount

* fix l1 validation tests

* fix NumL1Messages

* fix impl.go return types

fix

* better error handling (#407)

* add

add

* add

* add

* add

* add

* cargo fmt

* add

* update

* add

* WIP

* minor

* gogogo

* gogogo

* fix

* fix

* fix

* cargo clippy

* improve

* improve

* creation lock (#408)

* creation lock

* update

* Debug log (#409)

* add more logs

* more

* more

* fix

* improve

* Update cmd/utils/flags.go

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>

* refactor worker.commit()

* avoid re-calculate

* txpool ccc err handling (#411)

* more explicit error comments

* add more logs

* fix unnecessary commit

* add more logs

* fix `ineffassign`

* add more comments

* log id for `NewCircuitCapacityChecker` (#414)

add log to `NewCircuitCapacityChecker`

* Persist skip info for block where all L1 msgs are skipped (#415)

persist skip info for block where all L1 msgs are skipped

* Update version.go

---------

Co-authored-by: Ho Vei <noelwei@gmail.com>
Co-authored-by: Zhang Zhuo <mycinbrin@gmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-01 13:52:31 +08:00
Ho
134e1b8f92
feat&perf: reversed bit of key when persisting zktrie (#410)
* bit reverse when persisting zktrie

* fix according to review

* Update version.go

---------

Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
2023-07-31 16:13:12 +08:00
Nazarii Denha
a677ee3ccf
fix(ethapi): change scroll_getBlockByHash ethapi behaviour (#398)
* fix api behaviour

* update version

* not retrun error in ethclient

* add comment

* modify rowconsumption struct

* fix lint

* change naming
2023-07-20 00:10:34 +08:00
Nazarii Denha
3943547960
feat(rawdb&rpc): add block row consumption rpc (#388)
* add db api for rowconsumption

* add rpc api for block row consumption

* return nil if rc is is not known

* add method to sdk

* bump version

* small fix

* update version

---------

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-07-11 22:07:09 +08:00
Nazarii Denha
5eac3a73bc
feat(core/vm): modexp precompiled support also less than 32-bytes inputs (#393)
* modexp support 32-bytes or less inputs

* change revert string

* bump version

---------

Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-07-10 22:04:14 +08:00
Ho
2dcc60a082
fix(trace): fix storage proof of l1gas price oracle (#376)
* fix storage proof of l1gas price oracle

* Update version.go

* fix(trace): fix

---------

Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
2023-07-07 10:35:19 +08:00
HAOYUatHZ
8c5bf3069f
fix(trace): fix statesAffected in traceLastNAddressAccount (#367)
* fix(trace): fix

* Update version.go
2023-07-07 10:27:55 +08:00
HAOYUatHZ
3cf5ba882d
feat(trace): add per_tx_storage_trace (#372)
* add proof for predeployed storages

* reverse inneeded code

* update for mainbranch merging

* add pertx storage trace

* dummy tx proof

* add txstorage trace

* add coinbase storage as trace

* Update version.go

* address comments

---------

Co-authored-by: Ho Vei <noelwei@gmail.com>
2023-07-04 22:21:12 +08:00
Péter Garamvölgyi
38a6a1e964
fix: include L1MessageTx fields in transaction RPC result (#375)
* fix: include L1MessageTx fields in tx RPC result

* bump version
2023-06-30 15:52:57 +02:00
Péter Garamvölgyi
8c141eb90f
feat(evm): limit ecPairing precompile to use up to 4 inputs (#373)
* feat(evm): limit ecPairing precompile to use up to 4 inputs

* update test cases

* reorder test functions
2023-06-29 09:22:48 +02:00
Péter Garamvölgyi
5abc15db78
feat: update contract ABI QueueIndex type to uint64 (#371)
* update contract ABI QueueIndex type to uint64

* Update bindings.go
2023-06-28 15:51:58 +02:00
Péter Garamvölgyi
b14a4024cd
fix: improve L1Message RPC encoding (#368)
correctly encode L1 messages in RPC response
2023-06-19 16:44:04 +02:00
Richord
b5e8d12c06
feat: return keccak(chainId || height) for BLOCKHASH opcode (#359)
* changed blockhash behavior

* added patch version

* Update core/vm/runtime/runtime_test.go

Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>

* Update core/vm/runtime/runtime_test.go

Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>

* lint fix

* changed wording

* used interpreter.hasher and padded chainId to uint64

* used interpreter.hasher and padded chainId to uint64

* undo changes

* bump version

---------

Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-06-14 13:11:31 -07:00