Conversation
* feat: add storagechange object pool for better performance * fix: review comments
This pull request introduces a SyncKeyValue function to the ethdb.KeyValueStore interface, providing the ability to forcibly flush all previous writes to disk. This functionality is critical for go-ethereum, which internally uses two independent database engines: a key-value store (such as Pebble, LevelDB, or memoryDB for testing) and a flat-file–based freezer. To ensure write-order consistency between these engines, the key-value store must be explicitly synced before writing to the freezer and vice versa. Fixes - ethereum/go-ethereum#31405 - ethereum/go-ethereum#29819
core, ethdb: introduce database sync function (#31703)
expected Mainnet Maxwell hard fork time: 2025-06-30 02:30:00 AM UTC
MatusKysel
previously approved these changes
May 28, 2025
galaio
approved these changes
May 29, 2025
MatusKysel
approved these changes
May 29, 2025
buddh0
approved these changes
May 29, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
v1.5.14 is for BSC Mainnet Maxwell hard fork, which is expected to be enabled at:
2025-06-30 02:30:00 AM UTC, all BSC Mainnet nodes need to be upgraded to v1.5.14 before the hard fork time. For this upgrade, simply binary replacement should be enough.Maxwell includes 3 BEPs, mainly to reduce block interval from 1.5 seconds to 0.75 seconds:
Besides the 0.75 seconds block interval update, there are several other key parameters will be updated:
Beside hard fork changes, there are several other improvements and bug fixes, For details, pls refer the change log.
ChangeLog
FEATURE
#3130 config: update BSC Mainnet hardfork time: Maxwell
BUGFIX
#3117 core, ethdb: introduce database sync function (#31703)
#3122 freezer: implement tail method in prunedfreezer
#3121 miner: discard outdated bids before simulation
IMPROVEMENT
#3105 parlia.go: adjust timeForMining to 4/5 second
#3112 feat: add storagechange object pool for better performance
#3110 refactor: use the built-in max/min to simplify the code
#3120 tx_pool: remove one non-necessary allocation
#3123 refactor: use maps.copy for cleaner map handling
#3126 jsutils: update getKeyParameters