Memory leak reports in ODBC backend
vadz opened this issue · 2 comments
vadz commented
Running ODBC test under Ubuntu 22.04 results in many memory leak reports, mostly inside SQLDescribeCol()
. We need to check if we really forget to free something or if the reports are bogus -- and suppress them in this case.
Full log
Test command: /home/runner/work/soci/soci/_build/bin/soci_odbc_test_postgresql "FILEDSN=/home/runner/work/soci/soci/tests/odbc/test-postgresql.dsn" "--invisibles"
Working Directory: /home/runner/work/soci/soci/_build/tests/odbc
Test timeout computed to be: 10000000
Using ODBC driver version 13.02.0000
===============================================================================
All tests passed (1892 assertions in 59 test cases)
=================================================================
==3508==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 320 byte(s) in 1 object(s) allocated from:
#0 0x7f2486706867 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
#1 0x7f248309847a in QR_Constructor /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/qresult.c:174
#2 0x7f24830d1b77 in ParseAndDescribeWithLibpq.constprop.0 /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:2943
#3 0x7f248308fdb2 in desc_params_and_sync /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2839
#4 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2899
#5 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2876
#6 0x7f248309c529 in SC_describe /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:1160
#7 0x7f248309c529 in SC_describe_ok /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/results.c:95
#8 0x7f248309c8d5 in PGAPI_DescribeCol /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/results.c:318
#9 0x7f24830b344f in SQLDescribeCol /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/odbcapi.c:273
#10 0x7f24865f6f0a in SQLDescribeCol (/lib/x86_64-linux-gnu/libodbc.so.2+0x13f0a)
#11 0x7f24865a1af8 in soci::odbc_statement_backend::column_size(int) /home/runner/work/soci/soci/src/backends/odbc/statement.cpp:395
#12 0x7f2486599115 in soci::odbc_standard_into_type_backend::define_by_pos(int&, void*, soci::details::exchange_type) /home/runner/work/soci/soci/src/backends/odbc/standard-into-type.cpp:46
#13 0x7f2486478ace in soci::details::standard_into_type::define(soci::details::statement_impl&, int&) /home/runner/work/soci/soci/src/core/into-type.cpp:27
#14 0x7f24865129d7 in soci::details::statement_impl::define_and_bind() /home/runner/work/soci/soci/src/core/statement.cpp:214
#15 0x7f2486511167 in soci::details::statement_impl::statement_impl(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/src/core/statement.cpp:57
#16 0x5616a4e694c4 in soci::statement::statement(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/include/soci/statement.h:177
#17 0x5616a4f25633 in soci::details::rowset_impl<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::rowset_impl(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/include/soci/rowset.h:117
#18 0x5616a4eebb3c in soci::rowset<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::rowset(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/include/soci/rowset.h:175
#19 0x5616a4dd8a2e in test /home/runner/work/soci/soci/tests/common-tests.h:3162
#20 0x5616a4e62759 in invoke /home/runner/work/soci/soci/tests/catch.hpp:708
#21 0x5616a4cfa113 in Catch::TestCase::invoke() const /home/runner/work/soci/soci/tests/catch.hpp:8291
#22 0x5616a4e91846 in Catch::RunContext::invokeActiveTestCase() /home/runner/work/soci/soci/tests/catch.hpp:6852
#23 0x5616a4e91016 in Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/runner/work/soci/soci/tests/catch.hpp:6819
#24 0x5616a4e8deb0 in Catch::RunContext::runTest(Catch::TestCase const&) /home/runner/work/soci/soci/tests/catch.hpp:6632
#25 0x5616a4cf3440 in Catch::runTests(Catch::Ptr<Catch::Config> const&) /home/runner/work/soci/soci/tests/catch.hpp:6992
#26 0x5616a4e9303b in Catch::Session::run() /home/runner/work/soci/soci/tests/catch.hpp:7126
#27 0x5616a4e92cdb in Catch::Session::run(int, char const* const*) /home/runner/work/soci/soci/tests/catch.hpp:7079
#28 0x5616a4e544db in main /home/runner/work/soci/soci/tests/odbc/test-odbc-postgresql.cpp:315
#29 0x7f2485e91d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
#30 0x7f2485e91e3f in __libc_start_main_impl ../csu/libc-start.c:392
#31 0x5616a4cf1724 in _start (/home/runner/work/soci/soci/_build/bin/soci_odbc_test_postgresql+0x5a724)
Direct leak of 320 byte(s) in 1 object(s) allocated from:
#0 0x7f2486706867 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
#1 0x7f248309847a in QR_Constructor /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/qresult.c:174
#2 0x7f24830d1b77 in ParseAndDescribeWithLibpq.constprop.0 /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:2943
#3 0x7f248308fdb2 in desc_params_and_sync /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2839
#4 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2899
#5 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2876
#6 0x7f248309c529 in SC_describe /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:1160
#7 0x7f248309c529 in SC_describe_ok /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/results.c:95
#8 0x7f24830b6cfd in PGAPI_NumResultCols /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/results.c:188
#9 0x7f24830b6cfd in SQLNumResultCols /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/odbcapi.c:552
#10 0x7f2486600873 in SQLNumResultCols (/lib/x86_64-linux-gnu/libodbc.so.2+0x1d873)
#11 0x7f24865a1142 in soci::odbc_statement_backend::prepare_for_describe() /home/runner/work/soci/soci/src/backends/odbc/statement.cpp:322
#12 0x7f2486515b1e in soci::details::statement_impl::describe() /home/runner/work/soci/soci/src/core/statement.cpp:670
#13 0x7f248651336e in soci::details::statement_impl::execute(bool) /home/runner/work/soci/soci/src/core/statement.cpp:296
#14 0x5616a4e69844 in soci::statement::execute(bool) /home/runner/work/soci/soci/include/soci/statement.h:216
#15 0x5616a4f24087 in soci::details::rowset_impl<soci::row>::rowset_impl(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/include/soci/rowset.h:120
#16 0x5616a4eea49e in soci::rowset<soci::row>::rowset(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/include/soci/rowset.h:175
#17 0x5616a4e2730a in test /home/runner/work/soci/soci/tests/common-tests.h:4437
#18 0x5616a4e60475 in invoke /home/runner/work/soci/soci/tests/catch.hpp:708
#19 0x5616a4cfa113 in Catch::TestCase::invoke() const /home/runner/work/soci/soci/tests/catch.hpp:8291
#20 0x5616a4e91846 in Catch::RunContext::invokeActiveTestCase() /home/runner/work/soci/soci/tests/catch.hpp:6852
#21 0x5616a4e91016 in Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/runner/work/soci/soci/tests/catch.hpp:6819
#22 0x5616a4e8deb0 in Catch::RunContext::runTest(Catch::TestCase const&) /home/runner/work/soci/soci/tests/catch.hpp:6632
#23 0x5616a4cf3440 in Catch::runTests(Catch::Ptr<Catch::Config> const&) /home/runner/work/soci/soci/tests/catch.hpp:6992
#24 0x5616a4e9303b in Catch::Session::run() /home/runner/work/soci/soci/tests/catch.hpp:7126
#25 0x5616a4e92cdb in Catch::Session::run(int, char const* const*) /home/runner/work/soci/soci/tests/catch.hpp:7079
#26 0x5616a4e544db in main /home/runner/work/soci/soci/tests/odbc/test-odbc-postgresql.cpp:315
#27 0x7f2485e91d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
#28 0x7f2485e91e3f in __libc_start_main_impl ../csu/libc-start.c:392
#29 0x5616a4cf1724 in _start (/home/runner/work/soci/soci/_build/bin/soci_odbc_test_postgresql+0x5a724)
Direct leak of 320 byte(s) in 1 object(s) allocated from:
#0 0x7f2486706867 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
#1 0x7f248309847a in QR_Constructor /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/qresult.c:174
#2 0x7f24830d1b77 in ParseAndDescribeWithLibpq.constprop.0 /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:2943
#3 0x7f248308fdb2 in desc_params_and_sync /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2839
#4 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2899
#5 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2876
#6 0x7f24830afb5e in libpq_bind_and_exec /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:2675
#7 0x7f24830afb5e in SC_execute /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:2015
#8 0x7f24830929b1 in Exec_with_parameters_resolved /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/execute.c:518
#9 0x7f24830997b2 in PGAPI_Execute /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/execute.c:1182
#10 0x7f24830b39d7 in SQLExecute /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/odbcapi.c:352
#11 0x7f24865f48de in SQLExecute (/lib/x86_64-linux-gnu/libodbc.so.2+0x118de)
#12 0x7f248659fc37 in soci::odbc_statement_backend::execute(int) /home/runner/work/soci/soci/src/backends/odbc/statement.cpp:154
#13 0x7f24865134cb in soci::details::statement_impl::execute(bool) /home/runner/work/soci/soci/src/core/statement.cpp:319
#14 0x5616a4e69844 in soci::statement::execute(bool) /home/runner/work/soci/soci/include/soci/statement.h:216
#15 0x7f24864876da in soci::details::ref_counted_statement::final_action() /home/runner/work/soci/soci/src/core/ref-counted-statement.cpp:54
#16 0x7f248647f35b in soci::details::ref_counted_statement_base::dec_ref() /home/runner/work/soci/soci/include/soci/ref-counted-statement.h:45
#17 0x7f248647cb99 in soci::details::once_temp_type::~once_temp_type() /home/runner/work/soci/soci/src/core/once-temp-type.cpp:40
#18 0x5616a4eb7d45 in soci::tests::table_creator_base::drop() /home/runner/work/soci/soci/tests/common-tests.h:305
#19 0x5616a4eb7c0e in soci::tests::table_creator_base::~table_creator_base() /home/runner/work/soci/soci/tests/common-tests.h:299
#20 0x5616a4fbfa5a in table_creator_one::~table_creator_one() /home/runner/work/soci/soci/tests/odbc/test-odbc-postgresql.cpp:89
#21 0x5616a4fbfa79 in table_creator_one::~table_creator_one() /home/runner/work/soci/soci/tests/odbc/test-odbc-postgresql.cpp:89
#22 0x5616a4f15192 in std::default_delete<soci::tests::table_creator_base>::operator()(soci::tests::table_creator_base*) const /usr/include/c++/11/bits/unique_ptr.h:85
#23 0x5616a4edb7fe in std::unique_ptr<soci::tests::table_creator_base, std::default_delete<soci::tests::table_creator_base> >::~unique_ptr() /usr/include/c++/11/bits/unique_ptr.h:361
#24 0x5616a4e217fc in soci::tests::test_cases::run_query_transformation_test(soci::tests::test_context_base const&, soci::session&) /home/runner/work/soci/soci/tests/common-tests.h:4289
#25 0x5616a4e226b8 in test /home/runner/work/soci/soci/tests/common-tests.h:4294
#26 0x5616a4e610eb in invoke /home/runner/work/soci/soci/tests/catch.hpp:708
#27 0x5616a4cfa113 in Catch::TestCase::invoke() const /home/runner/work/soci/soci/tests/catch.hpp:8291
#28 0x5616a4e91846 in Catch::RunContext::invokeActiveTestCase() /home/runner/work/soci/soci/tests/catch.hpp:6852
#29 0x5616a4e91016 in Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/runner/work/soci/soci/tests/catch.hpp:6819
#30 0x5616a4e8deb0 in Catch::RunContext::runTest(Catch::TestCase const&) /home/runner/work/soci/soci/tests/catch.hpp:6632
#31 0x5616a4cf3440 in Catch::runTests(Catch::Ptr<Catch::Config> const&) /home/runner/work/soci/soci/tests/catch.hpp:6992
Direct leak of 320 byte(s) in 1 object(s) allocated from:
#0 0x7f2486706867 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
#1 0x7f248309847a in QR_Constructor /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/qresult.c:174
#2 0x7f24830d1b77 in ParseAndDescribeWithLibpq.constprop.0 /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:2943
#3 0x7f248308fdb2 in desc_params_and_sync /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2839
#4 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2899
#5 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2876
#6 0x7f24830afb5e in libpq_bind_and_exec /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:2675
#7 0x7f24830afb5e in SC_execute /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:2015
#8 0x7f24830929b1 in Exec_with_parameters_resolved /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/execute.c:518
#9 0x7f24830997b2 in PGAPI_Execute /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/execute.c:1182
#10 0x7f24830b39d7 in SQLExecute /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/odbcapi.c:352
#11 0x7f24865f48de in SQLExecute (/lib/x86_64-linux-gnu/libodbc.so.2+0x118de)
#12 0x7f248659fc37 in soci::odbc_statement_backend::execute(int) /home/runner/work/soci/soci/src/backends/odbc/statement.cpp:154
#13 0x7f24865134cb in soci::details::statement_impl::execute(bool) /home/runner/work/soci/soci/src/core/statement.cpp:319
#14 0x5616a4e69844 in soci::statement::execute(bool) /home/runner/work/soci/soci/include/soci/statement.h:216
#15 0x7f24864876da in soci::details::ref_counted_statement::final_action() /home/runner/work/soci/soci/src/core/ref-counted-statement.cpp:54
#16 0x7f248647f35b in soci::details::ref_counted_statement_base::dec_ref() /home/runner/work/soci/soci/include/soci/ref-counted-statement.h:45
#17 0x7f248647cb99 in soci::details::once_temp_type::~once_temp_type() /home/runner/work/soci/soci/src/core/once-temp-type.cpp:40
#18 0x5616a4eb7d45 in soci::tests::table_creator_base::drop() /home/runner/work/soci/soci/tests/common-tests.h:305
#19 0x5616a4eb7c0e in soci::tests::table_creator_base::~table_creator_base() /home/runner/work/soci/soci/tests/common-tests.h:299
#20 0x5616a4fbfa5a in table_creator_one::~table_creator_one() /home/runner/work/soci/soci/tests/odbc/test-odbc-postgresql.cpp:89
#21 0x5616a4fbfa79 in table_creator_one::~table_creator_one() /home/runner/work/soci/soci/tests/odbc/test-odbc-postgresql.cpp:89
#22 0x5616a4f15192 in std::default_delete<soci::tests::table_creator_base>::operator()(soci::tests::table_creator_base*) const /usr/include/c++/11/bits/unique_ptr.h:85
#23 0x5616a4edb7fe in std::unique_ptr<soci::tests::table_creator_base, std::default_delete<soci::tests::table_creator_base> >::~unique_ptr() /usr/include/c++/11/bits/unique_ptr.h:361
#24 0x5616a4e217fc in soci::tests::test_cases::run_query_transformation_test(soci::tests::test_context_base const&, soci::session&) /home/runner/work/soci/soci/tests/common-tests.h:4289
#25 0x5616a4e22983 in test /home/runner/work/soci/soci/tests/common-tests.h:4310
#26 0x5616a4e60e6d in invoke /home/runner/work/soci/soci/tests/catch.hpp:708
#27 0x5616a4cfa113 in Catch::TestCase::invoke() const /home/runner/work/soci/soci/tests/catch.hpp:8291
#28 0x5616a4e91846 in Catch::RunContext::invokeActiveTestCase() /home/runner/work/soci/soci/tests/catch.hpp:6852
#29 0x5616a4e91016 in Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/runner/work/soci/soci/tests/catch.hpp:6819
#30 0x5616a4e8deb0 in Catch::RunContext::runTest(Catch::TestCase const&) /home/runner/work/soci/soci/tests/catch.hpp:6632
#31 0x5616a4cf3440 in Catch::runTests(Catch::Ptr<Catch::Config> const&) /home/runner/work/soci/soci/tests/catch.hpp:6992
Indirect leak of 32 byte(s) in 1 object(s) allocated from:
#0 0x7f2486706a37 in __interceptor_calloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:154
#1 0x7f24830d2372 in CI_set_num_fields /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/columninfo.c:146
#2 0x7f24830d2372 in CI_read_fields_from_pgres /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/columninfo.c:74
#3 0x7f24830d2372 in ParseAndDescribeWithLibpq.constprop.0 /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:3028
#4 0x7f248308fdb2 in desc_params_and_sync /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2839
#5 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2899
#6 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2876
#7 0x7f248309c529 in SC_describe /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:1160
#8 0x7f248309c529 in SC_describe_ok /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/results.c:95
#9 0x7f248309c8d5 in PGAPI_DescribeCol /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/results.c:318
#10 0x7f24830b344f in SQLDescribeCol /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/odbcapi.c:273
#11 0x7f24865f6f0a in SQLDescribeCol (/lib/x86_64-linux-gnu/libodbc.so.2+0x13f0a)
#12 0x7f24865a1af8 in soci::odbc_statement_backend::column_size(int) /home/runner/work/soci/soci/src/backends/odbc/statement.cpp:395
#13 0x7f2486599115 in soci::odbc_standard_into_type_backend::define_by_pos(int&, void*, soci::details::exchange_type) /home/runner/work/soci/soci/src/backends/odbc/standard-into-type.cpp:46
#14 0x7f2486478ace in soci::details::standard_into_type::define(soci::details::statement_impl&, int&) /home/runner/work/soci/soci/src/core/into-type.cpp:27
#15 0x7f24865129d7 in soci::details::statement_impl::define_and_bind() /home/runner/work/soci/soci/src/core/statement.cpp:214
#16 0x7f2486511167 in soci::details::statement_impl::statement_impl(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/src/core/statement.cpp:57
#17 0x5616a4e694c4 in soci::statement::statement(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/include/soci/statement.h:177
#18 0x5616a4f25633 in soci::details::rowset_impl<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::rowset_impl(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/include/soci/rowset.h:117
#19 0x5616a4eebb3c in soci::rowset<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::rowset(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/include/soci/rowset.h:175
#20 0x5616a4dd8a2e in test /home/runner/work/soci/soci/tests/common-tests.h:3162
#21 0x5616a4e62759 in invoke /home/runner/work/soci/soci/tests/catch.hpp:708
#22 0x5616a4cfa113 in Catch::TestCase::invoke() const /home/runner/work/soci/soci/tests/catch.hpp:8291
#23 0x5616a4e91846 in Catch::RunContext::invokeActiveTestCase() /home/runner/work/soci/soci/tests/catch.hpp:6852
#24 0x5616a4e91016 in Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/runner/work/soci/soci/tests/catch.hpp:6819
#25 0x5616a4e8deb0 in Catch::RunContext::runTest(Catch::TestCase const&) /home/runner/work/soci/soci/tests/catch.hpp:6632
#26 0x5616a4cf3440 in Catch::runTests(Catch::Ptr<Catch::Config> const&) /home/runner/work/soci/soci/tests/catch.hpp:6992
#27 0x5616a4e9303b in Catch::Session::run() /home/runner/work/soci/soci/tests/catch.hpp:7126
#28 0x5616a4e92cdb in Catch::Session::run(int, char const* const*) /home/runner/work/soci/soci/tests/catch.hpp:7079
#29 0x5616a4e544db in main /home/runner/work/soci/soci/tests/odbc/test-odbc-postgresql.cpp:315
#30 0x7f2485e91d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
#31 0x7f2485e91e3f in __libc_start_main_impl ../csu/libc-start.c:392
#32 0x5616a4cf1724 in _start (/home/runner/work/soci/soci/_build/bin/soci_odbc_test_postgresql+0x5a724)
Indirect leak of 16 byte(s) in 1 object(s) allocated from:
#0 0x7f2486706867 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
#1 0x7f24830984a5 in CI_Constructor /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/columninfo.c:30
#2 0x7f24830984a5 in QR_Constructor /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/qresult.c:185
#3 0x7f24830d1b77 in ParseAndDescribeWithLibpq.constprop.0 /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:2943
#4 0x7f248308fdb2 in desc_params_and_sync /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2839
#5 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2899
#6 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2876
#7 0x7f248309c529 in SC_describe /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:1160
#8 0x7f248309c529 in SC_describe_ok /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/results.c:95
#9 0x7f248309c8d5 in PGAPI_DescribeCol /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/results.c:318
#10 0x7f24830b344f in SQLDescribeCol /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/odbcapi.c:273
#11 0x7f24865f6f0a in SQLDescribeCol (/lib/x86_64-linux-gnu/libodbc.so.2+0x13f0a)
#12 0x7f24865a1af8 in soci::odbc_statement_backend::column_size(int) /home/runner/work/soci/soci/src/backends/odbc/statement.cpp:395
#13 0x7f2486599115 in soci::odbc_standard_into_type_backend::define_by_pos(int&, void*, soci::details::exchange_type) /home/runner/work/soci/soci/src/backends/odbc/standard-into-type.cpp:46
#14 0x7f2486478ace in soci::details::standard_into_type::define(soci::details::statement_impl&, int&) /home/runner/work/soci/soci/src/core/into-type.cpp:27
#15 0x7f24865129d7 in soci::details::statement_impl::define_and_bind() /home/runner/work/soci/soci/src/core/statement.cpp:214
#16 0x7f2486511167 in soci::details::statement_impl::statement_impl(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/src/core/statement.cpp:57
#17 0x5616a4e694c4 in soci::statement::statement(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/include/soci/statement.h:177
#18 0x5616a4f25633 in soci::details::rowset_impl<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::rowset_impl(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/include/soci/rowset.h:117
#19 0x5616a4eebb3c in soci::rowset<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::rowset(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/include/soci/rowset.h:175
#20 0x5616a4dd8a2e in test /home/runner/work/soci/soci/tests/common-tests.h:3162
#21 0x5616a4e62759 in invoke /home/runner/work/soci/soci/tests/catch.hpp:708
#22 0x5616a4cfa113 in Catch::TestCase::invoke() const /home/runner/work/soci/soci/tests/catch.hpp:8291
#23 0x5616a4e91846 in Catch::RunContext::invokeActiveTestCase() /home/runner/work/soci/soci/tests/catch.hpp:6852
#24 0x5616a4e91016 in Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/runner/work/soci/soci/tests/catch.hpp:6819
#25 0x5616a4e8deb0 in Catch::RunContext::runTest(Catch::TestCase const&) /home/runner/work/soci/soci/tests/catch.hpp:6632
#26 0x5616a4cf3440 in Catch::runTests(Catch::Ptr<Catch::Config> const&) /home/runner/work/soci/soci/tests/catch.hpp:6992
#27 0x5616a4e9303b in Catch::Session::run() /home/runner/work/soci/soci/tests/catch.hpp:7126
#28 0x5616a4e92cdb in Catch::Session::run(int, char const* const*) /home/runner/work/soci/soci/tests/catch.hpp:7079
#29 0x5616a4e544db in main /home/runner/work/soci/soci/tests/odbc/test-odbc-postgresql.cpp:315
#30 0x7f2485e91d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
#31 0x7f2485e91e3f in __libc_start_main_impl ../csu/libc-start.c:392
#32 0x5616a4cf1724 in _start (/home/runner/work/soci/soci/_build/bin/soci_odbc_test_postgresql+0x5a724)
Indirect leak of 16 byte(s) in 1 object(s) allocated from:
#0 0x7f2486706867 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
#1 0x7f24830984a5 in CI_Constructor /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/columninfo.c:30
#2 0x7f24830984a5 in QR_Constructor /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/qresult.c:185
#3 0x7f24830d1b77 in ParseAndDescribeWithLibpq.constprop.0 /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:2943
#4 0x7f248308fdb2 in desc_params_and_sync /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2839
#5 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2899
#6 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2876
#7 0x7f248309c529 in SC_describe /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:1160
#8 0x7f248309c529 in SC_describe_ok /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/results.c:95
#9 0x7f24830b6cfd in PGAPI_NumResultCols /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/results.c:188
#10 0x7f24830b6cfd in SQLNumResultCols /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/odbcapi.c:552
#11 0x7f2486600873 in SQLNumResultCols (/lib/x86_64-linux-gnu/libodbc.so.2+0x1d873)
#12 0x7f24865a1142 in soci::odbc_statement_backend::prepare_for_describe() /home/runner/work/soci/soci/src/backends/odbc/statement.cpp:322
#13 0x7f2486515b1e in soci::details::statement_impl::describe() /home/runner/work/soci/soci/src/core/statement.cpp:670
#14 0x7f248651336e in soci::details::statement_impl::execute(bool) /home/runner/work/soci/soci/src/core/statement.cpp:296
#15 0x5616a4e69844 in soci::statement::execute(bool) /home/runner/work/soci/soci/include/soci/statement.h:216
#16 0x5616a4f24087 in soci::details::rowset_impl<soci::row>::rowset_impl(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/include/soci/rowset.h:120
#17 0x5616a4eea49e in soci::rowset<soci::row>::rowset(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/include/soci/rowset.h:175
#18 0x5616a4e2730a in test /home/runner/work/soci/soci/tests/common-tests.h:4437
#19 0x5616a4e60475 in invoke /home/runner/work/soci/soci/tests/catch.hpp:708
#20 0x5616a4cfa113 in Catch::TestCase::invoke() const /home/runner/work/soci/soci/tests/catch.hpp:8291
#21 0x5616a4e91846 in Catch::RunContext::invokeActiveTestCase() /home/runner/work/soci/soci/tests/catch.hpp:6852
#22 0x5616a4e91016 in Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/runner/work/soci/soci/tests/catch.hpp:6819
#23 0x5616a4e8deb0 in Catch::RunContext::runTest(Catch::TestCase const&) /home/runner/work/soci/soci/tests/catch.hpp:6632
#24 0x5616a4cf3440 in Catch::runTests(Catch::Ptr<Catch::Config> const&) /home/runner/work/soci/soci/tests/catch.hpp:6992
#25 0x5616a4e9303b in Catch::Session::run() /home/runner/work/soci/soci/tests/catch.hpp:7126
#26 0x5616a4e92cdb in Catch::Session::run(int, char const* const*) /home/runner/work/soci/soci/tests/catch.hpp:7079
#27 0x5616a4e544db in main /home/runner/work/soci/soci/tests/odbc/test-odbc-postgresql.cpp:315
#28 0x7f2485e91d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
#29 0x7f2485e91e3f in __libc_start_main_impl ../csu/libc-start.c:392
#30 0x5616a4cf1724 in _start (/home/runner/work/soci/soci/_build/bin/soci_odbc_test_postgresql+0x5a724)
Indirect leak of 16 byte(s) in 1 object(s) allocated from:
#0 0x7f2486706867 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
#1 0x7f24830984a5 in CI_Constructor /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/columninfo.c:30
#2 0x7f24830984a5 in QR_Constructor /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/qresult.c:185
#3 0x7f24830d1b77 in ParseAndDescribeWithLibpq.constprop.0 /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:2943
#4 0x7f248308fdb2 in desc_params_and_sync /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2839
#5 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2899
#6 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2876
#7 0x7f24830afb5e in libpq_bind_and_exec /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:2675
#8 0x7f24830afb5e in SC_execute /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:2015
#9 0x7f24830929b1 in Exec_with_parameters_resolved /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/execute.c:518
#10 0x7f24830997b2 in PGAPI_Execute /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/execute.c:1182
#11 0x7f24830b39d7 in SQLExecute /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/odbcapi.c:352
#12 0x7f24865f48de in SQLExecute (/lib/x86_64-linux-gnu/libodbc.so.2+0x118de)
#13 0x7f248659fc37 in soci::odbc_statement_backend::execute(int) /home/runner/work/soci/soci/src/backends/odbc/statement.cpp:154
#14 0x7f24865134cb in soci::details::statement_impl::execute(bool) /home/runner/work/soci/soci/src/core/statement.cpp:319
#15 0x5616a4e69844 in soci::statement::execute(bool) /home/runner/work/soci/soci/include/soci/statement.h:216
#16 0x7f24864876da in soci::details::ref_counted_statement::final_action() /home/runner/work/soci/soci/src/core/ref-counted-statement.cpp:54
#17 0x7f248647f35b in soci::details::ref_counted_statement_base::dec_ref() /home/runner/work/soci/soci/include/soci/ref-counted-statement.h:45
#18 0x7f248647cb99 in soci::details::once_temp_type::~once_temp_type() /home/runner/work/soci/soci/src/core/once-temp-type.cpp:40
#19 0x5616a4eb7d45 in soci::tests::table_creator_base::drop() /home/runner/work/soci/soci/tests/common-tests.h:305
#20 0x5616a4eb7c0e in soci::tests::table_creator_base::~table_creator_base() /home/runner/work/soci/soci/tests/common-tests.h:299
#21 0x5616a4fbfa5a in table_creator_one::~table_creator_one() /home/runner/work/soci/soci/tests/odbc/test-odbc-postgresql.cpp:89
#22 0x5616a4fbfa79 in table_creator_one::~table_creator_one() /home/runner/work/soci/soci/tests/odbc/test-odbc-postgresql.cpp:89
#23 0x5616a4f15192 in std::default_delete<soci::tests::table_creator_base>::operator()(soci::tests::table_creator_base*) const /usr/include/c++/11/bits/unique_ptr.h:85
#24 0x5616a4edb7fe in std::unique_ptr<soci::tests::table_creator_base, std::default_delete<soci::tests::table_creator_base> >::~unique_ptr() /usr/include/c++/11/bits/unique_ptr.h:361
#25 0x5616a4e217fc in soci::tests::test_cases::run_query_transformation_test(soci::tests::test_context_base const&, soci::session&) /home/runner/work/soci/soci/tests/common-tests.h:4289
#26 0x5616a4e22983 in test /home/runner/work/soci/soci/tests/common-tests.h:4310
#27 0x5616a4e60e6d in invoke /home/runner/work/soci/soci/tests/catch.hpp:708
#28 0x5616a4cfa113 in Catch::TestCase::invoke() const /home/runner/work/soci/soci/tests/catch.hpp:8291
#29 0x5616a4e91846 in Catch::RunContext::invokeActiveTestCase() /home/runner/work/soci/soci/tests/catch.hpp:6852
#30 0x5616a4e91016 in Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/runner/work/soci/soci/tests/catch.hpp:6819
#31 0x5616a4e8deb0 in Catch::RunContext::runTest(Catch::TestCase const&) /home/runner/work/soci/soci/tests/catch.hpp:6632
#32 0x5616a4cf3440 in Catch::runTests(Catch::Ptr<Catch::Config> const&) /home/runner/work/soci/soci/tests/catch.hpp:6992
Indirect leak of 16 byte(s) in 1 object(s) allocated from:
#0 0x7f2486706867 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
#1 0x7f24830984a5 in CI_Constructor /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/columninfo.c:30
#2 0x7f24830984a5 in QR_Constructor /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/qresult.c:185
#3 0x7f24830d1b77 in ParseAndDescribeWithLibpq.constprop.0 /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:2943
#4 0x7f248308fdb2 in desc_params_and_sync /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2839
#5 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2899
#6 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2876
#7 0x7f24830afb5e in libpq_bind_and_exec /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:2675
#8 0x7f24830afb5e in SC_execute /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:2015
#9 0x7f24830929b1 in Exec_with_parameters_resolved /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/execute.c:518
#10 0x7f24830997b2 in PGAPI_Execute /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/execute.c:1182
#11 0x7f24830b39d7 in SQLExecute /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/odbcapi.c:352
#12 0x7f24865f48de in SQLExecute (/lib/x86_64-linux-gnu/libodbc.so.2+0x118de)
#13 0x7f248659fc37 in soci::odbc_statement_backend::execute(int) /home/runner/work/soci/soci/src/backends/odbc/statement.cpp:154
#14 0x7f24865134cb in soci::details::statement_impl::execute(bool) /home/runner/work/soci/soci/src/core/statement.cpp:319
#15 0x5616a4e69844 in soci::statement::execute(bool) /home/runner/work/soci/soci/include/soci/statement.h:216
#16 0x7f24864876da in soci::details::ref_counted_statement::final_action() /home/runner/work/soci/soci/src/core/ref-counted-statement.cpp:54
#17 0x7f248647f35b in soci::details::ref_counted_statement_base::dec_ref() /home/runner/work/soci/soci/include/soci/ref-counted-statement.h:45
#18 0x7f248647cb99 in soci::details::once_temp_type::~once_temp_type() /home/runner/work/soci/soci/src/core/once-temp-type.cpp:40
#19 0x5616a4eb7d45 in soci::tests::table_creator_base::drop() /home/runner/work/soci/soci/tests/common-tests.h:305
#20 0x5616a4eb7c0e in soci::tests::table_creator_base::~table_creator_base() /home/runner/work/soci/soci/tests/common-tests.h:299
#21 0x5616a4fbfa5a in table_creator_one::~table_creator_one() /home/runner/work/soci/soci/tests/odbc/test-odbc-postgresql.cpp:89
#22 0x5616a4fbfa79 in table_creator_one::~table_creator_one() /home/runner/work/soci/soci/tests/odbc/test-odbc-postgresql.cpp:89
#23 0x5616a4f15192 in std::default_delete<soci::tests::table_creator_base>::operator()(soci::tests::table_creator_base*) const /usr/include/c++/11/bits/unique_ptr.h:85
#24 0x5616a4edb7fe in std::unique_ptr<soci::tests::table_creator_base, std::default_delete<soci::tests::table_creator_base> >::~unique_ptr() /usr/include/c++/11/bits/unique_ptr.h:361
#25 0x5616a4e217fc in soci::tests::test_cases::run_query_transformation_test(soci::tests::test_context_base const&, soci::session&) /home/runner/work/soci/soci/tests/common-tests.h:4289
#26 0x5616a4e226b8 in test /home/runner/work/soci/soci/tests/common-tests.h:4294
#27 0x5616a4e610eb in invoke /home/runner/work/soci/soci/tests/catch.hpp:708
#28 0x5616a4cfa113 in Catch::TestCase::invoke() const /home/runner/work/soci/soci/tests/catch.hpp:8291
#29 0x5616a4e91846 in Catch::RunContext::invokeActiveTestCase() /home/runner/work/soci/soci/tests/catch.hpp:6852
#30 0x5616a4e91016 in Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/runner/work/soci/soci/tests/catch.hpp:6819
#31 0x5616a4e8deb0 in Catch::RunContext::runTest(Catch::TestCase const&) /home/runner/work/soci/soci/tests/catch.hpp:6632
#32 0x5616a4cf3440 in Catch::runTests(Catch::Ptr<Catch::Config> const&) /home/runner/work/soci/soci/tests/catch.hpp:6992
Indirect leak of 4 byte(s) in 1 object(s) allocated from:
#0 0x7f24866ad9a7 in __interceptor_strdup ../../../../src/libsanitizer/asan/asan_interceptors.cpp:454
#1 0x7f24830d24ee in CI_set_field_info /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/columninfo.c:160
#2 0x7f24830d24ee in CI_set_field_info /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/columninfo.c:151
#3 0x7f24830d24ee in CI_read_fields_from_pgres /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/columninfo.c:108
#4 0x7f24830d24ee in ParseAndDescribeWithLibpq.constprop.0 /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:3028
#5 0x7f248308fdb2 in desc_params_and_sync /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2839
#6 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2899
#7 0x7f248308fdb2 in prepareParameters /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/convert.c:2876
#8 0x7f248309c529 in SC_describe /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/statement.c:1160
#9 0x7f248309c529 in SC_describe_ok /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/results.c:95
#10 0x7f248309c8d5 in PGAPI_DescribeCol /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/results.c:318
#11 0x7f24830b344f in SQLDescribeCol /build/psqlodbc-vOSmp8/psqlodbc-13.02.0000/odbcapi.c:273
#12 0x7f24865f6f0a in SQLDescribeCol (/lib/x86_64-linux-gnu/libodbc.so.2+0x13f0a)
#13 0x7f24865a1af8 in soci::odbc_statement_backend::column_size(int) /home/runner/work/soci/soci/src/backends/odbc/statement.cpp:395
#14 0x7f2486599115 in soci::odbc_standard_into_type_backend::define_by_pos(int&, void*, soci::details::exchange_type) /home/runner/work/soci/soci/src/backends/odbc/standard-into-type.cpp:46
#15 0x7f2486478ace in soci::details::standard_into_type::define(soci::details::statement_impl&, int&) /home/runner/work/soci/soci/src/core/into-type.cpp:27
#16 0x7f24865129d7 in soci::details::statement_impl::define_and_bind() /home/runner/work/soci/soci/src/core/statement.cpp:214
#17 0x7f2486511167 in soci::details::statement_impl::statement_impl(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/src/core/statement.cpp:57
#18 0x5616a4e694c4 in soci::statement::statement(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/include/soci/statement.h:177
#19 0x5616a4f25633 in soci::details::rowset_impl<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::rowset_impl(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/include/soci/rowset.h:117
#20 0x5616a4eebb3c in soci::rowset<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::rowset(soci::details::prepare_temp_type const&) /home/runner/work/soci/soci/include/soci/rowset.h:175
#21 0x5616a4dd8a2e in test /home/runner/work/soci/soci/tests/common-tests.h:3162
#22 0x5616a4e62759 in invoke /home/runner/work/soci/soci/tests/catch.hpp:708
#23 0x5616a4cfa113 in Catch::TestCase::invoke() const /home/runner/work/soci/soci/tests/catch.hpp:8291
#24 0x5616a4e91846 in Catch::RunContext::invokeActiveTestCase() /home/runner/work/soci/soci/tests/catch.hpp:6852
#25 0x5616a4e91016 in Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) /home/runner/work/soci/soci/tests/catch.hpp:6819
#26 0x5616a4e8deb0 in Catch::RunContext::runTest(Catch::TestCase const&) /home/runner/work/soci/soci/tests/catch.hpp:6632
#27 0x5616a4cf3440 in Catch::runTests(Catch::Ptr<Catch::Config> const&) /home/runner/work/soci/soci/tests/catch.hpp:6992
#28 0x5616a4e9303b in Catch::Session::run() /home/runner/work/soci/soci/tests/catch.hpp:7126
#29 0x5616a4e92cdb in Catch::Session::run(int, char const* const*) /home/runner/work/soci/soci/tests/catch.hpp:7079
#30 0x5616a4e544db in main /home/runner/work/soci/soci/tests/odbc/test-odbc-postgresql.cpp:315
#31 0x7f2485e91d8f in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
#32 0x7f2485e91e3f in __libc_start_main_impl ../csu/libc-start.c:392
#33 0x5616a4cf1724 in _start (/home/runner/work/soci/soci/_build/bin/soci_odbc_test_postgresql+0x5a724)
SUMMARY: AddressSanitizer: 1380 byte(s) leaked in 10 allocation(s).
vadz commented
Weirdly enough, running the build in Ubuntu 18.04 container also results in memory leak reports, but different ones: now we get (variable-sized but pretty big) leaks inside SQLDriverConnect()
.
I'm leaving my attempts to fix this in vadz/ci-odbc-container branch, but it looks like it would be about as simple to fix the leaks under 22.04 than in 18.04 container.