Block Rotation
Introduction
SKALE Chain Block Rotation allows to limit the space on hard drive which is occupied by blocks. The current default value is 12.6GB.
Each SKALE Chain maintains a minimum to maximum number of blocks, which are 80% and 100% of the above value respectively.
Rotation is performed across 4 databases. Each database contains:
- 
blocks 
- 
transactions and their receipts 
- 
log blooms 
- 
"best" (lastBlockHash, best block of the canonical chain) 
- 
"chainStart" (firstBlockHash, used when full chain isn’t available, for example after snapshot import) 
API Changes
| Calls | Changes | 
|---|---|
| eth_getBlockByNumber/eth_getBlockByHash | may return null | 
| eth_getBlockTransactionCountByNumber/eth_getBlockTransactionCountByHash | may return null | 
| eth_getUncleCountByBlockNumber/eth_getUncleCountByBlockHash | may return null | 
| eth_getTransactionByBlockHashAndIndex/eth_getTransactionByBlockNumberAndIndex | may return null | 
| eth_getUncleByBlockHashAndIndex/eth_getUncleByBlockNumberAndIndex | may return null | 
| eth_getTransactionByHash | may return null | 
| eth_getTransactionReceipt | may return null | 
| eth_getFilterLogs/eth_getLogs | will treat removed blocks as if they have 0 logs |