v1.5.0 Release Notes
New Features
-
State migration (#507)
- New JSON-RPC API to remove the unnecessary and old state/storage trie, saving the storage space for Klaytn node (Cypress) by 75% (800 GB -> 200 GB)
- admin.startStateMigration()
- admin.stopStateMigration()
- admin.stateMigrationStatus
- Klaytn node currently requires about 1TB of storage space. This size of storage was a burdensome for efficient node operation, and the state migration came here to relieve this. The state migration removes the stale state/storage trie nodes which are unnecessary for new block generation and validation. Before starting a state migration,
stakingInfo
is saved in a database to getstakingInfo
without the staled state after the state migration.
- New JSON-RPC API to remove the unnecessary and old state/storage trie, saving the storage space for Klaytn node (Cypress) by 75% (800 GB -> 200 GB)
-
Warm-up trie node cache (#548)
- New JSON-RPC APIs to speed up the block processing by iterating the latest state trie and caching it
- debug.startWarmUp()
- debug.stopWarmUp()
- Until now, Klaytn node had to continuously access a database for processing a block due to uncached state trie nodes, which results in the delay in block processing. The introduced "warm-up" feature reduces this delay by iterating the last state trie and caching it.
- New JSON-RPC APIs to speed up the block processing by iterating the latest state trie and caching it
-
Import blocks from String (#516)
- Importing blocks was available only with a file. Importing blocks from a string is required for some use cases.
- New JSON-RPC APIs
- admin.importChainFromString()
-
Fastcache (#490)
- Fastcache as trie node cache with the autoscaled cache size, reducing memory consumption compared to Bigcache
Improvements
- Parameterizes triesInMemory and maxRequestContentLength (#555, #564)
- Uses cached state database in TraceBlock (#546)
- Improves consensus logic
- Prevents
commit
twice when a node stops (#530) - Refactors staking manager (#515)
- Builds and publishes public docker image (#491)
- Improves Trace API
- Allows DNS address string to start with numeric character for encoding URL (#482)
- Removes vendor directory (#498)