Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jan 30, 2026

Bumps github.com/NethermindEth/juno from 0.15.15 to 0.15.18.

Release notes

Sourced from github.com/NethermindEth/juno's releases.

v0.15.18

This update brings a brand new DB architecture that cuts database size by several hundred gigabytes as well as exposing new configuration endpoints for users to tune their node to maximize performance based on their hardware.

New Performance Tuning Settings

Several new endpoints have been created as well as a new detailed documentation page on how to configure them. The default for these are targeted for 4 CPU cores and 8 GBs of RAM – better machines will benefit from updating them.

Notable mention is the --db-compression flag which will set the database compression level. Current compression is called snappy which has been left as default since it is safer to use with the current database layout.

If using the new database layout, zstd compression level is recommended because it enables much more deep compression, reducing DB size significantly at a fraction of the CPU cost. The zstd compression level will become the new default for Juno 0.16.0

Usage example:

--db-compression snappy

Remember to take a look at the Performance Tuning section to get more details.

New Database Layout

A new database layout is now available which changes the way we store transaction headers and receipts. Previously, transaction headers and receipts were stored using a key composed of the block number and the transaction’s index within the block. Given the millions of transactions on Starknet Mainnet, this would allot for a total of 500GB of storage.

The new layout, combined with zstd compression, reduces this value from 500 GBs to only 200 GBs.

To apply this new database layout, please run the node with the following flags

<your command to run juno>
...
--transaction-combined-layout
--db-compression zstd

⚠️ Note 1: once this new flag has been applied it won't be possible to revert back to the original database. Syncing from the beginning or from a snapshot is the only possible way for reverting this layout.

⚠️ Note 2: this flag will trigger a migration which we will take around 3 hours on a machine running the minimum specs. Validators beware.

ℹ️ Info: the --db-compression zstd flag is optional but it is highly recommended since it will get the most benefit for database size reduction. Additionally, from now onward your database growth will be heavily reduced.

The reason this database update is optional through a flag is to make it available sooner and avoid the breaking change. Once Juno 0.16.0 releases this migration will become mandatory and nodes which haven't migrated yet will be required to.

Note that when enabling a new compression, the whole database won't be compressed at once but gradually, as new information is written while existing data will remain stored with the previous compression. However, when updating to this new database layout with zstd compression, storage savings will be immediately noticeable given that 80% of the database is being rewritten. As a result, while a full re-sync is required to achieve maximum reduction, most of the benefits will be seen after the migration.

A fully compressed snapshot will be made available by us in the near future.

Full Changelog: NethermindEth/juno@v0.15.17...v0.15.18

v0.15.17

Note 1 ⚠️: This release will update the underlying Juno DB version. This is necessary to get the utmost performance of the DB as well as unlocking several upgrades that will become available in the next release. The estimated time varies on your Juno state: for a node in synced it should be seconds.

Note 2 ⚠️: This release comes with one small migration and a medium sized one. If you're a validator, please make sure to update right after your attestation window. Estimated migration time in total is around 1 hour and 30 minutes on a minimum resource machine (4 cores and 8 GBs of RAM with a slow SSD (~3180 r/w IOPS))

... (truncated)

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [github.com/NethermindEth/juno](https://github.com/NethermindEth/juno) from 0.15.15 to 0.15.18.
- [Release notes](https://github.com/NethermindEth/juno/releases)
- [Commits](NethermindEth/juno@v0.15.15...v0.15.18)

---
updated-dependencies:
- dependency-name: github.com/NethermindEth/juno
  dependency-version: 0.15.18
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file go Pull requests that update Go code labels Jan 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file go Pull requests that update Go code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants