Get 2 possible datarace (tsan report in AuthQueryCache + AuthPacketCache)
Environment
Operating system: manjaro lastest x86_64
Software version: gcc12
Software source: master commit 9c9e6a1dc3929201e8205a4814407f0352c368e9 (I rebuild on lastest master) also on 1d2e0eeabeb33f6ddce8a7f1c30b48d4da891ed8 impact also auth-4.6.2
run with ./pdns/pdns_server --launch=gsqlite3 --module-dir=./modules/gsqlite3backend.libs --socket-dir=/tmp/sqlite3 --local-port=5354 --allow-axfr-ips='0.0.0.0/0,::/0' --loglevel=9 --no-config --zone-cache-refresh-interval=0 --gsqlite3-database=./pdns_sqlite3.db (database will be empty)
run dnspyre -n 1 -c 8 -s localhost:5354 --recurse -t SOA @domains.txt --distribution --color --plot . (no domain will be found)
Also reproducible with our backend I only reported the minimal case with sqlite3 same report from tsan.
Expected behaviour
No datarace or indication that's it's an Okayish one.
Actual behaviour
Get datarace in Tsan
Tests Regression/unit
Not observable in tests or default regressionnal test (maybe I did'nt managed to run them all).
Other information
Possible datarace on QC
Edited the paste to lastest master commit
SUMMARY: ThreadSanitizer: data race $HOME/pdns/pdns/auth-querycache.cc:212
in AuthQueryCache::cleanupIfNeeded()
Sorry for the edits had the strange idea to do not update the logs, mixed AuthPacketCache with AuthQueryCache while writing the issue (they look similar).
Short description
Get 2 possible datarace (tsan report in AuthQueryCache + AuthPacketCache)
Environment
(I rebuild on lastest master)also on 1d2e0eeabeb33f6ddce8a7f1c30b48d4da891ed8 impact alsoauth-4.6.2
Steps to reproduce
./configure --with-dynmodules= --with-modules="gsqlite3" --enable-malloc-trace --enable-ubsan CXXFLAGS='-ggdb -DHAVE_CXX11' CFLAGS='-DHAVE_CXX11' YAHTTP_CFLAGS='-DHAVE_CXX11' --enable-coverage --enable-tsan --enable-unit-tests
./pdns/pdns_server --launch=gsqlite3 --module-dir=./modules/gsqlite3backend.libs --socket-dir=/tmp/sqlite3 --local-port=5354 --allow-axfr-ips='0.0.0.0/0,::/0' --loglevel=9 --no-config --zone-cache-refresh-interval=0 --gsqlite3-database=./pdns_sqlite3.db
(database will be empty)dnspyre -n 1 -c 8 -s localhost:5354 --recurse -t SOA @domains.txt --distribution --color --plot .
(no domain will be found)Also reproducible with our backend I only reported the minimal case with sqlite3 same report from
tsan
.Expected behaviour
No datarace or indication that's it's an Okayish one.
Actual behaviour
Get datarace in Tsan
Tests Regression/unit
Not observable in tests or default regressionnal test (maybe I did'nt managed to run them all).
Other information
Possible datarace on
QC
Edited the paste to lastest master commit
see: https://github.com/PowerDNS/pdns/blob/master/pdns/auth-querycache.cc#L212
Possible datarace on:
PC
See: https://github.com/PowerDNS/pdns/blob/master/pdns/auth-packetcache.cc#L254