我正在尝试通过 PHP 中的 Hive/Thrift 查询数据库。但是,我不断收到错误消息:
TSocket: timed out reading 4 bytes from XYZ
我正在使用来自的代码
https://cwiki.apache.org/Hive/hiveclient.html#HiveClient-PHP
连同这个 PHP Thrift Client
https://github.com/garamon/php-thrift-hive-client
我的代码:
<?php
$socket = new TSocket( 'XYZ', 12345 );
$socket->setSendTimeout(30 * 1000);
$socket->setRecvTimeout(30 * 1000);
$transport = new TBufferedTransport( $socket, 1024, 1024 );
$protocol = new TBinaryProtocol( $transport );
$client = new ThriftHiveClientEx( $protocol );
$transport->open();
$client->execute("my query");
?>
注意 - 我可以通过控制台(telnet 命令)与 XYZ 连接。
我会给予任何帮助。谢谢。