-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(configs): Implement new format of configs and implement protobuf for it #1501
feat(configs): Implement new format of configs and implement protobuf for it #1501
Conversation
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
…deniallugo-genesis-config
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
Signed-off-by: Danil <deniallugo@gmail.com>
5604892
to
d7bafbc
Compare
Signed-off-by: Danil <deniallugo@gmail.com>
d7bafbc
to
c753c93
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am still not quite fond of the new approach to the config separation, but after a private discussion with @Deniallugo it seems that he has a roadmap for this feature in mind.
Generally, given that the scope of the new functionality is huge, and given that it's a fairly important addition, I'm OK with merging as is, but hope that @Deniallugo will iterate on design. At any time I'll be happy to assist if this will be required.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've gone through the prover side of configs. Left a few comments to be looked into. This is a HUGE PR, I wonder if it could be smaller (I see some commits at the start about replacing reth
with geth
, seems it could've been bundled in a different PR). If I'm needed to look through the entire set of changes, ping again and will do so.
🤖 I have created a release *beep* *boop* --- ## [23.0.0](core-v22.1.0...core-v23.0.0) (2024-04-16) ### ⚠ BREAKING CHANGES * **vm:** 1 5 0 support ([#1508](#1508)) ### Features * **api:** Add `tokens_whitelisted_for_paymaster` ([#1545](#1545)) ([6da89cd](6da89cd)) * **api:** Log info about estimated fee ([#1611](#1611)) ([daed58c](daed58c)) * Archive old prover jobs ([#1516](#1516)) ([201476c](201476c)) * Archiving of prover in gpu_prover_queue ([#1537](#1537)) ([a970629](a970629)) * **block-reverter:** only require private key for sending revert transactions ([#1579](#1579)) ([27de6b7](27de6b7)) * **config:** Initialize log config from files as well ([#1566](#1566)) ([9e7db59](9e7db59)) * **configs:** Implement new format of configs and implement protobuf for it ([#1501](#1501)) ([086ba5b](086ba5b)) * **db:** Wrap sqlx errors in DAL ([#1522](#1522)) ([6e9ed8c](6e9ed8c)) * EN Pruning ([#1418](#1418)) ([cea6578](cea6578)) * **en:** add consistency checker condition in db pruner ([#1653](#1653)) ([5ed92b9](5ed92b9)) * **en:** add manual vacuum step in db pruning ([#1652](#1652)) ([c818be3](c818be3)) * **en:** Rate-limit L2 client requests ([#1500](#1500)) ([3f55f1e](3f55f1e)) * **en:** Rework storing and using protective reads ([#1515](#1515)) ([13c0c45](13c0c45)) * **en:** support for snapshots recovery in version_sync_task.rs ([#1585](#1585)) ([f911276](f911276)) * **eth-watch:** Brush up Ethereum watcher component ([#1596](#1596)) ([b0b8f89](b0b8f89)) * Expose component configs as info metrics ([#1584](#1584)) ([7c8ae40](7c8ae40)) * **external-node:** external node distributed operation mode ([#1457](#1457)) ([777ffca](777ffca)) * Extract commitment generator into a separate crate ([#1636](#1636)) ([f763d1f](f763d1f)) * Extract eth_watch and shared metrics into separate crates ([#1572](#1572)) ([4013771](4013771)) * Finalize fee address migration ([#1617](#1617)) ([713f56b](713f56b)) * fix availability checker ([#1574](#1574)) ([b2f21fb](b2f21fb)) * **genesis:** Add genesis config generator ([#1671](#1671)) ([45164fa](45164fa)) * **genesis:** mark system contracts bytecodes as known ([#1554](#1554)) ([5ffec51](5ffec51)) * Migrate gas limit to u64 ([#1538](#1538)) ([56dc049](56dc049)) * **node-framework:** Add consensus support ([#1546](#1546)) ([27fe475](27fe475)) * **node-framework:** Add consistency checker ([#1527](#1527)) ([3c28c25](3c28c25)) * remove unused variables in prover configs ([#1564](#1564)) ([d32a019](d32a019)) * Remove zksync-rs SDK ([#1559](#1559)) ([cc78e1d](cc78e1d)) * soft removal of `events_queue` table ([#1504](#1504)) ([5899bc6](5899bc6)) * **sqlx:** Use offline mode by default ([#1539](#1539)) ([af01edd](af01edd)) * Use config for max number of circuits ([#1573](#1573)) ([9fcb87e](9fcb87e)) * Validium ([#1461](#1461)) ([132a169](132a169)) * **vm:** 1 5 0 support ([#1508](#1508)) ([a6ccd25](a6ccd25)) ### Bug Fixes * **api:** Change error code for Web3Error::NotImplemented ([#1521](#1521)) ([0a13602](0a13602)) * **cache:** use factory deps cache correctly ([#1547](#1547)) ([a923e11](a923e11)) * **CI:** Less flaky CI ([#1536](#1536)) ([2444b53](2444b53)) * **configs:** Make genesis fields optional ([#1555](#1555)) ([2d0ef46](2d0ef46)) * contract verifier config test ([#1583](#1583)) ([030d447](030d447)) * **contract-verifier-api:** permissive cors for contract verifier api server ([#1525](#1525)) ([423f4a7](423f4a7)) * **db:** Fix "values cache update task failed" panics ([#1561](#1561)) ([f7c5c14](f7c5c14)) * **en:** do not log error when whitelisted_tokens_for_aa is not supported ([#1600](#1600)) ([06c87f5](06c87f5)) * **en:** Fix DB pool for Postgres metrics on EN ([#1675](#1675)) ([c51ca91](c51ca91)) * **en:** improved tree recovery logs ([#1619](#1619)) ([ef12df7](ef12df7)) * **en:** Reduce amount of data in snapshot header ([#1528](#1528)) ([afa1cf1](afa1cf1)) * **eth-client:** Use local FeeHistory type ([#1552](#1552)) ([5a512e8](5a512e8)) * instruction count diff always N/A in VM perf comparison ([#1608](#1608)) ([c0f3104](c0f3104)) * **vm:** Fix storage oracle and estimation ([#1634](#1634)) ([932b14b](932b14b)) * **vm:** Increase log demuxer cycles on far calls ([#1575](#1575)) ([90eb9d8](90eb9d8)) ### Performance Improvements * **db:** rework "finalized" block SQL query ([#1524](#1524)) ([2b27290](2b27290)) * **merkle tree:** Manage indices / filters in RocksDB ([#1550](#1550)) ([6bbfa06](6bbfa06)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --------- Co-authored-by: romanbrodetskiy <rb@matterlabs.dev>
🤖 I have created a release *beep* *boop* --- ## [13.0.0](prover-v12.2.0...prover-v13.0.0) (2024-04-22) ### ⚠ BREAKING CHANGES * **vm:** 1 5 0 support ([#1508](#1508)) ### Features * Archive old prover jobs ([#1516](#1516)) ([201476c](201476c)) * Archiving of prover in gpu_prover_queue ([#1537](#1537)) ([a970629](a970629)) * **configs:** Implement new format of configs and implement protobuf for it ([#1501](#1501)) ([086ba5b](086ba5b)) * **db:** Wrap sqlx errors in DAL ([#1522](#1522)) ([6e9ed8c](6e9ed8c)) * fix availability checker ([#1574](#1574)) ([b2f21fb](b2f21fb)) * Prover CLI Scaffoldings ([#1609](#1609)) ([9a22fa0](9a22fa0)) * Remove zksync-rs SDK ([#1559](#1559)) ([cc78e1d](cc78e1d)) * **sqlx:** Use offline mode by default ([#1539](#1539)) ([af01edd](af01edd)) * **vm:** 1 5 0 support ([#1508](#1508)) ([a6ccd25](a6ccd25)) ### Bug Fixes * **en:** Fix miscellaneous snapshot recovery nits ([#1701](#1701)) ([13bfecc](13bfecc)) * made consensus store certificates asynchronously from statekeeper ([#1711](#1711)) ([d1032ab](d1032ab)) ### Performance Improvements * **merkle tree:** Manage indices / filters in RocksDB ([#1550](#1550)) ([6bbfa06](6bbfa06)) ### Reverts * **env:** Remove `ZKSYNC_HOME` env var from server ([#1713](#1713)) ([aed23e1](aed23e1)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: perekopskiy <53865202+perekopskiy@users.noreply.github.com>
What ❔
Loading new format of config from files.
Only main node is fully moved to the ability to work from files.
Init process is intentionally has not be adapted for the file-based configurtaion
This format will be used with the new configuration
Why ❔
For having an opportunity not to rely on envs we can load files with necessary configuration.
Checklist
zk fmt
andzk lint
.zk spellcheck
.zk linkcheck
.