drill-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rob Wu (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DRILL-5441) Drill Client: Invalid read error when logger is turned on
Date Tue, 18 Apr 2017 20:57:42 GMT

    [ https://issues.apache.org/jira/browse/DRILL-5441?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15973491#comment-15973491
] 

Rob Wu commented on DRILL-5441:
-------------------------------

With Logging turned on:

<?xml version="1.0"?>

-<valgrindoutput>

<protocolversion>4</protocolversion>

<protocoltool>memcheck</protocoltool>


-<preamble>

<line>Memcheck, a memory error detector</line>

<line>Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al.</line>

<line>Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright info</line>

<line>Command: /opt/io/64/bin/iodbctestw DSN=MapR Drill 64-bit</line>

</preamble>

<pid>18550</pid>

<ppid>14305</ppid>

<tool>memcheck</tool>


-<args>


-<vargv>

<exe>/usr/bin/valgrind</exe>

<arg>--leak-check=yes</arg>

<arg>--xml=yes</arg>

<arg>--xml-file=/media/110valgrind-1371028 LOG TRACE.xml</arg>

</vargv>


-<argv>

<exe>/opt/io/64/bin/iodbctestw</exe>

<arg>DSN=MapR Drill 64-bit</arg>

</argv>

</args>


-<status>

<state>RUNNING</state>

<time>00:00:00:00.040 </time>

</status>


-<error>

<unique>0x29</unique>

<tid>2</tid>

<kind>InvalidRead</kind>

<what>Invalid read of size 4</what>


-<stack>


-<frame>

<ip>0xD4DE434</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>google::protobuf::internal::RepeatedPtrFieldBase::size() const</fn>

<dir>/home/employee/Desktop/Rob/drill/P4ROOT/protobuf/protobuf-2.5.0rc1/Linux_x8664/include/google/protobuf</dir>

<file>repeated_field.h</file>

<line>818</line>

</frame>


-<frame>

<ip>0xD4E52A9</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>google::protobuf::RepeatedPtrField<exec::user::CatalogMetadata>::size() const</fn>

<dir>/home/employee/Desktop/Rob/drill/P4ROOT/protobuf/protobuf-2.5.0rc1/Linux_x8664/include/google/protobuf</dir>

<file>repeated_field.h</file>

<line>1032</line>

</frame>


-<frame>

<ip>0xD4DF57F</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>exec::user::GetCatalogsResp::catalogs_size() const</fn>

<dir>/home/employee/Desktop/Rob/drill/drill-1.10.0.1/contrib/native/client/src/protobuf</dir>

<file>User.pb.h</file>

<line>6658</line>

</frame>


-<frame>

<ip>0xD4CF26F</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>Drill::DrillClientImpl::processCatalogsResult(Drill::AllocatedBuffer*, Drill::rpc::InBoundRpcMessage
const&)</fn>

<dir>/home/employee/Desktop/Rob/drill/drill-1.10.0.1/contrib/native/client/src/clientlib</dir>

<file>drillClientImpl.cpp</file>

<line>1196</line>

</frame>


-<frame>

<ip>0xD4D287A</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>Drill::DrillClientImpl::handleRead(unsigned char*, boost_sb::system::error_code
const&, unsigned long)</fn>

<dir>/home/employee/Desktop/Rob/drill/drill-1.10.0.1/contrib/native/client/src/clientlib</dir>

<file>drillClientImpl.cpp</file>

<line>1550</line>

</frame>


-<frame>

<ip>0xD503A92</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>boost_sb::_mfi::mf3<void, Drill::DrillClientImpl, unsigned char*, boost_sb::system::error_code
const&, unsigned long>::operator()(Drill::DrillClientImpl*, unsigned char*, boost_sb::system::error_code
const&, unsigned long) const</fn>

<dir>/home/employee/Desktop/Rob/drill/P4ROOT/boost/boost_sb_157icu/release64/include/boost/bind</dir>

<file>mem_fn_template.hpp</file>

<line>393</line>

</frame>


-<frame>

<ip>0xD4FE6CC</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>void boost_sb::_bi::list4<boost_sb::_bi::value<Drill::DrillClientImpl*>,
boost_sb::_bi::value<unsigned char*>, boost_sb::arg<1> (*)(), boost_sb::arg<2>
(*)()>::operator()<boost_sb::_mfi::mf3<void, Drill::DrillClientImpl, unsigned char*,
boost_sb::system::error_code const&, unsigned long>, boost_sb::_bi::list2<boost_sb::system::error_code
const&, unsigned long const&> >(boost_sb::_bi::type<void>, boost_sb::_mfi::mf3<void,
Drill::DrillClientImpl, unsigned char*, boost_sb::system::error_code const&, unsigned
long>&, boost_sb::_bi::list2<boost_sb::system::error_code const&, unsigned long
const&>&, int)</fn>

<dir>/home/employee/Desktop/Rob/drill/P4ROOT/boost/boost_sb_157icu/release64/include/boost/bind</dir>

<file>bind.hpp</file>

<line>457</line>

</frame>


-<frame>

<ip>0xD4F70C7</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>void boost_sb::_bi::bind_t<void, boost_sb::_mfi::mf3<void, Drill::DrillClientImpl,
unsigned char*, boost_sb::system::error_code const&, unsigned long>, boost_sb::_bi::list4<boost_sb::_bi::value<Drill::DrillClientImpl*>,
boost_sb::_bi::value<unsigned char*>, boost_sb::arg<1> (*)(), boost_sb::arg<2>
(*)()> >::operator()<boost_sb::system::error_code, unsigned long>(boost_sb::system::error_code
const&, unsigned long const&)</fn>

<dir>/home/employee/Desktop/Rob/drill/P4ROOT/boost/boost_sb_157icu/release64/include/boost/bind</dir>

<file>bind_template.hpp</file>

<line>102</line>

</frame>


-<frame>

<ip>0xD4F00A3</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>boost_sb::asio::detail::read_op<boost_sb::asio::basic_stream_socket<boost_sb::asio::ip::tcp,
boost_sb::asio::stream_socket_service<boost_sb::asio::ip::tcp> >, boost_sb::asio::mutable_buffers_1,
boost_sb::asio::detail::transfer_all_t, boost_sb::_bi::bind_t<void, boost_sb::_mfi::mf3<void,
Drill::DrillClientImpl, unsigned char*, boost_sb::system::error_code const&, unsigned
long>, boost_sb::_bi::list4<boost_sb::_bi::value<Drill::DrillClientImpl*>, boost_sb::_bi::value<unsigned
char*>, boost_sb::arg<1> (*)(), boost_sb::arg<2> (*)()> > >::operator()(boost_sb::system::error_code
const&, unsigned long, int)</fn>

<dir>/home/employee/Desktop/Rob/drill/P4ROOT/boost/boost_sb_157icu/release64/include/boost/asio/impl</dir>

<file>read.hpp</file>

<line>282</line>

</frame>


-<frame>

<ip>0xD50BC91</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>boost_sb::asio::detail::binder2<boost_sb::asio::detail::read_op<boost_sb::asio::basic_stream_socket<boost_sb::asio::ip::tcp,
boost_sb::asio::stream_socket_service<boost_sb::asio::ip::tcp> >, boost_sb::asio::mutable_buffers_1,
boost_sb::asio::detail::transfer_all_t, boost_sb::_bi::bind_t<void, boost_sb::_mfi::mf3<void,
Drill::DrillClientImpl, unsigned char*, boost_sb::system::error_code const&, unsigned
long>, boost_sb::_bi::list4<boost_sb::_bi::value<Drill::DrillClientImpl*>, boost_sb::_bi::value<unsigned
char*>, boost_sb::arg<1> (*)(), boost_sb::arg<2> (*)()> > >, boost_sb::system::error_code,
unsigned long>::operator()()</fn>

<dir>/home/employee/Desktop/Rob/drill/P4ROOT/boost/boost_sb_157icu/release64/include/boost/asio/detail</dir>

<file>bind_handler.hpp</file>

<line>127</line>

</frame>


-<frame>

<ip>0xD50BC2A</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>void boost_sb::asio::asio_handler_invoke<boost_sb::asio::detail::binder2<boost_sb::asio::detail::read_op<boost_sb::asio::basic_stream_socket<boost_sb::asio::ip::tcp,
boost_sb::asio::stream_socket_service<boost_sb::asio::ip::tcp> >, boost_sb::asio::mutable_buffers_1,
boost_sb::asio::detail::transfer_all_t, boost_sb::_bi::bind_t<void, boost_sb::_mfi::mf3<void,
Drill::DrillClientImpl, unsigned char*, boost_sb::system::error_code const&, unsigned
long>, boost_sb::_bi::list4<boost_sb::_bi::value<Drill::DrillClientImpl*>, boost_sb::_bi::value<unsigned
char*>, boost_sb::arg<1> (*)(), boost_sb::arg<2> (*)()> > >, boost_sb::system::error_code,
unsigned long> >(boost_sb::asio::detail::binder2<boost_sb::asio::detail::read_op<boost_sb::asio::basic_stream_socket<boost_sb::asio::ip::tcp,
boost_sb::asio::stream_socket_service<boost_sb::asio::ip::tcp> >, boost_sb::asio::mutable_buffers_1,
boost_sb::asio::detail::transfer_all_t, boost_sb::_bi::bind_t<void, boost_sb::_mfi::mf3<void,
Drill::DrillClientImpl, unsigned char*, boost_sb::system::error_code const&, unsigned
long>, boost_sb::_bi::list4<boost_sb::_bi::value<Drill::DrillClientImpl*>, boost_sb::_bi::value<unsigned
char*>, boost_sb::arg<1> (*)(), boost_sb::arg<2> (*)()> > >, boost_sb::system::error_code,
unsigned long>&, ...)</fn>

<dir>/home/employee/Desktop/Rob/drill/P4ROOT/boost/boost_sb_157icu/release64/include/boost/asio</dir>

<file>handler_invoke_hook.hpp</file>

<line>69</line>

</frame>


-<frame>

<ip>0xD50BA26</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>void boost_sb_asio_handler_invoke_helpers::invoke<boost_sb::asio::detail::binder2<boost_sb::asio::detail::read_op<boost_sb::asio::basic_stream_socket<boost_sb::asio::ip::tcp,
boost_sb::asio::stream_socket_service<boost_sb::asio::ip::tcp> >, boost_sb::asio::mutable_buffers_1,
boost_sb::asio::detail::transfer_all_t, boost_sb::_bi::bind_t<void, boost_sb::_mfi::mf3<void,
Drill::DrillClientImpl, unsigned char*, boost_sb::system::error_code const&, unsigned
long>, boost_sb::_bi::list4<boost_sb::_bi::value<Drill::DrillClientImpl*>, boost_sb::_bi::value<unsigned
char*>, boost_sb::arg<1> (*)(), boost_sb::arg<2> (*)()> > >, boost_sb::system::error_code,
unsigned long>, boost_sb::_bi::bind_t<void, boost_sb::_mfi::mf3<void, Drill::DrillClientImpl,
unsigned char*, boost_sb::system::error_code const&, unsigned long>, boost_sb::_bi::list4<boost_sb::_bi::value<Drill::DrillClientImpl*>,
boost_sb::_bi::value<unsigned char*>, boost_sb::arg<1> (*)(), boost_sb::arg<2>
(*)()> > >(boost_sb::asio::detail::binder2<boost_sb::asio::detail::read_op<boost_sb::asio::basic_stream_socket<boost_sb::asio::ip::tcp,
boost_sb::asio::stream_socket_service<boost_sb::asio::ip::tcp> >, boost_sb::asio::mutable_buffers_1,
boost_sb::asio::detail::transfer_all_t, boost_sb::_bi::bind_t<void, boost_sb::_mfi::mf3<void,
Drill::DrillClientImpl, unsigned char*, boost_sb::system::error_code const&, unsigned
long>, boost_sb::_bi::list4<boost_sb::_bi::value<Drill::DrillClientImpl*>, boost_sb::_bi::value<unsigned
char*>, boost_sb::arg<1> (*)(), boost_sb::arg<2> (*)()> > >, boost_sb::system::error_code,
unsigned long>&, boost_sb::_bi::bind_t<void, boost_sb::_mfi::mf3<void, Drill::DrillClientImpl,
unsigned char*, boost_sb::system::error_code const&, unsigned long>, boost_sb::_bi::list4<boost_sb::_bi::value<Drill::DrillClientImpl*>,
boost_sb::_bi::value<unsigned char*>, boost_sb::arg<1> (*)(), boost_sb::arg<2>
(*)()> >&)</fn>

<dir>/home/employee/Desktop/Rob/drill/P4ROOT/boost/boost_sb_157icu/release64/include/boost/asio/detail</dir>

<file>handler_invoke_helpers.hpp</file>

<line>37</line>

</frame>

</stack>

<auxwhat>Address 0x4fe6638 is 24 bytes inside a block of size 64 free'd</auxwhat>


-<stack>


-<frame>

<ip>0x4A06016</ip>

<obj>/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so</obj>

<fn>operator delete(void*)</fn>

<dir>/builddir/build/BUILD/valgrind-3.8.1/coregrind/m_replacemalloc</dir>

<file>vg_replace_malloc.c</file>

<line>480</line>

</frame>


-<frame>

<ip>0xD698A5D</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>exec::user::GetCatalogsResp::~GetCatalogsResp()</fn>

<dir>/home/employee/Desktop/Rob/drill/drill-1.10.0.1/contrib/native/client/src/protobuf</dir>

<file>User.pb.cc</file>

<line>5419</line>

</frame>


-<frame>

<ip>0xD508919</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>void boost_sb::checked_delete<exec::user::GetCatalogsResp>(exec::user::GetCatalogsResp*)</fn>

<dir>/home/employee/Desktop/Rob/drill/P4ROOT/boost/boost_sb_157icu/release64/include/boost/core</dir>

<file>checked_delete.hpp</file>

<line>34</line>

</frame>


-<frame>

<ip>0xD50C541</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>boost_sb::detail::sp_counted_impl_p<exec::user::GetCatalogsResp>::dispose()</fn>

<dir>/home/employee/Desktop/Rob/drill/P4ROOT/boost/boost_sb_157icu/release64/include/boost/smart_ptr/detail</dir>

<file>sp_counted_impl.hpp</file>

<line>78</line>

</frame>


-<frame>

<ip>0xD4B046D</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>boost_sb::detail::sp_counted_base::release()</fn>

<dir>/home/employee/Desktop/Rob/drill/P4ROOT/boost/boost_sb_157icu/release64/include/boost/smart_ptr/detail</dir>

<file>sp_counted_base_gcc_x86.hpp</file>

<line>146</line>

</frame>


-<frame>

<ip>0xD4B04FC</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>boost_sb::detail::shared_count::~shared_count()</fn>

<dir>/home/employee/Desktop/Rob/drill/P4ROOT/boost/boost_sb_157icu/release64/include/boost/smart_ptr/detail</dir>

<file>shared_count.hpp</file>

<line>443</line>

</frame>


-<frame>

<ip>0xD4E1A79</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>boost_sb::shared_ptr<exec::user::GetCatalogsResp>::~shared_ptr()</fn>

<dir>/home/employee/Desktop/Rob/drill/P4ROOT/boost/boost_sb_157icu/release64/include/boost/smart_ptr</dir>

<file>shared_ptr.hpp</file>

<line>324</line>

</frame>


-<frame>

<ip>0xD4E1AAC</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>Drill::DrillClientMetadataResult<Drill::status_t (*)(void*, Drill::DrillCollection<Drill::meta::CatalogMetadata>
const*, Drill::DrillClientError*), Drill::meta::CatalogMetadata, Drill::meta::DrillCatalogMetadata,
exec::user::GetCatalogsResp>::~DrillClientMetadataResult()</fn>

<dir>/home/employee/Desktop/Rob/drill/drill-1.10.0.1/contrib/native/client/src/clientlib</dir>

<file>drillClientImpl.hpp</file>

<line>324</line>

</frame>


-<frame>

<ip>0xD4E848F</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>Drill::DrillClientCatalogResult::~DrillClientCatalogResult()</fn>

<dir>/home/employee/Desktop/Rob/drill/drill-1.10.0.1/contrib/native/client/src/clientlib</dir>

<file>drillClientImpl.hpp</file>

<line>343</line>

</frame>


-<frame>

<ip>0xD4E84BF</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>Drill::DrillClientCatalogResult::~DrillClientCatalogResult()</fn>

<dir>/home/employee/Desktop/Rob/drill/drill-1.10.0.1/contrib/native/client/src/clientlib</dir>

<file>drillClientImpl.hpp</file>

<line>343</line>

</frame>


-<frame>

<ip>0xD4E2905</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>Drill::DrillClientImpl::freeQueryResources(Drill::DrillClientQueryHandle*)</fn>

<dir>/home/employee/Desktop/Rob/drill/drill-1.10.0.1/contrib/native/client/src/clientlib</dir>

<file>drillClientImpl.hpp</file>

<line>451</line>

</frame>


-<frame>

<ip>0xD4AFA69</ip>

<obj>/opt/mapr/drill/lib/64/libdrillClient.so</obj>

<fn>Drill::DrillClient::freeQueryResources(void**)</fn>

<dir>/home/employee/Desktop/Rob/drill/drill-1.10.0.1/contrib/native/client/src/clientlib</dir>

<file>drillClient.cpp</file>

<line>482</line>

</frame>

</stack>

</error>


-<status>

<state>FINISHED</state>

<time>00:00:00:10.632 </time>

</status>

</valgrindoutput>

> Drill Client: Invalid read error when logger is turned on
> ---------------------------------------------------------
>
>                 Key: DRILL-5441
>                 URL: https://issues.apache.org/jira/browse/DRILL-5441
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Client - C++
>    Affects Versions: 1.10.0
>            Reporter: Rob Wu
>            Priority: Minor
>
> The memory access issue only occurs when the log level for the drill client is set to
DEBUG or above.  By turning off or down the log level, the issue is no longer observed. 



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message