You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hawq.apache.org by "Hongxu Ma (JIRA)" <ji...@apache.org> on 2018/06/20 03:38:00 UTC

[jira] [Created] (HAWQ-1627) Support setting the max protocol message size when talking with HDFS

Hongxu Ma created HAWQ-1627:
-------------------------------

             Summary: Support setting the max protocol message size when talking with HDFS
                 Key: HAWQ-1627
                 URL: https://issues.apache.org/jira/browse/HAWQ-1627
             Project: Apache HAWQ
          Issue Type: Improvement
          Components: libhdfs
            Reporter: Hongxu Ma
            Assignee: Radar Lei
             Fix For: 2.4.0.0-incubating


Now, the max size of protocol message in libhdfs is 64MB, and it cannot be adjusted.
When the max size is reached (accessing a very big HDFS table/file), will see the following lines in hawq master log:
{code}
2018-06-20 11:21:56.768003 CST,,,p75703,th-848100416,,,,0,,,seg-10000,,,,,"LOG","00000","3rd party error log:
[libprotobuf ERROR google/protobuf/io/coded_stream.cc:208] A protocol message was rejected because it was too big (more than 67108864 bytes).  To increase the limit (or to
disable these warnings), see CodedInputStream::SetTotalBytesLimit() in google/protobuf/io/coded_stream.h.",,,,,,,,"SysLoggerMain","syslogger.c",518,
2018-06-20 11:21:56.771657 CST,,,p75703,th-848100416,,,,0,,,seg-10000,,,,,"LOG","00000","3rd party error log:
2018-06-20 11:21:56.771492, p75751, th0x7fffcd7303c0, ERROR Failed to invoke RPC call ""getFsStats"" on server ""localhost:9000"":
RpcChannel.cpp: 783: HdfsRpcException: RPC channel to ""localhost:9000"" got protocol mismatch: RPC channel cannot parse response header.
    @   Hdfs::Internal::RpcChannelImpl::readOneResponse(bool)
    @   Hdfs::Internal::RpcChannelImpl::checkOneResponse()
    @   Hdfs::Internal::RpcChannelImpl::invokeInternal(std::__1::shared_ptr<Hdfs::Internal::RpcRemoteCall>)
    @   Hdfs::Internal::RpcChannelImpl:",,,,,,,,"SysLoggerMain","syslogger.c",518,
2018-06-20 11:21:56.771711 CST,,,p75703,th-848100416,,,,0,,,seg-10000,,,,,"LOG","00000","3rd party error log:
:invoke(Hdfs::Internal::RpcCall const&)
    @   Hdfs::Internal::NamenodeImpl::invoke(Hdfs::Internal::RpcCall const&)
    @   Hdfs::Internal::NamenodeImpl::getFsStats()
    @   Hdfs::Internal::NamenodeProxy::getFsStats()
    @   Hdfs::Internal::FileSystemImpl::getFsStats()
    @   Hdfs::Internal::FileSystemImpl::connect()
    @   Hdfs::FileSystem::connect(char const*, char const*, char const*)
    @   Hdfs::FileSystem::connect(char const*)
    @   hdfsBuilderConnect
    @   gpfs_hdfs_connect
    @   HdfsConnect
    @   HdfsGetConnection
    @   HdfsGetFileBlockLocati",,,,,,,,"SysLoggerMain","syslogger.c",518,
{code}

Considering HDFS has a guc *"ipc.maximum.data.length"* to set it, HAWQ also should has a guc about it.




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)