Corrupted storage

Hi!
anyone can help with this error?

May 09 00:59:25.089 INFO This is Grin version 0.2.0 (git testnet2-100-gad6e781), built for     x86_64-unknown-linux-gnu by rustc 1.24.1 (d3ae9a9e0 2018-02-27).
May 09 00:59:25.089 DEBG Built with profile "debug", features "" on Tue, 08 May 2018 12:07:48 GMT.
May 09 00:59:25.089 INFO Starting the Grin server from configuration file at /home/user/grin/grin.toml
May 09 00:59:25.089 DEBG Using wallet seed file at: ./wallet.seed
May 09 00:59:25.152 INFO Starting the Grin wallet receiving daemon at 127.0.0.1:13415...
May 09 00:59:25.153 INFO Starting server, genesis block: 3346f63c
May 09 00:59:25.154 INFO Wallet listener started
May 09 00:59:25.331 DEBG chain: init: rewinding and validating before we start... ccd311b6 at 56774
May 09 00:59:25.331 DEBG Rewind to header 56774 @ ccd311b6
May 09 00:59:25.331 DEBG Rewind txhashset to 56774, BlockMarker { output_pos: 170653, kernel_pos: 142113 }
May 09 00:59:25.341 ERRO Corrupted storage, could not read an entry from hash store: IOErr(Error { repr: Custom(Custom { kind: UnexpectedEof, error: StringError("failed to fill whole buffer") }) })
May 09 00:59:25.341 ERRO Corrupted storage, could not read an entry from hash store: IOErr(Error { repr: Custom(Custom { kind: UnexpectedEof, error: StringError("failed to fill whole buffer") }) })
May 09 00:59:25.341 ERRO Corrupted storage, could not read an entry from hash store: IOErr(Error { repr: Custom(Custom { kind: UnexpectedEof, error: StringError("failed to fill whole buffer") }) })
May 09 00:59:25.341 ERRO Corrupted storage, could not read an entry from hash store: IOErr(Error { repr: Custom(Custom { kind: UnexpectedEof, error: StringError("failed to fill whole buffer") }) })
May 09 00:59:25.341 ERRO Corrupted storage, could not read an entry from hash store: IOErr(Error { repr: Custom(Custom { kind: UnexpectedEof, error: StringError("failed to fill whole buffer") }) })
May 09 00:59:25.341 ERRO Corrupted storage, could not read an entry from hash store: IOErr(Error { repr: Custom(Custom { kind: UnexpectedEof, error: StringError("failed to fill whole buffer") }) })
May 09 00:59:25.341 ERRO Corrupted storage, could not read an entry from hash store: IOErr(Error { repr: Custom(Custom { kind: UnexpectedEof, error: StringError("failed to fill whole buffer") }) })
May 09 00:59:25.341 ERRO Corrupted storage, could not read an entry from hash store: IOErr(Error { repr: Custom(Custom { kind: UnexpectedEof, error: StringError("failed to fill whole buffer") }) })
May 09 00:59:25.342 ERRO Corrupted storage, could not read an entry from hash store: IOErr(Error { repr: Custom(Custom { kind: UnexpectedEof, error: StringError("failed to fill whole buffer") }) })
May 09 00:59:25.831 ERRO 
thread 'main' panicked at 'no root, invalid tree': /checkout/src/libcore/option.rs:891stack backtrace:
   0:     0x55dda22682d4 - backtrace::backtrace::libunwind::trace::h317bdd130bb41593
                        at /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.5/src/backtrace/libunwind.rs:53
                         - backtrace::backtrace::trace::h74d3c7bcfacaa15f
                        at /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.5/src/backtrace/mod.rs:42
   1:     0x55dda225ee3c - backtrace::capture::Backtrace::new_unresolved::h91cbd3ded83b7d22
                        at /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.5/src/capture.rs:88
   2:     0x55dda225ed8e - backtrace::capture::Backtrace::new::hfde7246ce693b5cd
                        at /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.5/src/capture.rs:63
   3:     0x55dda20c8e0c - grin_util::logger::send_panic_to_log::{{closure}}::hfab9cbd6394b7ffb
                        at util/src/logger.rs:119
   4:     0x55dda22e0a45 - std::panicking::rust_panic_with_hook::hf9f34d7f0d667943
                        at /checkout/src/libstd/panicking.rs:578
   5:     0x55dda22e085e - std::panicking::begin_panic::h215af23ff6354aaf
                        at /checkout/src/libstd/panicking.rs:538
   6:     0x55dda22e07ca - std::panicking::begin_panic_fmt::h752224a2c436be23
                        at /checkout/src/libstd/panicking.rs:522
   7:     0x55dda22e0762 - rust_begin_unwind
                        at /checkout/src/libstd/panicking.rs:498
   8:     0x55dda2341ac0 - core::panicking::panic_fmt::h68e7715928be641f
                        at /checkout/src/libcore/panicking.rs:71
   9:     0x55dda23423f8 - core::option::expect_failed::h31f1de0db1aef2d6
                        at /checkout/src/libcore/option.rs:891
  10:     0x55dda1ba0de2 - <core::option::Option<T>>::expect::h3c3697295cfc77b9
                        at /checkout/src/libcore/option.rs:302
  11:     0x55dda1c32627 - <grin_core::core::pmmr::PMMR<'a, T, B>>::root::hd090d7ca1bb79f86
                        at /home/user/grin/core/src/core/pmmr.rs:322
  12:     0x55dda1bf3b2d - grin_chain::txhashset::Extension::roots::h95882e465b7c9d02
                        at chain/src/txhashset.rs:586
  13:     0x55dda1bf3c15 - grin_chain::txhashset::Extension::validate_roots::h97774ce368fbd6e5
                        at chain/src/txhashset.rs:600
  14:     0x55dda1c3da7b - grin_chain::chain::Chain::init::{{closure}}::hb356bc75c4e9fdef
                        at chain/src/chain.rs:191
  15:     0x55dda1c3ada4 - grin_chain::txhashset::extending::h37a3e7ac75ab6ff9
                        at chain/src/txhashset.rs:298
  16:     0x55dda1b76ca4 - grin_chain::chain::Chain::init::hd635ce1ee14555b4
                        at chain/src/chain.rs:181
  17:     0x55dda10ef74a - grin_servers::grin::server::Server::new::h2961bd2d0141b5d7
                        at servers/src/grin/server.rs:135
  18:     0x55dda0dc11cd - grin_servers::grin::server::Server::start::he27a46efc9b9147b
                        at /home/user/grin/servers/src/grin/server.rs:71
  19:     0x55dda0cb2ff9 - grin::start_server_tui::h6c8e5d74b43f4a97
                        at src/bin/grin.rs:103
  20:     0x55dda0cb2e14 - grin::start_server::hcecad4fb019dc4ee
                        at src/bin/grin.rs:88
  21:     0x55dda0cb64ac - grin::server_command::h9b5ba5478dc7d102
                        at src/bin/grin.rs:462
  22:     0x55dda0cb4fef - grin::main::h7f97165d9d140a08
                        at src/bin/grin.rs:347
  23:     0x55dda0d44a71 - std::rt::lang_start::{{closure}}::h98fc7f0f55593f8a
                        at /checkout/src/libstd/rt.rs:74
  24:     0x55dda22e06c7 - std::rt::lang_start_internal::{{closure}}::h6ddc513d95d559ac
                        at /checkout/src/libstd/rt.rs:59
                         - std::panicking::try::do_call::h7d33aea9be52481f
                        at /checkout/src/libstd/panicking.rs:480
  25:     0x55dda2303a1e - __rust_maybe_catch_panic
                        at /checkout/src/libpanic_unwind/lib.rs:101
  26:     0x55dda22e7749 - std::panicking::try::h33108b08b6395be5
                        at /checkout/src/libstd/panicking.rs:459
                         - std::panic::catch_unwind::hb0149e8b5a4339ed
                        at /checkout/src/libstd/panic.rs:365
                         - std::rt::lang_start_internal::h16c0c37ef62d8e5a
                        at /checkout/src/libstd/rt.rs:58
  27:     0x55dda0d44a51 - std::rt::lang_start::h6edddf36cea6c2d4
                        at /checkout/src/libstd/rt.rs:74
  28:     0x55dda0cb94cd - main
  29:     0x7f033509c2e0 - __libc_start_main
  30:     0x55dda0c9e119 - _start
  31:                0x0 - <unknown>

This indicates the underlying chain storage got corrupted somehow. Did you do anything in particular before this restart?

I could reproduce that on a server with slow i/o. Had it two times on grin.z9.de before I copied a synced chain from my notebook to the server to get it running again.

If anyone has a zip of the .grin directory when you server was in that state, it’d be helpful in diagnosing what happened.

hope this folder doesn’t contains sensitive information…
https://we.tl/Qwa2YQOaDK

What files I’ve to remove to start the syncing again?

@chri2 when you say “slow i/o” is related to the internet connection or to the hardware of the computer? I’m using a laptop with and SSD

I’ve compiled and synced grin again… and now I could sync without issues… and pretty fast. The first time I tried I was downloading a lot of data… a game… with another computer in the same network… so I suppouse it’s related with a connectivity issue.

We’ve also been optimizing sync.

1 Like