]>
git.ipfire.org Git - thirdparty/pdns.git/log
Peter van Dijk [Wed, 31 May 2023 08:33:56 +0000 (10:33 +0200)]
document shards=1 enforcement
Peter van Dijk [Wed, 31 May 2023 08:33:48 +0000 (10:33 +0200)]
format
Peter van Dijk [Wed, 31 May 2023 08:25:12 +0000 (10:25 +0200)]
simplify
Peter van Dijk [Wed, 31 May 2023 07:34:02 +0000 (09:34 +0200)]
use d_transactiondomain[id]
Peter van Dijk [Wed, 31 May 2023 07:27:48 +0000 (09:27 +0200)]
Update modules/lmdbbackend/lmdbbackend.cc
Co-authored-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Peter van Dijk [Wed, 31 May 2023 07:25:26 +0000 (09:25 +0200)]
only throw when idvec is empty
Peter van Dijk [Tue, 30 May 2023 16:50:47 +0000 (18:50 +0200)]
auth lmdb: enforce shards=1 when running in lightning-stream mode
Peter van Dijk [Tue, 30 May 2023 15:03:47 +0000 (17:03 +0200)]
auth lmdb: delete duplicate domain entries in deleteDomain
Otto Moerbeek [Tue, 30 May 2023 13:04:16 +0000 (15:04 +0200)]
Merge pull request #12863 from omoerbeek/rec-val-log-typo
rec: fix typo in trace message
Otto Moerbeek [Tue, 30 May 2023 13:03:58 +0000 (15:03 +0200)]
Merge pull request #12838 from omoerbeek/delint-rec-tcp
Delint rec-tcp.cc
Otto Moerbeek [Tue, 30 May 2023 13:03:35 +0000 (15:03 +0200)]
Merge pull request #12837 from omoerbeek/nolint-validate
Delint validate.cc and related files
Otto Moerbeek [Tue, 30 May 2023 13:03:06 +0000 (15:03 +0200)]
Merge pull request #12836 from omoerbeek/rec-main-delint-followup
rec: Full delint rec-main.cc
Otto Moerbeek [Tue, 30 May 2023 08:31:32 +0000 (10:31 +0200)]
rec: fix typo in trace message
Remi Gacogne [Thu, 18 May 2023 11:30:26 +0000 (13:30 +0200)]
Merge pull request #12726 from rgacogne/ddist-wait-reconnect
dnsdist: Properly handle reconnection failure for backend UDP sockets
Remi Gacogne [Thu, 18 May 2023 11:29:47 +0000 (13:29 +0200)]
Merge pull request #12819 from rgacogne/ddist-reuseaddr-udp
dnsdist: Stop setting SO_REUSEADDR on outgoing UDP client sockets
Otto Moerbeek [Wed, 17 May 2023 12:16:05 +0000 (14:16 +0200)]
Tweaks
Otto Moerbeek [Wed, 17 May 2023 12:06:17 +0000 (14:06 +0200)]
Reformat
Otto Moerbeek [Wed, 17 May 2023 10:54:01 +0000 (12:54 +0200)]
Delint rec-tcp.cc
Otto Moerbeek [Wed, 17 May 2023 10:22:18 +0000 (12:22 +0200)]
Delint validate.cc and related files
romeroalx [Wed, 17 May 2023 09:41:46 +0000 (11:41 +0200)]
Merge pull request #12835 from romeroalx/fix-clang-misc
GH actions - misc-dailies.yaml: set clang version for Ubuntu-20
Otto Moerbeek [Wed, 17 May 2023 08:44:44 +0000 (10:44 +0200)]
Full delint rec-main.cc
Peter van Dijk [Wed, 17 May 2023 08:50:15 +0000 (10:50 +0200)]
Merge pull request #12834 from jpmens/patch-14
Be more specific in describing config-dir
Alexis Romero [Wed, 17 May 2023 08:28:29 +0000 (10:28 +0200)]
GH actions - misc-dailies: Set clang version for Ubuntu-20
Peter van Dijk [Tue, 16 May 2023 18:10:44 +0000 (20:10 +0200)]
Merge pull request #12833 from romeroalx/fix-cifuzz-apt-repo
Changing apt mirror for cifuzz base-builder image
Peter van Dijk [Tue, 16 May 2023 18:10:33 +0000 (20:10 +0200)]
Merge pull request #12810 from romeroalx/actions-debian-container
Run build-and-test-all.yml on a custom Debian 11 container instead of an Ubuntu Runner VM
Jan-Piet Mens [Tue, 16 May 2023 18:07:10 +0000 (20:07 +0200)]
Be more specific in describing config-dir
I think this more clearly describes the option
Alexis Romero [Tue, 16 May 2023 16:59:06 +0000 (18:59 +0200)]
set apt mirror for cifuzz base builder image
Alexis Romero [Fri, 12 May 2023 09:30:50 +0000 (11:30 +0200)]
Run build-and-test-all.yml on a custom debian container
Otto Moerbeek [Tue, 16 May 2023 10:28:47 +0000 (12:28 +0200)]
Merge pull request #12829 from omoerbeek/fix-log-fail
rec: fix clang-tidy botch wrt spelling of "log-fail"
Otto Moerbeek [Tue, 16 May 2023 10:22:12 +0000 (12:22 +0200)]
Merge pull request #12830 from omoerbeek/secpoll-ubuntu-mirror
secpoll check: use preferred ubuntu mirror
Otto Moerbeek [Tue, 16 May 2023 07:33:28 +0000 (09:33 +0200)]
secpoll check: use preferred ubuntu mirror
romeroalx [Tue, 16 May 2023 09:18:13 +0000 (11:18 +0200)]
Merge pull request #12831 from Habbie/apt-no-qq
Fix error retrieving firefox package from ubuntu repo by removing it.
Peter van Dijk [Tue, 16 May 2023 07:38:36 +0000 (09:38 +0200)]
get rid of firefox
Peter van Dijk [Tue, 16 May 2023 07:30:54 +0000 (09:30 +0200)]
more apt no -qq
Peter van Dijk [Tue, 16 May 2023 07:18:00 +0000 (09:18 +0200)]
apt no qq
Otto Moerbeek [Tue, 16 May 2023 06:39:07 +0000 (08:39 +0200)]
Merge pull request #12825 from omoerbeek/rec-fix-simpledottest
rec: Fix DoT test to no use www.powerdns.com, as it changed
Otto Moerbeek [Tue, 16 May 2023 06:23:51 +0000 (08:23 +0200)]
rec: fix clang-tidy botch wrt spelling of "log-fail"
Followup to #12790
Otto Moerbeek [Mon, 15 May 2023 13:09:04 +0000 (15:09 +0200)]
Fix DoT test to no use www.powerdns.com, as it changed
Remi Gacogne [Mon, 15 May 2023 13:32:27 +0000 (15:32 +0200)]
dnsdist: Really disable REUSEADDR on outgoing UDP client sockets
It turns out that our `Socket::bind()` will _helpfully_ enable this
by default.
Otto Moerbeek [Mon, 15 May 2023 13:28:38 +0000 (15:28 +0200)]
Merge pull request #12779 from omoerbeek/rec-cname-length-vs-depth
rec: Distinguish between recursion depth and cname length
Remi Gacogne [Mon, 15 May 2023 12:23:30 +0000 (14:23 +0200)]
Merge pull request #12818 from rgacogne/cang-tidy-inc-cognitive-complexity
clang-tidy: Increase the cognitive complexity threshold to 75
Remi Gacogne [Mon, 15 May 2023 12:10:55 +0000 (14:10 +0200)]
dnsdist: Stop setting SO_REUSEADDR on outgoing UDP client sockets
`SO_REUSEADDR` is useful on TCP server sockets to allow binding quickly
after restarting the process without waiting `TIME_WAIT` seconds, or
to allow some port reuse on BSD. It also allows reusing a port more
quickly for TCP client sockets.
For UDP sockets, however, Linux allows two sockets to be bound to the
same address and port, and will distribute all packets to the most
recent socket, which is very unexpected, to say the least.
Otto Moerbeek [Mon, 15 May 2023 11:40:06 +0000 (13:40 +0200)]
-cppcoreguidelines-avoid-non-const-global-variables
Otto Moerbeek [Mon, 15 May 2023 11:38:10 +0000 (13:38 +0200)]
NOLINT(readability-function-cognitive-complexity) markers
Otto Moerbeek [Mon, 15 May 2023 11:23:55 +0000 (13:23 +0200)]
As an experiment, just fix the two reported cases of performance-unnecessary-value-param
Otto Moerbeek [Fri, 14 Apr 2023 08:43:23 +0000 (10:43 +0200)]
rec: Distinguish between recursion depth and cname length, they are not the same
Otto Moerbeek [Mon, 15 May 2023 11:34:10 +0000 (13:34 +0200)]
Merge pull request #12790 from omoerbeek/rec-lint
rec: delint rec-main.cc wrt high complexity
Otto Moerbeek [Mon, 15 May 2023 11:24:16 +0000 (13:24 +0200)]
Merge pull request #12750 from omoerbeek/rec-log-variable
rec: Log if the answer was marked variable by SyncRes and if it was stored into the packet cache (if !quiet)
Otto Moerbeek [Mon, 15 May 2023 09:49:17 +0000 (11:49 +0200)]
Also log in the non-structured logging case
Otto Moerbeek [Mon, 15 May 2023 10:00:58 +0000 (12:00 +0200)]
Process review comments
Remi Gacogne [Mon, 15 May 2023 08:57:53 +0000 (10:57 +0200)]
clang-tidy: Increase the cognitive complexity threshold to 75
The current level of 50 is too low for a function like
'handleQueuedHealthChecks' which is quite simple.
Peter van Dijk [Mon, 15 May 2023 08:56:51 +0000 (10:56 +0200)]
Merge pull request #12780 from zeha/workaround11804
auth: add setting workaround-11804-max-chunk-records
Remi Gacogne [Mon, 15 May 2023 08:56:25 +0000 (10:56 +0200)]
Merge pull request #12813 from rgacogne/ci-disable-clang-tidy-non-const-global-vars
clang-tidy: Disable cppcoreguidelines-avoid-non-const-global-variables
Chris Hofstaedtler [Fri, 12 May 2023 20:37:13 +0000 (22:37 +0200)]
Apply changes for doc nits
Remi Gacogne [Fri, 12 May 2023 15:57:02 +0000 (17:57 +0200)]
clang-tidy: Disable cppcoreguidelines-avoid-non-const-global-variables
While I agree that we should try to avoid non-const global vars
as much as possible, this rule kills the boost testing framework
so we cannot keep it.
Remi Gacogne [Wed, 3 May 2023 15:55:34 +0000 (17:55 +0200)]
dnsdist: Add a TSAN suppression for the backend re-connection code
Remi Gacogne [Wed, 3 May 2023 14:37:36 +0000 (16:37 +0200)]
dnsdist: check that the UDP responder thread is running after reconnecting
Remi Gacogne [Wed, 3 May 2023 14:36:29 +0000 (16:36 +0200)]
dnsdist: Only log failed backend connection attempt at info on first try
Remi Gacogne [Wed, 5 Apr 2023 20:17:23 +0000 (22:17 +0200)]
dnsdist: Properly handle reconnection failure for backend UDP sockets
We try to reconnect our UDP sockets toward backends on some kind of
network errors that indicate a topology change, but we need to be
careful to handle the case where we actually fail to reconnect, as
we end up with no remaining sockets to use.
This commit properly deals with this case by pausing the thread handling
UDP responses from the backend, instead of having it enter a busy loop,
and by attempting to reconnect if we get a `bad file number` error when
trying to send a UDP datagram to the backend.
Remi Gacogne [Fri, 12 May 2023 14:35:07 +0000 (16:35 +0200)]
Merge pull request #12812 from rgacogne/ci-clang-tidy-disable-union-warning
clang-tidy: Disable cppcoreguidelines-special-member-functions
Peter van Dijk [Fri, 12 May 2023 13:35:56 +0000 (15:35 +0200)]
Merge pull request #12712 from Habbie/move-keyblock
docs: update GPG keyblock link
Remi Gacogne [Fri, 12 May 2023 13:29:37 +0000 (15:29 +0200)]
clang-tidy: Disable cppcoreguidelines-special-member-functions
We will need to re-enable it once https://github.com/PowerDNS/pdns/issues/12809
has been fixed.
Remi Gacogne [Fri, 12 May 2023 09:10:51 +0000 (11:10 +0200)]
Merge pull request #12806 from christofchen/12801-SpoofAction
SpoofAction: copy the QClass from the request, fixes #12801 + regression test
Chris Hofstaedtler [Wed, 26 Apr 2023 13:52:25 +0000 (15:52 +0200)]
auth: add setting workaround-11804
Workaround for https://github.com/PowerDNS/pdns/issues/11804. Defaults to no,
implying the previously hard-coded value of 100.
Christof Chen [Thu, 11 May 2023 18:00:01 +0000 (20:00 +0200)]
fix #12801 + regression test
Peter van Dijk [Thu, 11 May 2023 12:30:08 +0000 (14:30 +0200)]
Merge pull request #12628 from kpfleming/debian-source-artifacts
builder-support: Prepare to make Debian-style source artifacts
Remi Gacogne [Thu, 11 May 2023 12:00:06 +0000 (14:00 +0200)]
Merge pull request #12800 from rgacogne/ddist-health-wrong-id-wrong-message
dnsdist: Print the received, invalid health-check response ID
Remi Gacogne [Thu, 11 May 2023 10:36:33 +0000 (12:36 +0200)]
Merge pull request #12799 from rgacogne/ddist-race-backend-health-check-mode
dnsdist: Suppress a race warning when setting a backend health-check mode
Remi Gacogne [Thu, 11 May 2023 08:15:44 +0000 (10:15 +0200)]
dnsdist: Print the received, invalid health-check response ID
Remi Gacogne [Wed, 10 May 2023 12:47:44 +0000 (14:47 +0200)]
dnsdist: Suppress a race warning when setting a backend health-check mode
There is an actual race when one thread, likely the console, changes
the health-check mode of a given backend just when the health-check
thread is determining whether it should send a health-check probe.
We are fine with getting a wrong value in the health-check thread,
as long as we eventually get the new one, so let's not worry about it
and add a TSAN suppression.
The TSAN report was:
```
WARNING: ThreadSanitizer: data race (pid=5301)
Read of size 1 at 0x7b78000002ae by thread T11:
#0 DownstreamState::healthCheckRequired(std::optional<long>) /__w/pdns/pdns/pdns/dnsdistdist/dnsdist-backend.cc:555:16 (dnsdist+0x18f003)
#1 healthChecksThread() /__w/pdns/pdns/pdns/dnsdistdist/dnsdist.cc:2046:17 (dnsdist+0x811ea9)
#2 void std::__invoke_impl<void, void (*)()>(std::__invoke_other, void (*&&)()) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:60:14 (dnsdist+0x1dfe39)
#3 std::__invoke_result<void (*)()>::type std::__invoke<void (*)()>(void (*&&)()) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:95:14 (dnsdist+0x1dfe39)
#4 void std::thread::_Invoker<std::tuple<void (*)()> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/thread:264:13 (dnsdist+0x1dfe39)
#5 std::thread::_Invoker<std::tuple<void (*)()> >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/thread:271:11 (dnsdist+0x1dfe39)
#6 std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)()> > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/thread:215:13 (dnsdist+0x1dfe39)
#7 <null> <null> (libstdc++.so.6+0xceecf)
Previous write of size 1 at 0x7b78000002ae by thread T21 (mutexes: write M189):
#0 std::enable_if<IsOptional<DownstreamState>::value, setupLuaBindings(LuaContext&, bool)::$_15>::type LuaContext::readIntoFunction<void, LuaContext::Binder<void LuaContext::registerFunctionImpl<setupLuaBindings(LuaContext&, bool)::$_15, void, DownstreamState, boost::optional<bool> >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, setupLuaBindings(LuaContext&, bool)::$_15, LuaContext::tag<DownstreamState>, LuaContext::tag<void (boost::optional<bool>)>)::'lambda'(std::shared_ptr<DownstreamState> const&, boost::optional<bool>)&, std::shared_ptr<DownstreamState> const&>&, boost::optional<bool> >(lua_State*, LuaContext::tag<setupLuaBindings(LuaContext&, bool)::$_15>, void&&, int, LuaContext::tag<DownstreamState>, LuaContext::tag<boost::optional<bool> >) /__w/pdns/pdns/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp (dnsdist+0x4b6ab2)
#1 std::enable_if<!(IsOptional<DownstreamState>::value), setupLuaBindings(LuaContext&, bool)::$_15>::type LuaContext::readIntoFunction<void, void LuaContext::registerFunctionImpl<setupLuaBindings(LuaContext&, bool)::$_15, void, DownstreamState, boost::optional<bool> >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, setupLuaBindings(LuaContext&, bool)::$_15, LuaContext::tag<DownstreamState>, LuaContext::tag<void (boost::optional<bool>)>)::'lambda'(std::shared_ptr<DownstreamState> const&, boost::optional<bool>)&, std::shared_ptr<DownstreamState>, boost::optional<bool> >(lua_State*, LuaContext::tag<setupLuaBindings(LuaContext&, bool)::$_15>, void&&, int, LuaContext::tag<DownstreamState>, LuaContext::tag<boost::optional<bool> >) /__w/pdns/pdns/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:1803:16 (dnsdist+0x4b6ab2)
#2 std::enable_if<(std::integral_constant<bool, true>::value) && (!(std::is_void<setupLuaBindings(LuaContext&, bool)::$_15>::value)), LuaContext::PushedObject>::type LuaContext::Pusher<void (std::shared_ptr<DownstreamState>, boost::optional<bool>), void>::callback2<void LuaContext::registerFunctionImpl<setupLuaBindings(LuaContext&, bool)::$_15, void, DownstreamState, boost::optional<bool> >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, setupLuaBindings(LuaContext&, bool)::$_15, LuaContext::tag<DownstreamState>, LuaContext::tag<void (boost::optional<bool>)>)::'lambda'(std::shared_ptr<DownstreamState> const&, boost::optional<bool>)&>(lua_State*, setupLuaBindings(LuaContext&, bool)::$_15&&, int) /__w/pdns/pdns/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:2443:9 (dnsdist+0x4b6ab2)
#3 LuaContext::PushedObject LuaContext::Pusher<void (std::shared_ptr<DownstreamState>, boost::optional<bool>), void>::callback<void LuaContext::registerFunctionImpl<setupLuaBindings(LuaContext&, bool)::$_15, void, DownstreamState, boost::optional<bool> >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, setupLuaBindings(LuaContext&, bool)::$_15, LuaContext::tag<DownstreamState>, LuaContext::tag<void (boost::optional<bool>)>)::'lambda'(std::shared_ptr<DownstreamState> const&, boost::optional<bool>)>(lua_State*, setupLuaBindings(LuaContext&, bool)::$_15*, int) /__w/pdns/pdns/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:2405:20 (dnsdist+0x4b6ab2)
#4 std::enable_if<boost::has_trivial_destructor<setupLuaBindings(LuaContext&, bool)::$_15>::value, LuaContext::PushedObject>::type LuaContext::Pusher<void (std::shared_ptr<DownstreamState>, boost::optional<bool>), void>::push<void LuaContext::registerFunctionImpl<setupLuaBindings(LuaContext&, bool)::$_15, void, DownstreamState, boost::optional<bool> >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, setupLuaBindings(LuaContext&, bool)::$_15, LuaContext::tag<DownstreamState>, LuaContext::tag<void (boost::optional<bool>)>)::'lambda'(std::shared_ptr<DownstreamState> const&, boost::optional<bool>)>(lua_State*, setupLuaBindings(LuaContext&, bool)::$_15)::'lambda'(lua_State*)::operator()(lua_State*) const /__w/pdns/pdns/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:2334:20 (dnsdist+0x4b6ab2)
#5 std::enable_if<boost::has_trivial_destructor<setupLuaBindings(LuaContext&, bool)::$_15>::value, LuaContext::PushedObject>::type LuaContext::Pusher<void (std::shared_ptr<DownstreamState>, boost::optional<bool>), void>::push<void LuaContext::registerFunctionImpl<setupLuaBindings(LuaContext&, bool)::$_15, void, DownstreamState, boost::optional<bool> >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, setupLuaBindings(LuaContext&, bool)::$_15, LuaContext::tag<DownstreamState>, LuaContext::tag<void (boost::optional<bool>)>)::'lambda'(std::shared_ptr<DownstreamState> const&, boost::optional<bool>)>(lua_State*, setupLuaBindings(LuaContext&, bool)::$_15)::'lambda'(lua_State*)::__invoke(lua_State*) /__w/pdns/pdns/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:2330:31 (dnsdist+0x4b6ab2)
#6 <null> <null> (libluajit-5.1.so.2+0xa5e6)
#7 boost::optional<boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<DownstreamState>, ClientState*, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > > > LuaContext::call<boost::optional<boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<DownstreamState>, ClientState*, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > > > >(lua_State*, LuaContext::PushedObject) /__w/pdns/pdns/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:1413:29 (dnsdist+0x1c2b4b)
#8 boost::optional<boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<DownstreamState>, ClientState*, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > > > LuaContext::executeCode<boost::optional<boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<DownstreamState>, ClientState*, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > > > >(char const*) /__w/pdns/pdns/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:324:16 (dnsdist+0x1c2b4b)
#9 boost::optional<boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<DownstreamState>, ClientState*, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > > > LuaContext::executeCode<boost::optional<boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<DownstreamState>, ClientState*, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > > > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /__w/pdns/pdns/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:301:16 (dnsdist+0x1bf450)
#10 controlClientThread(ConsoleConnection&&) /__w/pdns/pdns/pdns/dnsdistdist/dnsdist-console.cc:897:27 (dnsdist+0x1bf450)
#11 boost::optional<boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<DownstreamState>, ClientState*, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > > > LuaContext::executeCode<boost::optional<boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<DownstreamState>, ClientState*, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, double, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, double> > > > > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /__w/pdns/pdns/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:301:16 (dnsdist+0x1bf450)
#12 controlClientThread(ConsoleConnection&&) /__w/pdns/pdns/pdns/dnsdistdist/dnsdist-console.cc:897:27 (dnsdist+0x1bf450)
#13 void std::__invoke_impl<void, void (*)(ConsoleConnection&&), ConsoleConnection>(std::__invoke_other, void (*&&)(ConsoleConnection&&), ConsoleConnection&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:60:14 (dnsdist+0x1c76f3)
#14 std::__invoke_result<void (*)(ConsoleConnection&&), ConsoleConnection>::type std::__invoke<void (*)(ConsoleConnection&&), ConsoleConnection>(void (*&&)(ConsoleConnection&&), ConsoleConnection&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:95:14 (dnsdist+0x1c76f3)
#15 void std::thread::_Invoker<std::tuple<void (*)(ConsoleConnection&&), ConsoleConnection> >::_M_invoke<0ul, 1ul>(std::_Index_tuple<0ul, 1ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/thread:264:13 (dnsdist+0x1c76f3)
#16 std::thread::_Invoker<std::tuple<void (*)(ConsoleConnection&&), ConsoleConnection> >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/thread:271:11 (dnsdist+0x1c76f3)
#17 std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(ConsoleConnection&&), ConsoleConnection> > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/thread:215:13 (dnsdist+0x1c76f3)
#18 <null> <null> (libstdc++.so.6+0xceecf)
As if synchronized via sleep:
#0 healthChecksThread() /__w/pdns/pdns/pdns/dnsdistdist/dnsdist.cc:2034:5 (dnsdist+0xc77e8)
#1 void std::__invoke_impl<void, void (*)()>(std::__invoke_other, void (*&&)()) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:60:14 (dnsdist+0x811b8e)
#2 std::__invoke_result<void (*)()>::type std::__invoke<void (*)()>(void (*&&)()) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:95:14 (dnsdist+0x811b8e)
#3 void std::thread::_Invoker<std::tuple<void (*)()> >::_M_invoke<0ul>(std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/thread:264:13 (dnsdist+0x811b8e)
#4 std::thread::_Invoker<std::tuple<void (*)()> >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/thread:271:11 (dnsdist+0x811b8e)
#5 std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)()> > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/thread:215:13 (dnsdist+0x811b8e)
#6 <null> <null> (dnsdist+0x1dfe39)
#7 operator new(unsigned long, std::align_val_t) <null> (libstdc++.so.6+0xceecf)
Location is heap block of size 2880 at 0x7b7800000000 allocated by main thread:
#0 __gnu_cxx::new_allocator<std::_Sp_counted_ptr_inplace<DownstreamState, std::allocator<DownstreamState>, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/ext/new_allocator.h:112:31 (dnsdist+0x13f29c)
#1 std::allocator_traits<std::allocator<std::_Sp_counted_ptr_inplace<DownstreamState, std::allocator<DownstreamState>, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator<std::_Sp_counted_ptr_inplace<DownstreamState, std::allocator<DownstreamState>, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/alloc_traits.h:460:20 (dnsdist+0x13f29c)
#2 std::__allocated_ptr<std::allocator<std::_Sp_counted_ptr_inplace<DownstreamState, std::allocator<DownstreamState>, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_ptr_inplace<DownstreamState, std::allocator<DownstreamState>, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_ptr_inplace<DownstreamState, std::allocator<DownstreamState>, (__gnu_cxx::_Lock_policy)2> >&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/allocated_ptr.h:97:21 (dnsdist+0x13f29c)
#3 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<DownstreamState, std::allocator<DownstreamState>, DownstreamState::Config, std::shared_ptr<TLSCtx>, bool>(DownstreamState*&, std::_Sp_alloc_shared_tag<std::allocator<DownstreamState> >, DownstreamState::Config&&, std::shared_ptr<TLSCtx>&&, bool&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/shared_ptr_base.h:680:19 (dnsdist+0x13f29c)
#4 std::__shared_ptr<DownstreamState, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<DownstreamState>, DownstreamState::Config, std::shared_ptr<TLSCtx>, bool>(std::_Sp_alloc_shared_tag<std::allocator<DownstreamState> >, DownstreamState::Config&&, std::shared_ptr<TLSCtx>&&, bool&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/shared_ptr_base.h:1371:14 (dnsdist+0x13f29c)
#5 std::shared_ptr<DownstreamState>::shared_ptr<std::allocator<DownstreamState>, DownstreamState::Config, std::shared_ptr<TLSCtx>, bool>(std::_Sp_alloc_shared_tag<std::allocator<DownstreamState> >, DownstreamState::Config&&, std::shared_ptr<TLSCtx>&&, bool&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/shared_ptr.h:408:4 (dnsdist+0x1db3be)
#6 std::shared_ptr<DownstreamState> std::allocate_shared<DownstreamState, std::allocator<DownstreamState>, DownstreamState::Config, std::shared_ptr<TLSCtx>, bool>(std::allocator<DownstreamState> const&, DownstreamState::Config&&, std::shared_ptr<TLSCtx>&&, bool&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/shared_ptr.h:859:14 (dnsdist+0x1db3be)
#7 std::shared_ptr<DownstreamState> std::make_shared<DownstreamState, DownstreamState::Config, std::shared_ptr<TLSCtx>, bool>(DownstreamState::Config&&, std::shared_ptr<TLSCtx>&&, bool&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/shared_ptr.h:875:14 (dnsdist+0x1db3be)
#8 setupLuaConfig(LuaContext&, bool, bool)::$_3::operator()(boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> > > > > >, boost::optional<int>) const /__w/pdns/pdns/pdns/dnsdistdist/dnsdist-lua.cc:619:37 (dnsdist+0x1db3be)
#9 tor<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> > > > > >, boost::optional<int>), void>::callback2<setupLuaConfig(LuaContext&, bool, bool)::$_3&>(lua_State*, setupLuaConfig(LuaContext&, bool, bool)::$_3&, int) /__w/pdns/pdns/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:2436:31 (dnsdist+0x69065d)
#10 LuaContext::PushedObject LuaContext::Pusher<std::shared_ptr<DownstreamState> (boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> > > > > >, boost::optional<int>), void>::callback<setupLuaConfig(LuaContext&, bool, bool)::$_3>(lua_State*, setupLuaConfig(LuaContext&, bool, bool)::$_3*, int) /__w/pdns/pdns/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:2405:20 (dnsdist+0x69065d)
#11 std::enable_if<boost::has_trivial_destructor<setupLuaConfig(LuaContext&, bool, bool)::$_3>::value, LuaContext::PushedObject>::type LuaContext::Pusher<std::shared_ptr<DownstreamState> (boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> > > > > >, boost::optional<int>), void>::push<setupLuaConfig(LuaContext&, bool, bool)::$_3>(lua_State*, setupLuaConfig(LuaContext&, bool, bool)::$_3)::'lambda'(lua_State*)::operator()(lua_State*) const /__w/pdns/pdns/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:2334:20 (dnsdist+0x69065d)
#12 std::enable_if<boost::has_trivial_destructor<setupLuaConfig(LuaContext&, bool, bool)::$_3>::value, LuaContext::PushedObject>::type LuaContext::Pusher<std::shared_ptr<DownstreamState> (boost::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> >, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, boost::variant<bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::vector<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::function<std::tuple<DNSName, unsigned short, unsigned short> (DNSName const&, unsigned short, unsigned short, dnsheader*)> > > > > >, boost::optional<int>), void>::push<setupLuaConfig(LuaContext&, bool, bool)::$_3>(lua_State*, setupLuaConfig(LuaContext&, bool, bool)::$_3)::'lambda'(lua_State*)::__invoke(lua_State*) /__w/pdns/pdns/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:2330:31 (dnsdist+0x69065d)
#13 <null> <null> (dnsdist+0x687942)
#14 <null> <null> (libluajit-5.1.so.2+0xa5e6)
#15 std::tuple<> LuaContext::call<std::tuple<> >(lua_State*, LuaContext::PushedObject) /__w/pdns/pdns/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:1413:29 (dnsdist+0x577e85)
#16 LuaContext::executeCode(std::istream&) /__w/pdns/pdns/pdns/dnsdistdist/./ext/luawrapper/include/LuaContext.hpp:267:9 (dnsdist+0x685db6)
#17 setupLua(LuaContext&, bool, bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /__w/pdns/pdns/pdns/dnsdistdist/dnsdist-lua.cc:3025:10 (dnsdist+0x67b759)
#18 main /__w/pdns/pdns/pdns/dnsdistdist/dnsdist.cc:2668:17 (dnsdist+0x809d2c)
Mutex M189 (0x55801da4cdf0) created at:
#0 pthread_mutex_lock <null> (dnsdist+0xe74f8)
#1 __gthread_mutex_lock(pthread_mutex_t*) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/x86_64-linux-gnu/c++/10/bits/gthr-default.h:749:12 (dnsdist+0x80c177)
#2 std::mutex::lock() /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/std_mutex.h:100:17 (dnsdist+0x80c177)
#3 std::lock_guard<std::mutex>::lock_guard(std::mutex&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/std_mutex.h:159:19 (dnsdist+0x80c177)
#4 LockGuardedHolder<LuaContext>::LockGuardedHolder(LuaContext&, std::mutex&) /__w/pdns/pdns/pdns/dnsdistdist/./lock.hh:209:60 (dnsdist+0x80c177)
#5 LockGuarded<LuaContext>::lock() /__w/pdns/pdns/pdns/dnsdistdist/./lock.hh:289:12 (dnsdist+0x80c177)
#6 main /__w/pdns/pdns/pdns/dnsdistdist/dnsdist.cc:2668:34 (dnsdist+0x809d0c)
Thread T11 'dnsdist/healthC' (tid=5313, running) created by main thread at:
#0 pthread_create <null> (dnsdist+0xca21d)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xcf144)
#2 main /__w/pdns/pdns/pdns/dnsdistdist/dnsdist.cc:2938:12 (dnsdist+0x80b06e)
Thread T21 'dnsdist/conscli' (tid=5325, finished) created by thread T5 at:
#0 pthread_create <null> (dnsdist+0xca21d)
#1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) <null> (libstdc++.so.6+0xcf144)
#2 void std::__invoke_impl<void, void (*)(int, ComboAddress), int, ComboAddress>(std::__invoke_other, void (*&&)(int, ComboAddress), int&&, ComboAddress&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:60:14 (dnsdist+0x6c0435)
#3 std::__invoke_result<void (*)(int, ComboAddress), int, ComboAddress>::type std::__invoke<void (*)(int, ComboAddress), int, ComboAddress>(void (*&&)(int, ComboAddress), int&&, ComboAddress&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:95:14 (dnsdist+0x6c0435)
#4 void std::thread::_Invoker<std::tuple<void (*)(int, ComboAddress), int, ComboAddress> >::_M_invoke<0ul, 1ul, 2ul>(std::_Index_tuple<0ul, 1ul, 2ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/thread:264:13 (dnsdist+0x6c0435)
#5 std::thread::_Invoker<std::tuple<void (*)(int, ComboAddress), int, ComboAddress> >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/thread:271:11 (dnsdist+0x6c0435)
#6 std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(int, ComboAddress), int, ComboAddress> > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/thread:215:13 (dnsdist+0x6c0435)
#7 <null> <null> (libstdc++.so.6+0xceecf)
```
Otto Moerbeek [Wed, 10 May 2023 11:08:08 +0000 (13:08 +0200)]
Name housekeeping0 better
Fred Morcos [Wed, 10 May 2023 08:32:40 +0000 (10:32 +0200)]
Merge pull request #12792 from fredmorcos/fix-clang-tidy-commit
Fix the `clang-tidy` jobs failing
Remi Gacogne [Tue, 9 May 2023 14:07:37 +0000 (16:07 +0200)]
Merge pull request #12794 from rgacogne/ddist-ossl3-ticket-leak
libssl: Fix a memory leak when processing TLS tickets w/ OpenSSL 3.x
Fred Morcos [Tue, 9 May 2023 13:47:43 +0000 (15:47 +0200)]
Fix indentation
Remi Gacogne [Tue, 9 May 2023 13:15:06 +0000 (15:15 +0200)]
libssl: Fix a memory leak when processing TLS tickets w/ OpenSSL 3.x
Peter van Dijk [Tue, 9 May 2023 12:42:27 +0000 (14:42 +0200)]
Merge pull request #12683 from Habbie/remove-ubuntu-bionic
builder: remove ubuntu bionic target
Fred Morcos [Tue, 9 May 2023 10:31:23 +0000 (12:31 +0200)]
Fix check for recursor clang-tidy output
Co-authored-by: Remi Gacogne <github@coredump.fr>
Fred Morcos [Tue, 9 May 2023 10:02:51 +0000 (12:02 +0200)]
Handle the case where none of the products produce any warnings
Co-authored-by: Remi Gacogne <github@coredump.fr>
Fred Morcos [Tue, 9 May 2023 09:31:27 +0000 (11:31 +0200)]
Consistent formatting
Co-authored-by: Remi Gacogne <github@coredump.fr>
Peter van Dijk [Fri, 24 Mar 2023 10:12:18 +0000 (11:12 +0100)]
switch builder docs target to ubuntu jammy
Peter van Dijk [Fri, 24 Mar 2023 09:40:28 +0000 (10:40 +0100)]
remove ubuntu bionic target, as 18.04 will EOL soon
Fred Morcos [Mon, 8 May 2023 12:30:48 +0000 (14:30 +0200)]
Don't fail when there are no warnings produced by clang-tidy
Fred Morcos [Mon, 8 May 2023 12:24:39 +0000 (14:24 +0200)]
Quote the output vars
Otto Moerbeek [Mon, 8 May 2023 12:01:40 +0000 (14:01 +0200)]
Add // NOLINT(readability-function-cognitive-complexity)
Once readability-function-cognitive-complexity.IgnoreMacros works
in CI, these annotations can be removed. It currenlty does not work
as clang-12 does not support it.
Otto Moerbeek [Mon, 8 May 2023 09:58:54 +0000 (11:58 +0200)]
mark getenv() NOLINT
Locally (using clangd) no warning is reported...
Otto Moerbeek [Mon, 8 May 2023 09:07:10 +0000 (11:07 +0200)]
Some general clang-tidy cleanup
Otto Moerbeek [Mon, 8 May 2023 08:58:29 +0000 (10:58 +0200)]
Split recursorThread() to reduce complexity
Otto Moerbeek [Mon, 8 May 2023 08:21:04 +0000 (10:21 +0200)]
Reformat
Otto Moerbeek [Mon, 8 May 2023 08:20:06 +0000 (10:20 +0200)]
split main() to reduce complexity
Otto Moerbeek [Mon, 8 May 2023 07:51:19 +0000 (09:51 +0200)]
Split serviceMain() to reduce cognitive complexity
Otto Moerbeek [Mon, 8 May 2023 06:58:45 +0000 (08:58 +0200)]
serviceMain: fix all lints except complexity
Remi Gacogne [Fri, 5 May 2023 12:34:04 +0000 (14:34 +0200)]
Merge pull request #12788 from rgacogne/clang-tidy-increase-code-complexity-threshold
clang-tidy: Increase the code complexity threshold to 50 for now
Remi Gacogne [Fri, 5 May 2023 09:08:48 +0000 (11:08 +0200)]
clang-tidy: Lower the code complexity threshold to 50
Let's see how it goes.
Remi Gacogne [Thu, 4 May 2023 14:38:53 +0000 (16:38 +0200)]
clang-tidy: Increase the code complexity threshold to 100 for now
Remi Gacogne [Thu, 4 May 2023 12:16:12 +0000 (14:16 +0200)]
Merge pull request #12786 from rgacogne/ci-separate-failure-tidy
ci: Add a separate check for clang-tidy failure
Peter van Dijk [Thu, 4 May 2023 11:20:14 +0000 (13:20 +0200)]
Merge pull request #12787 from Habbie/auth-4.8.0-beta1-secpoll-serial
bump secpoll serial, adjust release date
Peter van Dijk [Thu, 4 May 2023 10:07:20 +0000 (12:07 +0200)]
bump secpoll serial, adjust release date
Remi Gacogne [Thu, 4 May 2023 08:32:09 +0000 (10:32 +0200)]
ci: Add a separate check for clang-tidy failure
This way the tests are still run even if clang-tidy reported a
warning, instead of stopping everything.
Peter van Dijk [Thu, 4 May 2023 09:53:56 +0000 (11:53 +0200)]
Merge pull request #12781 from Habbie/auth-4.8.0-beta1-docs
auth-4.8.0-beta1: secpoll&docs
Otto Moerbeek [Wed, 3 May 2023 12:51:10 +0000 (14:51 +0200)]
Merge pull request #12748 from omoerbeek/rec-ws-total-unused
rec: warning: variable 'total' set but not used