Когда часть состояния переносится из памяти на диск, запрос на чтение может в этот момент не увидеть её ни там, ни там. В Reth PR #28316 описана эта гонка при передаче данных: исторический запрос сначала получает согласованный снимок, но затем отбрасывает входящий в него снимок памяти и обращается к текущему слою переопределений. Если между этими действиями происходят сохранение на диск и вытеснение из памяти, запрос актуального состояния может завершиться ошибкой. Решение состоит в том, чтобы слой переопределений использовал тот же снимок. На мой взгляд, того, что данные «есть на диске и в памяти», недостаточно для надёжного чтения — важно также, чтобы один запрос видел состояние на один и тот же момент времени. Это исправление клиента $ETH , ожидающее проверки; в исходном тексте речь идёт об eth_call и eth_estimateGas, и такие ошибки чтения нельзя напрямую трактовать как исчезновение активов в блокчейне.