Github user laurentgo commented on a diff in the pull request:

    https://github.com/apache/drill/pull/950#discussion_r142736318
  
    --- Diff: contrib/native/client/src/clientlib/drillClientImpl.cpp ---
    @@ -250,7 +205,15 @@ void DrillClientImpl::doWriteToSocket(const char* 
dataPtr, size_t bytesToWrite,
         // Write all the bytes to socket. In case of error when all bytes are 
not successfully written
         // proper errorCode will be set.
         while(1) {
    -        size_t bytesWritten = 
m_socket.write_some(boost::asio::buffer(dataPtr, bytesToWrite), errorCode);
    +        size_t bytesWritten;
    +        {
    +            boost::lock_guard<boost::mutex> lock(m_channelMutex);
    --- End diff --
    
    it seems weird that a mutex is now required. Before, the socket was 
existing, why it would not be the case for the channel?


---

Reply via email to