monero-project / monero

Monero: the secure, private, untraceable cryptocurrency
https://getmonero.org
Other
8.74k stars 3.07k forks source link

monero-blockchain-ancestry --refresh fails #8952

Open benmordecai opened 11 months ago

benmordecai commented 11 months ago
2023-07-17 16:22:22.299 W Starting...
2023-07-17 16:22:22.299 W Initializing source blockchain (BlockchainDB)
/usr/include/c++/13.1.1/bits/unique_ptr.h:453: typename std::add_lvalue_reference<_Tp>::type std::unique_ptr<_Tp, _Dp>::operator*() const [with _Tp = cryptonote::Blockchain; _Dp = std::default_delete<cryptonote::Blockchain>; typename std::add_lvalue_reference<_Tp>::type = cryptonote::Blockchain&]: Assertion 'get() != pointer()' failed.
Aborted (core dumped)
selsta commented 11 months ago

Self compiled? Release binaries?

benmordecai commented 11 months ago

Installed from Arch repos

selsta commented 11 months ago

Can you try release binaries too?

benmordecai commented 11 months ago

Looks like release binaries did not crash at the same point. I assume this means it is a problem with the way that Arch has packaged it from their repos?

selsta commented 11 months ago

Could be due to using a newer compiler version, but should still be a bug in our code somewhere.

benmordecai commented 11 months ago

Is there anything you need from me to produce diagnostic information?

benmordecai commented 11 months ago

And should this be reported to Arch maintainers?

selsta commented 11 months ago

Since it seems to be a bug in monero, I'd say no. I doubt they would downgrade compiler for such a niche program like monero-blockchain-ancestry.

0xFFFC0000 commented 4 months ago

I tried with

$ gcc --version
gcc (GCC) 13.2.1 20231205 (Red Hat 13.2.1-6)

and was not able to reproduce. Can you run with --log-level=4 and put the log output here.

benmordecai commented 1 week ago
$ monero-blockchain-ancestry --refresh --log-level=4
2024-06-25 11:43:17.931 W Starting...
2024-06-25 11:43:17.931 W Initializing source blockchain (BlockchainDB)
/usr/include/c++/13.2.1/bits/unique_ptr.h:453: typename std::add_lvalue_reference<_Tp>::type std::unique_ptr<_Tp, _Dp>::operator*() const [with _Tp = cryptonote::Blockchain; _Dp = std::default_delete<cryptonote::Blockchain>; typename std::add_lvalue_reference<_Tp>::type = cryptonote::Blockchain&]: Assertion 'get() != pointer()' failed.
Aborted (core dumped)