Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 20 Nov 2016 03:30:40 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-ports-bugs@FreeBSD.org
Subject:   [Bug 214470] dns/powerdns-recursor: fails to build with boost 1.62
Message-ID:  <bug-214470-13-My87OwvyvM@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-214470-13@https.bugs.freebsd.org/bugzilla/>
References:  <bug-214470-13@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D214470

--- Comment #2 from Jan Beich (mail not working) <jbeich@FreeBSD.org> ---
Created attachment 177195
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D177195&action=
=3Dedit
partial fix

(In reply to Antoine Brodin from comment #1)
poudriere bulk -t is green for head-amd64 + boost 1.55 (current), 10.1 i386=
 +
boost 1.62 (upcoming)

Beware, runtime may crash with boost 1.62.

  Assertion failed: (this !=3D &x), function operator=3D, file
/usr/local/include/boost/container/string.hpp, line 830.
  (lldb) bt
  * thread #4: tid =3D 100838, 0x0000000802e66fea libc.so.7`thr_kill + 10 at
thr_kill.S:3, stop reason =3Dsignal SIGABRT
    * frame #0: 0x0000000802e66fea libc.so.7`thr_kill + 10 at thr_kill.S:3
      frame #1: 0x0000000802e66fbb libc.so.7`__raise(s=3D6) + 59 at raise.c=
:52
      frame #2: 0x0000000802e66f29 libc.so.7`abort + 73 at abort.c:65
      frame #3: 0x0000000802eebfa1 libc.so.7`__assert(func=3D<unavailable>,
file=3D<unavailable>, line=3D<unavailable>, failedexpr=3D<unavailable>) + 8=
1 at
assert.c:51
      frame #4: 0x000000000045a206
pdns_recursor`boost::container::basic_string<char, std::__1::char_traits<ch=
ar>,
boost::container::new_allocator<char> >::operator=3D(this=3D0x0000000804190=
048,
x=3D0x0000000804190048) + 70 at string.hpp:830
      frame #5: 0x000000000047adaf
pdns_recursor`DNSName::operator=3D(this=3D0x0000000804190048,
(null)=3D0x0000000804190048) + 47 at dnsname.hh:63
      frame #6: 0x000000000092f799 pdns_recursor`void
std::__1::random_shuffle<std::__1::__wrap_iter<DNSName*>, unsigned int
(&)(unsigned int)>(std::__1::__wrap_iter<DNSName*>,
std::__1::__wrap_iter<DNSName*>, unsigned int (&&&)(unsigned int)) [inlined]
std::__1::enable_if<(is_move_constructible<DNSName>::value) &&
(is_move_assignable<DNSName>::value), void>::type
std::__1::swap<DNSName>(__x=3D0x0000000804190048, __y=3D0x0000000804190048)=
 + 59 at
type_traits:4422
      frame #7: 0x000000000092f75e pdns_recursor`void
std::__1::random_shuffle<std::__1::__wrap_iter<DNSName*>, unsigned int
(&)(unsigned int)>(__first=3D__wrap_iter<DNSName *> @ 0x000000080417db38,
__last=3D__wrap_iter<DNSName *> @ 0x000000080417db30,
__rand=3D0x000000000044d8a0)(unsigned int)) + 398 at algorithm:3126
      frame #8: 0x0000000000928630
pdns_recursor`SyncRes::shuffleInSpeedOrder(this=3D0x00000008041888a0,tnames=
ervers=3D0x0000000804187040,
prefix=3D0x0000000804182350) + 2480 at syncres.cc:890
      frame #9: 0x00000000009092ff
pdns_recursor`SyncRes::doResolveAt(this=3D0x00000008041888a0,
nameservers=3D0x0000000804187040, auth=3DDNSName @ 0x0000000804187710,
flawedNSSet=3Dfalse, qname=3D0x0000000804188888, qtype=3D0x0000000804188448,
ret=3D0x0000000804188450, depth=3D0, beenthere=3D0x0000000804187910) + 7807=
 at
syncres.cc:987
      frame #10: 0x00000000008fb5ce
pdns_recursor`SyncRes::doResolve(this=3D0x00000008041888a0,
qname=3D0x0000000804188888, qtype=3D0x0000000804188448, ret=3D0x00000008041=
88450,
depth=3D0, beenthere=3D0x0000000804187910) + 7726 at syncres.cc:470
      frame #11: 0x00000000008f9707
pdns_recursor`SyncRes::beginResolve(this=3D0x00000008041888a0,
qname=3D0x0000000804188888, qtype=3D0x0000000804188448, qclass=3D1,
ret=3D0x0000000804188450) + 7015 at syncres.cc:180
      frame #12: 0x000000000076dae7
pdns_recursor`houseKeeping((null)=3D0x0000000000000000) + 2903 at
pdns_recursor.cc:1918
      frame #13: 0x00000000007aa850 pdns_recursor`MTasker<PacketID,
std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char> > >::makeThread(this=3D0x0000000804188b90)(void*),
void*)::'lambda'()::operator()() const + 128 at mtasker.cc:270
      frame #14: 0x00000000007aa58d
pdns_recursor`boost::detail::function::void_function_obj_invoker0<MTasker<P=
acketID,
std::__1::basic_string<char, std::__1::char_traits<char>,
std::__1::allocator<char>> >::makeThread(void (*)(void*), void*)::'lambda'(=
),
void>::invoke(function_obj_ptr=3D0x0000000804188b90) + 29 at
function_template.hpp:159
      frame #15: 0x0000000000710a78
pdns_recursor`boost::function0<void>::operator(this=3D0x0000000804188b88)()=
 const
+ 120 at function_template.hpp:770
      frame #16: 0x0000000000710742 pdns_recursor`threadWrapper(t=3D(fctx =
=3D
0x00007fffdfbfa978, data =3D 0x00007fffdfbfa9c8)) + 146 at
mtasker_fcontext.cc:133
      frame #17: 0x00000008016b675b libboost_context.so.1.62.0`make_fcontex=
t +
27


or inside 103amd64 jail with just boost-libs and powerdns-recursor built
WITH_DEBUG=3D1

  Assertion failed: (this !=3D &x), function operator=3D, file
/usr/local/include/boost/container/string.hpp, line 830.
  [New LWP 100673 of process 63088]
  [New LWP 100672 of process 63088]
  [New LWP 100684 of process 63088]

  Thread 2 received signal SIGABRT, Aborted.
  [Switching to LWP 100673 of process 63088]
  0x00000008024cf35a in thr_kill () from /lib/libc.so.7
  (gdb) bt
  #0  0x00000008024cf35a in thr_kill () from /lib/libc.so.7
  #1  0x00000008024cf346 in raise () from /lib/libc.so.7
  #2  0x00000008024cf2c9 in abort () from /lib/libc.so.7
  #3  0x0000000802535f91 in __assert () from /lib/libc.so.7
  #4  0x00000000005d259f in boost::container::basic_string<char,
std::__1::char_traits<char>, boost::container::new_allocator<char>
>::operator=3D(boost::container::basic_string<char, std::__1::char_traits<c=
har>,
boost::container::new_allocator<char> >&&) (this=3D<optimized out>, x=3D<op=
timized
out>)
      at /usr/local/include/boost/container/string.hpp:830
  #5  DNSName::operator=3D(DNSName&&) (this=3D<optimized out>) at ./dnsname=
.hh:63
  #6  std::__1::swap<DNSName> (__x=3D..., __y=3D...) at
/usr/include/c++/v1/type_traits:3563
  #7  std::__1::random_shuffle<std::__1::__wrap_iter<DNSName*>, unsigned int
(&)(unsigned int)> (
      __rand=3D<optimized out>, __first=3D..., __last=3D...) at
/usr/include/c++/v1/algorithm:3115
  #8  0x00000000005ca509 in SyncRes::shuffleInSpeedOrder (this=3D0x80395aa2=
8,
tnameservers=3D...,
      prefix=3D...) at syncres.cc:890
  #9  0x00000000005bac6a in SyncRes::doResolveAt (this=3D0x80395aa28,
nameservers=3D..., auth=3D...,
      flawedNSSet=3D<optimized out>, qname=3D..., qtype=3D..., ret=3D...,
depth=3D<optimized out>,
      beenthere=3D...) at syncres.cc:987
  #10 0x00000000005b3242 in SyncRes::doResolve (this=3D0x80395aa28, qname=
=3D...,
qtype=3D..., ret=3D...,
      depth=3D0, beenthere=3D...) at syncres.cc:470
  #11 0x00000000005b1680 in SyncRes::beginResolve (this=3D0x80395aa28, qnam=
e=3D...,
qtype=3D...,
      qclass=3D<optimized out>, ret=3D...) at syncres.cc:180
  #12 0x00000000005467ff in houseKeeping () at pdns_recursor.cc:1918
  #13 0x0000000000559f91 in operator() (this=3D0x80395acf0) at ./mtasker.cc=
:270
  #14 0x0000000000523b91 in boost::function0<void>::operator() (this=3D<opt=
imized
out>,
      this=3D<optimized out>) at
/usr/local/include/boost/function/function_template.hpp:770
  #15 threadWrapper (t=3D...) at ./mtasker_fcontext.cc:133
  #16 0x00000008010822ab in make_fcontext () at
libs/context/src/asm/make_x86_64_sysv_elf_gas.S:51
  #17 0x0000000000000000 in ?? ()

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-214470-13-My87OwvyvM>