Re: [Cppcms-users] URGENT: strange bug ocurring
Brought to you by:
artyom-beilis
From: <ele...@ex...> - 2012-08-01 11:27:00
|
Valgrind using the drd tool I get this stuff when loading the infinte page: ==12769== Conflicting store by thread 3 at 0x0b9732c8 size 8 ==12769== at 0x4ED178D: std::vector<booster::aio::buffer_impl<char const*>::entry, std::allocator<booster::aio::buffer_impl<char const*>::entry> >::_M_insert_aux(__gnu_cxx::__normal_iterator<booster::aio::buffer_impl<char const*>::entry*, std::vector<booster::aio::buffer_impl<char const*>::entry, std::allocator<booster::aio::buffer_impl<char const*>::entry> > >, booster::aio::buffer_impl<char const*>::entry const&) (new_allocator.h:105) ==12769== by 0x4F93748: cppcms::impl::cgi::http::write_response(booster::callback<void ()(booster::system::error_code const&, unsigned long)> const&, unsigned long) (stl_vector.h:741) ==12769== by 0x4F93E6E: cppcms::impl::cgi::http::process_output_headers(void const*, unsigned long, booster::callback<void ()(booster::system::error_code const&, unsigned long)> const&) (http_api.cpp:484) ==12769== by 0x4F9406D: cppcms::impl::cgi::http::write_some(void const*, unsigned long, booster::system::error_code&) (http_api.cpp:335) ==12769== by 0x4EC98CA: cppcms::impl::cgi::connection::write(void const*, unsigned long, booster::system::error_code&) (cgi_api.cpp:550) ==12769== by 0x4EE105D: cppcms::http::details::output_device::write(char const*, int) (http_response.cpp:277) ==12769== by 0x4EE13E6: cppcms::http::details::basic_obuf<cppcms::http::details::output_device>::overflow(int) (http_response.cpp:131) ==12769== by 0x6754871: std::ostream::flush() (in /usr/lib/libstdc++.so.6.0.13) ==12769== by 0x4EDD85B: cppcms::http::response::write_http_headers(std::ostream&) (ostream:560) ==12769== by 0x4EDE33A: cppcms::http::response::out() (http_response.cpp:505) ==12769== by 0x4F0980F: cppcms::impl::file_server::main(std::string) (internal_file_server.cpp:448) ==12769== by 0x4EE4840: cppcms::http::context::dispatch(booster::intrusive_ptr<cppcms::application>, std::string, bool) (http_context.cpp:131) ==12769== Address 0xb9732c8 is at offset 8 from 0xb9732c0. Allocation context: ==12769== at 0x4C270CA: operator new(unsigned long) (vg_replace_malloc.c:261) ==12769== by 0x4ED1770: std::vector<booster::aio::buffer_impl<char const*>::entry, std::allocator<booster::aio::buffer_impl<char const*>::entry> >::_M_insert_aux(__gnu_cxx::__normal_iterator<booster::aio::buffer_impl<char const*>::entry*, std::vector<booster::aio::buffer_impl<char const*>::entry, std::allocator<booster::aio::buffer_impl<char const*>::entry> > >, booster::aio::buffer_impl<char const*>::entry const&) (new_allocator.h:89) ==12769== by 0x4F93748: cppcms::impl::cgi::http::write_response(booster::callback<void ()(booster::system::error_code const&, unsigned long)> const&, unsigned long) (stl_vector.h:741) ==12769== by 0x4F93E6E: cppcms::impl::cgi::http::process_output_headers(void const*, unsigned long, booster::callback<void ()(booster::system::error_code const&, unsigned long)> const&) (http_api.cpp:484) ==12769== by 0x4F9406D: cppcms::impl::cgi::http::write_some(void const*, unsigned long, booster::system::error_code&) (http_api.cpp:335) ==12769== by 0x4EC98CA: cppcms::impl::cgi::connection::write(void const*, unsigned long, booster::system::error_code&) (cgi_api.cpp:550) ==12769== by 0x4EE105D: cppcms::http::details::output_device::write(char const*, int) (http_response.cpp:277) ==12769== by 0x4EE13E6: cppcms::http::details::basic_obuf<cppcms::http::details::output_device>::overflow(int) (http_response.cpp:131) ==12769== by 0x6754871: std::ostream::flush() (in /usr/lib/libstdc++.so.6.0.13) ==12769== by 0x4EDD85B: cppcms::http::response::write_http_headers(std::ostream&) (ostream:560) ==12769== by 0x4EDE33A: cppcms::http::response::out() (http_response.cpp:505) ==12769== by 0x4F0980F: cppcms::impl::file_server::main(std::string) (internal_file_server.cpp:448) ==12769== Other segment start (thread 4) ==12769== at 0x4C2FF7F: pthread_mutex_unlock (drd_pthread_intercepts.c:631) ==12769== by 0x8492869: icu_44::TimeZone::createDefault() (in /usr/lib/libicui18n.so.44.1) ==12769== by 0x54CBB09: booster::locale::impl_icu::get_time_zone(std::string const&) (time_zone.cpp:216) ==12769== by 0x54AB9CB: booster::locale::impl_icu::calendar_impl::set_timezone(std::string const&) (date_time.cpp:240) ==12769== by 0x5482440: booster::locale::date_time::date_time() (date_time.cpp:142) ==12769== by 0x47FA44: helpers::Aircraft::Counter::Counter() (aircraft.hpp:18) ==12769== by 0x47FD00: helpers::Aircraft::Aircraft() (aircraft.hpp:39) ==12769== by 0x505929: data::Master::aircraft_by_id(unsigned int) const (master.cpp:82) ==12769== by 0x49A2CF: data::Master::current_aircraft() const (master.hpp:32) ==12769== by 0x56CB9B: default_skin::TrackerAirframeList::body() (airframe.tmpl:67) ==12769== by 0x554245: default_skin::Master::render() (master.tmpl:195) ==12769== by 0x4F03452: cppcms::views::pool::render(std::string const&, std::string const&, std::ostream&, cppcms::base_content&) (views_pool.cpp:115) ==12769== Other segment end (thread 4) ==12769== at 0x4C2F383: pthread_mutex_lock (drd_pthread_intercepts.c:578) ==12769== by 0x80C5540: umtx_lock_44 (in /usr/lib/libicuuc.so.44.1) ==12769== by 0x80C69DF: ??? (in /usr/lib/libicuuc.so.44.1) ==12769== by 0x80C6BC0: ??? (in /usr/lib/libicuuc.so.44.1) ==12769== by 0x80C7382: ??? (in /usr/lib/libicuuc.so.44.1) ==12769== by 0x80F7201: ??? (in /usr/lib/libicuuc.so.44.1) ==12769== by 0x80F133C: ??? (in /usr/lib/libicuuc.so.44.1) ==12769== by 0x80F1ACE: ??? (in /usr/lib/libicuuc.so.44.1) ==12769== by 0x80F1DD6: ures_openDirect_44 (in /usr/lib/libicuuc.so.44.1) ==12769== by 0x8492093: ??? (in /usr/lib/libicui18n.so.44.1) ==12769== by 0x84924DB: icu_44::TimeZone::createSystemTimeZone(icu_44::UnicodeString const&) (in /usr/lib/libicui18n.so.44.1) ==12769== by 0x84935B5: icu_44::TimeZone::createTimeZone(icu_44::UnicodeString const&) (in /usr/lib/libicui18n.so.44.1) and this ==12769== Thread 7: ==12769== Conflicting store by thread 7 at 0x0b9b49a4 size 1 ==12769== at 0x4F5DC8D: cppcms::crypto::hmac::init() (crypto.cpp:482) ==12769== by 0x4F5F7AD: cppcms::crypto::hmac::hmac(std::string const&, cppcms::crypto::key const&) (crypto.cpp:461) ==12769== by 0x4F4664F: cppcms::sessions::impl::hmac_cipher::decrypt(std::string const&, std::string&) (hmac_encryptor.cpp:61) ==12769== by 0x4F4C3E8: cppcms::sessions::session_cookies::load(cppcms::session_interface&, std::string&, long&) (session_cookies.cpp:61) ==12769== by 0x4F50431: cppcms::session_interface::load() (session_interface.cpp:142) ==12769== by 0x4EE4819: cppcms::http::context::dispatch(booster::intrusive_ptr<cppcms::application>, std::string, bool) (http_context.cpp:130) ==12769== by 0x4EE6172: booster::function<void ()()>::callable_impl<void, cppcms_boost::_bi::bind_t<void, void (*)(booster::intrusive_ptr<cppcms::application>, std::string, bool), cppcms_boost::_bi::list3<cppcms_boost::_bi::value<booster::intrusive_ptr<cppcms::application> >, cppcms_boost::_bi::value<std::string>, cppcms_boost::_bi::value<bool> > > >::call() (bind.hpp:385) ==12769== by 0x4EE7DD4: cppcms::impl::thread_pool::worker() (function.h:168) ==12769== by 0x54EB27C: booster_thread_func (function.h:168) ==12769== by 0x4C2EB60: vgDrd_thread_wrapper (drd_pthread_intercepts.c:272) ==12769== by 0x71CC8C9: start_thread (pthread_create.c:300) ==12769== by 0x6F3392C: clone (clone.S:112) ==12769== Address 0xb9b49a4 is at offset 52 from 0xb9b4970. Allocation context: ==12769== at 0x4C270CA: operator new(unsigned long) (vg_replace_malloc.c:261) ==12769== by 0x4F5DBCF: cppcms::crypto::hmac::init() (new_allocator.h:89) ==12769== by 0x4F5F7AD: cppcms::crypto::hmac::hmac(std::string const&, cppcms::crypto::key const&) (crypto.cpp:461) ==12769== by 0x4F4664F: cppcms::sessions::impl::hmac_cipher::decrypt(std::string const&, std::string&) (hmac_encryptor.cpp:61) ==12769== by 0x4F4C3E8: cppcms::sessions::session_cookies::load(cppcms::session_interface&, std::string&, long&) (session_cookies.cpp:61) ==12769== by 0x4F50431: cppcms::session_interface::load() (session_interface.cpp:142) ==12769== by 0x4EE4819: cppcms::http::context::dispatch(booster::intrusive_ptr<cppcms::application>, std::string, bool) (http_context.cpp:130) ==12769== by 0x4EE6172: booster::function<void ()()>::callable_impl<void, cppcms_boost::_bi::bind_t<void, void (*)(booster::intrusive_ptr<cppcms::application>, std::string, bool), cppcms_boost::_bi::list3<cppcms_boost::_bi::value<booster::intrusive_ptr<cppcms::application> >, cppcms_boost::_bi::value<std::string>, cppcms_boost::_bi::value<bool> > > >::call() (bind.hpp:385) ==12769== by 0x4EE7DD4: cppcms::impl::thread_pool::worker() (function.h:168) ==12769== by 0x54EB27C: booster_thread_func (function.h:168) ==12769== by 0x4C2EB60: vgDrd_thread_wrapper (drd_pthread_intercepts.c:272) ==12769== by 0x71CC8C9: start_thread (pthread_create.c:300) ==12769== Other segment start (thread 5) ==12769== at 0x4C2FF7F: pthread_mutex_unlock (drd_pthread_intercepts.c:631) ==12769== by 0x4EE7DC2: cppcms::impl::thread_pool::worker() (thread.h:394) ==12769== by 0x54EB27C: booster_thread_func (function.h:168) ==12769== by 0x4C2EB60: vgDrd_thread_wrapper (drd_pthread_intercepts.c:272) ==12769== by 0x71CC8C9: start_thread (pthread_create.c:300) ==12769== by 0x6F3392C: clone (clone.S:112) ==12769== Other segment end (thread 5) ==12769== at 0x4C2FF7F: pthread_mutex_unlock (drd_pthread_intercepts.c:631) ==12769== by 0x672423E: std::locale::locale() (in /usr/lib/libstdc++.so.6.0.13) ==12769== by 0x4F095C6: cppcms::impl::file_server::main(std::string) (basic_ios.h:452) ==12769== by 0x4EE4840: cppcms::http::context::dispatch(booster::intrusive_ptr<cppcms::application>, std::string, bool) (http_context.cpp:131) ==12769== by 0x4EE6172: booster::function<void ()()>::callable_impl<void, cppcms_boost::_bi::bind_t<void, void (*)(booster::intrusive_ptr<cppcms::application>, std::string, bool), cppcms_boost::_bi::list3<cppcms_boost::_bi::value<booster::intrusive_ptr<cppcms::application> >, cppcms_boost::_bi::value<std::string>, cppcms_boost::_bi::value<bool> > > >::call() (bind.hpp:385) ==12769== by 0x4EE7DD4: cppcms::impl::thread_pool::worker() (function.h:168) ==12769== by 0x54EB27C: booster_thread_func (function.h:168) ==12769== by 0x4C2EB60: vgDrd_thread_wrapper (drd_pthread_intercepts.c:272) ==12769== by 0x71CC8C9: start_thread (pthread_create.c:300) ==12769== by 0x6F3392C: clone (clone.S:112) |