Skip to content

Failed to flush frozen tables when try re-init #27981

@ghost

Description

I am using Geth to build a POA network. When I try re-init geth (after updating the genesis config), I received the error (CRIT: Failed to flush frozen tables) the first time. That seems like an "unclean shutdown" https://geth.ethereum.org/docs/fundamentals/databases#unclean-shutdowns.
How can check it clean shutdown successfully?
Note: I tried waiting for about 10 minutes after stopping and running geth init, but it still fails the first time ( my network only has about 250k blocks)

System information

  • Geth version: v1.10.18
  • OS & Version: Docker

Steps to reproduce the behavior

$ sudo docker stop -t 300 geth
geth

$ sudo docker run --rm -v /data/ethereum:/data/ethereum ethereum/client-go:v1.10.18 --verbosity 5 init --datadir=/data/ethereum /data/ethereum/genesis.json
INFO [08-23|07:11:26.840] Maximum peer count                       ETH=50 LES=0 total=50
INFO [08-23|07:11:26.840] Smartcard socket not found, disabling    err="stat /run/pcscd/pcscd.comm: no such file or directory"
DEBUG[08-23|07:11:26.841] FS scan times                            list="33.088µs" set="8.09µs" diff="2.501µs"
TRACE[08-23|07:11:26.841] Handled keystore changes                 time="90.767µs"
TRACE[08-23|07:11:26.841] Started watching keystore folder         path=/data/ethereum/keystore
DEBUG[08-23|07:11:26.842] Sanitizing Go's GC trigger               percent=100
INFO [08-23|07:11:26.842] Set global gas cap                       cap=50,000,000
INFO [08-23|07:11:26.842] Allocated cache and file handles         database=/data/ethereum/geth/chaindata cache=16.00MiB handles=16
DEBUG[08-23|07:11:26.862] Chain freezer table opened               database=/data/ethereum/geth/chaindata/ancient table=headers items=191,396 size=56.90MiB
DEBUG[08-23|07:11:26.862] Chain freezer table opened               database=/data/ethereum/geth/chaindata/ancient table=hashes  items=191,396 size=5.84MiB
DEBUG[08-23|07:11:26.863] Chain freezer table opened               database=/data/ethereum/geth/chaindata/ancient table=bodies  items=191,396 size=935.33KiB
DEBUG[08-23|07:11:26.868] Chain freezer table opened               database=/data/ethereum/geth/chaindata/ancient table=receipts items=191,396 size=560.77KiB
DEBUG[08-23|07:11:26.871] Chain freezer table opened               database=/data/ethereum/geth/chaindata/ancient table=diffs    items=191,396 size=706.67KiB
INFO [08-23|07:11:26.871] Opened ancient database                  database=/data/ethereum/geth/chaindata/ancient readonly=false
INFO [08-23|07:11:26.899] Persisted trie from memory database      nodes=355 size=50.41KiB  time=2.231182ms gcnodes=0 gcsize=0.00B gctime=0s livenodes=1 livesize=0.00B
CRIT [08-23|07:11:26.902] Failed to flush frozen tables            err="[invalid argument]"

$ sudo docker run --rm -v /data/ethereum:/data/ethereum ethereum/client-go:v1.10.18 --verbosity 5 init --datadir=/data/ethereum /data/ethereum/genesis.json
INFO [08-23|07:11:35.386] Maximum peer count                       ETH=50 LES=0 total=50
INFO [08-23|07:11:35.386] Smartcard socket not found, disabling    err="stat /run/pcscd/pcscd.comm: no such file or directory"
TRACE[08-23|07:11:35.386] Started watching keystore folder         path=/data/ethereum/keystore
DEBUG[08-23|07:11:35.386] FS scan times                            list="29.377µs" set="8.173µs" diff="2.551µs"
TRACE[08-23|07:11:35.386] Handled keystore changes                 time="52.914µs"
DEBUG[08-23|07:11:35.386] Sanitizing Go's GC trigger               percent=100
INFO [08-23|07:11:35.386] Set global gas cap                       cap=50,000,000
INFO [08-23|07:11:35.387] Allocated cache and file handles         database=/data/ethereum/geth/chaindata cache=16.00MiB handles=16
DEBUG[08-23|07:11:35.399] Chain freezer table opened               database=/data/ethereum/geth/chaindata/ancient table=hashes items=191,446 size=5.84MiB
DEBUG[08-23|07:11:35.400] Chain freezer table opened               database=/data/ethereum/geth/chaindata/ancient table=bodies items=191,446 size=935.57KiB
DEBUG[08-23|07:11:35.401] Chain freezer table opened               database=/data/ethereum/geth/chaindata/ancient table=receipts items=191,446 size=560.92KiB
DEBUG[08-23|07:11:35.402] Chain freezer table opened               database=/data/ethereum/geth/chaindata/ancient table=diffs    items=191,446 size=706.86KiB
DEBUG[08-23|07:11:35.404] Chain freezer table opened               database=/data/ethereum/geth/chaindata/ancient table=headers  items=191,446 size=56.92MiB
INFO [08-23|07:11:35.405] Opened ancient database                  database=/data/ethereum/geth/chaindata/ancient readonly=false
DEBUG[08-23|07:11:35.412] Ancient blocks frozen already            number=281,445 hash=623176..c5a59e frozen=191,446
INFO [08-23|07:11:35.416] Persisted trie from memory database      nodes=355 size=50.41KiB  time="864.965µs" gcnodes=0 gcsize=0.00B gctime=0s livenodes=1 livesize=0.00B
INFO [08-23|07:11:35.448] Successfully wrote genesis state         database=chaindata                             hash=960aa6..e46774
INFO [08-23|07:11:35.448] Allocated cache and file handles         database=/data/ethereum/geth/lightchaindata    cache=16.00MiB handles=16
DEBUG[08-23|07:11:35.458] Chain freezer table opened               database=/data/ethereum/geth/lightchaindata/ancient table=diffs    items=0       size=0.00B
DEBUG[08-23|07:11:35.458] Chain freezer table opened               database=/data/ethereum/geth/lightchaindata/ancient table=headers  items=0       size=0.00B
DEBUG[08-23|07:11:35.458] Chain freezer table opened               database=/data/ethereum/geth/lightchaindata/ancient table=hashes   items=0       size=0.00B
DEBUG[08-23|07:11:35.458] Chain freezer table opened               database=/data/ethereum/geth/lightchaindata/ancient table=bodies   items=0       size=0.00B
DEBUG[08-23|07:11:35.459] Chain freezer table opened               database=/data/ethereum/geth/lightchaindata/ancient table=receipts items=0       size=0.00B
INFO [08-23|07:11:35.459] Opened ancient database                  database=/data/ethereum/geth/lightchaindata/ancient readonly=false
DEBUG[08-23|07:11:35.459] Current full block not old enough        number=0       hash=960aa6..e46774 delay=90000
INFO [08-23|07:11:35.464] Persisted trie from memory database      nodes=355 size=50.41KiB  time=1.260342ms  gcnodes=0 gcsize=0.00B gctime=0s livenodes=1 livesize=0.00B
INFO [08-23|07:11:35.466] Successfully wrote genesis state         database=lightchaindata                        hash=960aa6..e46774

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions