https://tracker.ceph.com/
https://tracker.ceph.com/favicon.ico
2022-05-18T16:13:47Z
Ceph
cephsqlite - Bug #55696: vstart hangs on when creating volume
https://tracker.ceph.com/issues/55696?journal_id=216416
2022-05-18T16:13:47Z
Luis Henriques
<ul><li><strong>File</strong> <a href="/attachments/download/6012/vstart.log">vstart.log</a> <a class="icon-only icon-magnifier" title="View" href="/attachments/6012/vstart.log">View</a> added</li></ul><p>Here's the full output when adding MGR=1 to the command line.</p>
cephsqlite - Bug #55696: vstart hangs on when creating volume
https://tracker.ceph.com/issues/55696?journal_id=216418
2022-05-18T16:28:13Z
Neha Ojha
nojha@redhat.com
<ul><li><strong>Project</strong> changed from <i>Ceph</i> to <i>cephsqlite</i></li><li><strong>Category</strong> deleted (<del><i>OSD</i></del>)</li></ul><pre>
-1> 2022-05-18T16:11:54.639+0100 7f3929297640 5 cephsqlite: FullPathname: (client.4126) 1: /.mgr:devicehealth/main.db
0> 2022-05-18T16:11:54.647+0100 7f3929297640 -1 *** Caught signal (Aborted) **
in thread 7f3929297640 thread_name:devicehealth
ceph version 17.0.0-12281-g948dd1bb13ae (948dd1bb13ae9be413a540a014ead04883536604) quincy (dev)
1: /home/miguel/dev/ceph/ceph/build/bin/ceph-mgr(+0x581ced) [0x5593a58baced]
2: /lib64/libc.so.6(+0x567c0) [0x7f394bab67c0]
3: /lib64/libc.so.6(+0xa955c) [0x7f394bb0955c]
4: raise()
5: abort()
6: /lib64/libstdc++.so.6(+0xa9ab5) [0x7f394be42ab5]
7: /lib64/libstdc++.so.6(+0xb4fac) [0x7f394be4dfac]
8: /lib64/libstdc++.so.6(+0xb5017) [0x7f394be4e017]
9: /lib64/libstdc++.so.6(+0xb5278) [0x7f394be4e278]
10: (std::__throw_regex_error(std::regex_constants::error_type, char const*)+0x48) [0x5593a568f944]
11: (bool std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_expression_term<false, false>(std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_BracketState&, std::__detail::_BracketMatcher<std::__cxx11::regex_traits<char>, false, false>&)+0x1df) [0x5593a56a75f5]
12: (void std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_insert_bracket_matcher<false, false>(bool)+0x9c) [0x5593a56a9030]
13: (std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_bracket_expression()+0x2f) [0x5593a56aa551]
14: (std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_atom()+0x315) [0x5593a56aa8bf]
15: (std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_term()+0x25) [0x5593a56aa8f1]
16: (std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_alternative()+0x20) [0x5593a56aa926]
17: (std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_disjunction()+0x22) [0x5593a56aa9e8]
18: (std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_atom()+0x2a7) [0x5593a56aa851]
19: (std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_term()+0x25) [0x5593a56aa8f1]
20: (std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_alternative()+0x20) [0x5593a56aa926]
21: (std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_alternative()+0x3a) [0x5593a56aa940]
22: (std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_alternative()+0x3a) [0x5593a56aa940]
23: (std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_alternative()+0x3a) [0x5593a56aa940]
24: (std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_alternative()+0x3a) [0x5593a56aa940]
25: (std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_M_disjunction()+0x22) [0x5593a56aa9e8]
26: (std::__detail::_Compiler<std::__cxx11::regex_traits<char> >::_Compiler(char const*, char const*, std::locale const&, std::regex_constants::syntax_option_type)+0x106) [0x5593a56aabbe]
27: /home/miguel/dev/ceph/ceph/build/lib/libcephsqlite.so(+0x3364e) [0x7f394d8dc64e]
28: /home/miguel/dev/ceph/ceph/build/lib/libcephsqlite.so(+0x3371c) [0x7f394d8dc71c]
29: /home/miguel/dev/ceph/ceph/build/lib/libcephsqlite.so(+0x18052) [0x7f394d8c1052]
30: /home/miguel/dev/ceph/ceph/build/lib/libcephsqlite.so(+0x18ce7) [0x7f394d8c1ce7]
31: /lib64/libsqlite3.so.0(+0x2d49b) [0x7f394d76549b]
NOTE: a copy of the executable, or `objdump -rdS <executable>` is needed to interpret this.
<\pre></pre>
cephsqlite - Bug #55696: vstart hangs on when creating volume
https://tracker.ceph.com/issues/55696?journal_id=216419
2022-05-18T16:33:16Z
Luis Henriques
<ul></ul><p>FYI the sqlite3 version I've installed in this system is 3.38.5-1.1 (from openSUSE Tumbleweed).</p>
cephsqlite - Bug #55696: vstart hangs on when creating volume
https://tracker.ceph.com/issues/55696?journal_id=216422
2022-05-18T17:38:54Z
Neha Ojha
nojha@redhat.com
<ul></ul><p>MDS=0 MGR=1 OSD=3 MON=1 ../src/vstart.sh -n -x --without-dashboard on 8b396522d8f88c9cd58b82a0d35b943dc6744dce works fine</p>
<pre>
cluster:
id: 04c66153-65f4-4d02-970f-8db9661183f0
health: HEALTH_OK
services:
mon: 1 daemons, quorum a (age 34s)
mgr: x(active, since 28s)
osd: 3 osds: 3 up (since 8s), 3 in (since 22s)
data:
pools: 1 pools, 1 pgs
objects: 2 objects, 449 KiB
usage: 3.0 GiB used, 300 GiB / 303 GiB avail
pgs: 1 active+clean
</pre>
<p>MON=2 MDS=3 OSD=2 RGW=0 MGR=1 ../src/vstart.sh -b --without-dashboard works fine too <br /><pre>
cluster:
id: 04c66153-65f4-4d02-970f-8db9661183f0
health: HEALTH_OK
services:
mon: 1 daemons, quorum a (age 12s)
mgr: x(active, since 7s)
osd: 3 osds: 3 up (since 4s), 3 in (since 2m)
data:
pools: 1 pools, 1 pgs
objects: 2 objects, 577 KiB
usage: 3.0 GiB used, 300 GiB / 303 GiB avail
pgs: 1 active+clean
</pre></p>
cephsqlite - Bug #55696: vstart hangs on when creating volume
https://tracker.ceph.com/issues/55696?journal_id=216457
2022-05-18T23:56:45Z
Neha Ojha
nojha@redhat.com
<ul></ul><p>Radek was unable to reproduce it as well <a class="external" href="https://gist.github.com/rzarzynski/c1197842aed9f0bfae63fa77bc1afd11">https://gist.github.com/rzarzynski/c1197842aed9f0bfae63fa77bc1afd11</a></p>
cephsqlite - Bug #55696: vstart hangs on when creating volume
https://tracker.ceph.com/issues/55696?journal_id=216471
2022-05-19T09:24:50Z
Luis Henriques
<ul></ul><p>Thanks a lot for your help.</p>
<p>I've added some debug code and it looks like the crash is happening in file libcephsqlite.cc, function parsepath(). Basically, the following line is the responsible for the crash:</p>
<pre><code class="cpp syntaxhl"><span class="CodeRay"> <span class="directive">static</span> <span class="directive">const</span> std::regex re1{<span class="string"><span class="delimiter">"</span><span class="content">^/*(</span><span class="char">\\</span><span class="content">*[[:digit:]]+):([[:alnum:]-_.]*)/([[:alnum:]-._]+)$</span><span class="delimiter">"</span></span>};
</span></code></pre>
<p>I <ins>think</ins> the latest upgrade I've done in this box also updated the compiler to gcc-12, so maybe there's some bug triggered by it (or maybe even in the libstdc...).</p>
cephsqlite - Bug #55696: vstart hangs on when creating volume
https://tracker.ceph.com/issues/55696?journal_id=216480
2022-05-19T13:59:50Z
Luis Henriques
<ul></ul><p>Ok, looks like it's a gcc12 issue. Here's a small program I've wrote:</p>
<pre><code class="cpp syntaxhl"><span class="CodeRay"><span class="preprocessor">#include</span> <span class="include"><regex></span>
<span class="preprocessor">#include</span> <span class="include"><iostream></span>
<span class="predefined-type">int</span> main()
{
<span class="keyword">try</span> {
std::regex re{<span class="string"><span class="delimiter">"</span><span class="content">^/*(</span><span class="char">\\</span><span class="content">*[[:digit:]]+):([[:alnum:]-_.]*)/([[:alnum:]-._]+)$</span><span class="delimiter">"</span></span>};
}
<span class="keyword">catch</span> (<span class="directive">const</span> std::regex_error& e) {
std::cout << <span class="string"><span class="delimiter">"</span><span class="content">regex_error caught: </span><span class="delimiter">"</span></span> << e.code() << <span class="string"><span class="delimiter">"</span><span class="content"> => </span><span class="delimiter">"</span></span> << e.what() << <span class="char">'\n'</span>;
}
}
</span></code></pre>
<p>It works fine if I compile it with gcc11, but it triggers an exception with gcc12:</p>
<pre>
regex_error caught: 8 => Invalid start of '[x-x]' range in regular expression
</pre>
<p>I'll go back and try to compile ceph with gcc-11; hopefully that'll allow me to run vstart clusters again.</p>
cephsqlite - Bug #55696: vstart hangs on when creating volume
https://tracker.ceph.com/issues/55696?journal_id=216497
2022-05-19T15:06:30Z
Luis Henriques
<ul></ul><p>FWIW, I can't reproduce the issue when compiling with gcc-11. So, something changed (libstd?) that broke this regex.</p>
cephsqlite - Bug #55696: vstart hangs on when creating volume
https://tracker.ceph.com/issues/55696?journal_id=216665
2022-05-24T18:02:55Z
Patrick Donnelly
pdonnell@redhat.com
<ul><li><strong>Duplicates</strong> <i><a class="issue tracker-1 status-3 priority-4 priority-default closed" href="/issues/55304">Bug #55304</a>: libcephsqlite: crash when compiled with gcc12 cause of regex treating '-' as a range operator</i> added</li></ul>
cephsqlite - Bug #55696: vstart hangs on when creating volume
https://tracker.ceph.com/issues/55696?journal_id=216667
2022-05-24T18:03:04Z
Patrick Donnelly
pdonnell@redhat.com
<ul><li><strong>Status</strong> changed from <i>New</i> to <i>Duplicate</i></li></ul>