build with libc allocator, and with the boost context lib support for valgrind:
cmake -DALLOCATOR=libc -DWITH_BOOST_VALGRIND=ON ..
run vstart cluster:
MON=1 OSD=1 MDS=0 MGR=0 RGW=1 ../src/vstart.sh -n -d
kill the radosgw and rerun it under valgrind:
valgrind --vgdb=yes --trace-children=no --child-silent-after-fork=yes --num-callers=10 \
--suppressions=../qa/valgrind.supp --log-file="rgw-valgrind.log"\
--time-stamp=yes --tool=memcheck --max-threads=1024 -- \
./bin/radosgw -c ./ceph.conf --log-file=./out/radosgw.8000.log --admin-socket=./out/radosgw.8000.asok --pid-file=./out/radosgw.8000.pid -n client.rgw.8000 --rgw_frontends="beast port=8000" --debug_ms=0 --debug_rgw=20 -f
build with tcmalloc allocator, and with the boost context lib support for valgrind:
cmake -DALLOCATOR=tcmalloc -DWITH_BOOST_VALGRIND=ON ..
run vstart cluster:
MON=1 OSD=1 MDS=0 MGR=0 RGW=1 ../src/vstart.sh -n -d
kill the radosgw and rerun it under valgrind:
valgrind --vgdb=yes --trace-children=no --child-silent-after-fork=yes --num-callers=10 \
--suppressions=../qa/valgrind.supp --log-file="rgw-valgrind.log" \
--time-stamp=yes --tool=memcheck --max-threads=1024 \
--soname-synonyms=somalloc="*tcmalloc*" -- \
./bin/radosgw -c ./ceph.conf --log-file=./out/radosgw.8000.log --admin-socket=./out/radosgw.8000.asok --pid-file=./out/radosgw.8000.pid -n client.rgw.8000 --rgw_frontends="beast port=8000" --debug_ms=0 --debug_rgw=20 -f