[CHIA-4357] [Bug] chia db validate does not detect malformed database

Author: jfikarCreated Jun 4, 2022Updated Aug 19, 2026
LabelsbugBlockchain DB

What happened?

I was checking db v2 after restart, if it is valid. chia db validate shows everything is ok:

$ chia db validate
opening file for reading: /home/pi/.chia/mainnet/db/blockchain_v2_mainnet.sqlite
peak hash: ace730e133cf1144a02deb435457030e30ed715733ec76838f6b05058a3f7d73
peak height: 2070652
traversing the full chain
0 orphaned blocks: 67       
67 orphaned blocks


DATABASE IS VALID: /home/pi/.chia/mainnet/db/blockchain_v2_mainnet.sqlite

but longer test sqlite3 /home/pi/.chia/mainnet/db/blockchain_v2_mainnet.sqlite "PRAGMA integrity_check" shows errors:

$ sqlite3 ~/.chia/mainnet/db/blockchain_v2_mainnet.sqlite "PRAGMA integrity_check"
*** in database main ***
Page 19730123: btreeInitPage() returns error code 11
Page 19730101: btreeInitPage() returns error code 11
Page 19730074: btreeInitPage() returns error code 11
Page 19730180: btreeInitPage() returns error code 11
Page 19730088: btreeInitPage() returns error code 11
Page 19730127: btreeInitPage() returns error code 11
Page 19730181: btreeInitPage() returns error code 11
Page 19730182: btreeInitPage() returns error code 11
Page 19730087: btreeInitPage() returns error code 11
Page 19730082: btreeInitPage() returns error code 11
Page 19730162: btreeInitPage() returns error code 11
Page 19730120: btreeInitPage() returns error code 11
Page 19730068: btreeInitPage() returns error code 11
...

When I try to start chia start farmer, I get also error:

Traceback (most recent call last):
  File "/home/pi/chia-blockchain/venv/bin/chia_full_node", line 33, in <module>
    sys.exit(load_entry_point('chia-blockchain', 'console_scripts', 'chia_full_node')())
  File "/home/pi/chia-blockchain/chia/server/start_full_node.py", line 60, in main
    return run_service(**kwargs)
  File "/home/pi/chia-blockchain/chia/server/start_service.py", line 289, in run_service
    return asyncio.run(async_run_service(*args, **kwargs))
  File "/usr/lib/python3.9/asyncio/runners.py", line 44, in run
    return loop.run_until_complete(main)
  File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
    return future.result()
  File "/home/pi/chia-blockchain/chia/server/start_service.py", line 283, in async_run_service
    return await service.run()
  File "/home/pi/chia-blockchain/chia/server/start_service.py", line 193, in run
    await self.start()
  File "/home/pi/chia-blockchain/chia/server/start_service.py", line 154, in start
    await self._node._start(**kwargs)
  File "/home/pi/chia-blockchain/chia/full_node/full_node.py", line 231, in _start
    self.blockchain = await Blockchain.create(
  File "/home/pi/chia-blockchain/chia/consensus/blockchain.py", line 149, in create
    await self._load_chain_from_store(blockchain_dir)
  File "/home/pi/chia-blockchain/chia/consensus/blockchain.py", line 165, in _load_chain_from_store
    block_records, peak = await self.block_store.get_block_records_close_to_peak(self.constants.BLOCKS_CACHE_SIZE)
  File "/home/pi/chia-blockchain/chia/full_node/block_store.py", line 535, in get_block_records_close_to_peak
    for row in await cursor.fetchall():
  File "/home/pi/chia-blockchain/venv/lib/python3.9/site-packages/aiosqlite/cursor.py", line 65, in fetchall
    return await self._execute(self._cursor.fetchall)
  File "/home/pi/chia-blockchain/venv/lib/python3.9/site-packages/aiosqlite/cursor.py", line 31, in _execute
    return await self._conn._execute(fn, *args, **kwargs)
  File "/home/pi/chia-blockchain/venv/lib/python3.9/site-packages/aiosqlite/core.py", line 129, in _execute
    return await future
  File "/home/pi/chia-blockchain/venv/lib/python3.9/site-packages/aiosqlite/core.py", line 102, in run
    result = function()
sqlite3.DatabaseError: database disk image is malformed

How come that chia db validate does not detect the problem?

Version

1.3.5

What platform are you using?

Linux

What ui mode are you using?

CLI

Relevant log output

No response

Source: Chia-Network/chia-blockchain