PHP中通过Hive/Thrift查询数据库不起作用

2024-06-25

我正在尝试通过 PHP 中的 Hive/Thrift 查询数据库。但是,我不断收到错误:

TSocket: timed out reading 4 bytes from XYZ

我正在使用来自的代码

https://cwiki.apache.org/Hive/hiveclient.html#HiveClient-PHP https://cwiki.apache.org/Hive/hiveclient.html#HiveClient-PHP

以及这个 PHP Thrift 客户端

https://github.com/garamon/php-thrift-hive-client https://github.com/garamon/php-thrift-hive-client

My code:

<?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。

我将不胜感激任何帮助。谢谢。


当我从这些完全相同的资源开始时遇到了类似的问题。事实证明,代码无法识别是否已超时或是否阻塞了端口。我发现这篇文章对我有帮助:

https://issues.apache.org/jira/browse/THRIFT-347 https://issues.apache.org/jira/browse/THRIFT-347

在 TSocket.php 代码 ( garamon_base_dir/lib/transport ) 中,您必须编辑大约第 223 行到 236 行。

其中说:

if( $buf === FALSE || $buf === '' ) { ...
and
if( $md['timed_out'] ) { ...
and then again
if( $md[timed_out'] ) { ...

更改为(分别):

if( $buf === FALSE ) { ...
and
if( true === $md['timed_out'] && false === $md['blocked'] )
and finally 
if( true === $md['timed_out'] && false === $md['blocked'] )

然后它在修复后开始工作。祝你好运!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP中通过Hive/Thrift查询数据库不起作用 的相关文章

  • PHP CLI 有几秒钟的延迟

    当我在 CLI 模式下运行 PHP 时 CentOS 6 5 下的 PHP 5 6 6 使用 VirtualBox 作为虚拟机运行 即使我只检查版本并且禁用 php ini 文件 也会有几秒钟的延迟 time php n v PHP 5 6
  • 无限滚动启用(wordpress)

    因此 我发现本教程可以启用无限滚动 http wptheming com 2012 03 infinite scroll to wordpress theme http wptheming com 2012 03 infinite scro
  • XMLHttpRequest() 并输出 csv 文件

    我可以通过向新窗口发出 html 表单 POST 并使用 PHP 响应来成功生成 csv 文件 header Content type text csv header Content Disposition attachment filen
  • 如何在 PHP 中按字母顺序比较 2 个字符串?

    标题说什么 具体来说 如果我有 array1 name zoo array2 name fox 我怎样才能确定按字母顺序排列 array2的名字应该出现在上面 array1 s Use strcmp http www php net str
  • 如何创建一个学说实体的模拟对象?

    我正在尝试使用 phpunit 为使用原则 2 的模型编写单元测试 我想模拟原则实体 但我真的不知道如何做到这一点 谁能向我解释我需要如何做到这一点 我正在使用 Zend 框架 需要测试的模型 class Country extends A
  • 基本的php问题。添加 javascript 到 .php 页面

    嗨 我不是 php 开发人员 我以前从未接触过它 但我被要求向网站添加谷歌购物车跟踪代码 当有人完成订单时 将被发送到 finishorder php 当我转到 finishorder php 文件时 它看起来像这样 include dir
  • PHP静态函数

    我有一个关于 php 中的静态函数的问题 假设我有一堂课 class test public function sayHi echo hi if I do test sayHi 它工作没有问题 class test public stati
  • WordPress、PHP、URL 编码问题

    Wordpress 提供了一个名为 the permalink 的函数 您猜对了 在帖子循环中返回给定帖子的永久链接 我正在尝试对该永久链接进行 URL 编码 当我执行此代码时 它以 HTML 形式生成以下结果 http
  • php imagecopyresampled 添加黑色背景

    我有一个调整图像大小的脚本 它采用 130x81 图像并将其添加到 130x130 图像中 当 imagecopyresampled 函数运行时 它会在剩余的空间中添加黑色背景 即使基本图像是白色的 下面的代码 我真的很感激一些帮助 The
  • YouTube api 的永久访问令牌?

    我已经浏览了用于身份验证的 Oauth 和 AuthSub 方法的 google 文档 并且我尝试通过 google 搜索此内容 但没有结果 对于 Facebook 您可以请求长度为 的访问令牌lifetime 这意味着您不必每隔几周就请求
  • 如何在 Linux 上的 php 中启用 --enable-soap?

    这就是问题所在 我在 Apache 上安装了 PHP 5 2 9 但无法升级 PHP 有没有办法在 PHP 5 2 9 中启用 SOAP PHP 手册中说 要启用 SOAP 支持 请使用 enable soap 配置 PHP 这根本没有帮助
  • 致命错误:在非对象上调用成员函数 FetchRow()

    这是我的错误消息致命错误 Call to a member function FetchRow on a non object in C AppServ www hfix include care api classes class min
  • 在 foreach 循环中使用 next

    我正在使用 foreach 循环数组 在特定情况下 我需要在迭代到达下一个元素 如预测 之前知道下一个元素的值 为此 我计划使用该功能next http www php net manual en function next php 在文档
  • 将查询错误转变为 MySQLi 中的异常[重复]

    这个问题在这里已经有答案了 我试图将 MySQLi 查询错误转为异常 但无法 mysqli sql 异常 http php net manual en class mysqli sql exception php仅当连接数据库失败时才会抛出
  • 在 PHP 中,如何检查函数是否存在?

    如何检查该功能是否可用my functionPHP 中已经存在 Using function exists http php net function exists if function exists my function my fun
  • 一系列 unicode 点的正则表达式 PHP

    我正在尝试从字符串中删除所有字符 除了 字母数字字符 美元符号 下划线 代码点之间的 Unicode 字符U 0080 and U FFFF 通过这样做 我得到了前三个条件 preg replace a zA Z d foo 我如何去满足第
  • 为什么在这个数组中 NULL 递减而不是负数?

    我已经尝试过这段代码 a array fill 0 4 NULL a 0 a 1 a 2 a 3 var dump a Result array 4 0 gt int 1 1 gt int 1 2 gt NULL 3 gt NULL 为什么
  • 停止警告:date() [function.date]:来自本地主机

    警告 date function date 依赖系统的时区设置是不安全的 你是required使用 date timezone 设置或 date default timezone set 函数 如果您使用任何这些方法并且仍然收到此警告 则很
  • 时态数据库设计,有一些变化(实时行与草稿行)

    我正在考虑实现对象版本控制 同时需要同时拥有活动对象和草稿对象 并且可以利用某人在这方面的经验的见解 因为我开始怀疑是否有可能在没有潜在可怕的黑客攻击的情况下实现这一点 为了示例 我将把它分解为带有标签的帖子 但我的用例更一般 涉及缓慢改变
  • 用于监视文件夹和更新数据库的 Python 守护进程

    这专门用于管理 MP3 文件 但它应该可以轻松地适用于任何包含大量文件的目录结构 我想找到或编写一个守护程序 最好用Python 来监视一个包含许多子文件夹的文件夹 这些子文件夹都应该包含X个MP3文件 每当添加 更新或删除文件时 它都应该

随机推荐

  • Android 复杂形状按钮

    你好安卓开发者 我的 UI 设计师想要一个复杂形状的按钮 但我不知道该怎么做 请帮助我 这就是她想要的设计image http img823 imageshack us img823 984 q43b png 有很多方法可以做到这一点 最简
  • 如何从hibernate会话获取jdbc连接? [复制]

    这个问题在这里已经有答案了 我想从hibernate会话获取jdbc连接 hibernate会话中有方法 即 session connection 但它已被弃用 我知道这仍然有效 但我不想使用已弃用的方法 因为我确信他们必须为此提供一些替代
  • 接口协方差问题

    以下代码示例 interface I
  • 设置删除标记时的缩放级别

    使用 javascript 谷歌地图 api 我目前已将其设置为删除制造商 当我添加像这样的位置时 我将其设置为 function addLocation map location var point new GLatLng locatio
  • 使用 PDO 扩展的execute(array())插入语句不起作用

    stmt conn gt prepare INSERT INTO user VALUES username md5 password 1 email 0 0 cover dateofbirthYear dateofbirthMonth da
  • 指向 lambda 的函数指针目标的生命周期是多少?

    抱歉 这是一个冗长的问题 但让我来分解一下 C 标准是否保证 void Ptr void return Ptr 仍将是定义的行为吗 我知道 对于闭包 它将被定义 因为该闭包对象是按值移动 复制的 但是 虽然我知道 常规 函数具有无限 无生命
  • 跨多个模块的 Python 日志记录

    我正在尝试将日志记录 到控制台而不是文件 添加到我已经工作了一段时间的代码中 阅读了一些内容后 我有一个我认为应该可行的模式 但我不太确定我哪里出错了 我有以下三个文件 显然是简化的 控制器 py import my module impo
  • 哪些工具向 Bugzilla 或 Mylyn 提供燃尽图? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我和我的团队需要使用 Mylyn 开发一个项目 该项目的错误已在 Bugzilla 中归档 您是否知道有
  • 有关 items_for_sale 随着时间的推移更新的数据库/架构设计问题

    我知道我的问题的明显答案是 这取决于 解决这个问题后 我希望你们中的一个 或多个 能够帮助我找到解决这个问题的常见方法 我正在设计一个待售小部件数据库 随着时间的推移 每件商品的价格将不可避免地发生变化 我的问题是我们是否应该跟踪这些变化
  • React - 防止标签切换时焦点脱离模式

    我自己构建了一个反应模式 当我在模式打开时按 Tab 键时 焦点仍然转到背景页面 如何将焦点限制在模态框内的组件内 下面的逻辑应该是什么 onKeyPress e if e keyCode 9 e preventDefault logic
  • AttributeError:使用 Flask 无模式登录时,模块“flask_login.login_manager”没有属性“user_loader”

    我有以下代码 我尝试使用 Flask 进行身份验证 from flask import Flask from flask login import LoginManager login manager from auth auth impo
  • Three.js:相机绕球体飞行?

    在 Three js 使用 JavaScript WebGL 中 如何创建一个以固定高度 固定前进速度和相对于球体的固定方向围绕球体飞行的相机 用户只能向左转向和正确的 想象一架飞机在一根看不见的绳子上飞向地球的中心 在地面附近飞行并且总是
  • UCanAccess:向现有表添加列

    我有一个正在运行的 Java 项目 它使用 Access accdb 数据库来存储数据 我正在对我的程序进行更新 以便为用户提供更多功能 为此 我需要向填充数据的现有表添加一列 当我研究时 我发现 UCanAccess 不支持 ALTER
  • ColdFusion 11 中的自动类型转换

    我正在将应用程序从 ColdFusion 9 迁移到 ColdFusion 11 在现有代码中 有一个变量分配给false
  • 如何为 WPF 工具包图表提供样式

    我在 WPF 应用程序中使用 WPF Toolkit Chart 和 PieChart 我想将饼图图片中的默认白色背景更改为透明 如何提供风格来实现这一目标 WPF 旨在允许您通过 XAML 设置控件样式 不是代码 还可以通过样式使饼图中的
  • 基准测试socket.io

    我想对我的 socket io 服务器进行基准测试 我想测试服务器可以处理多少并行连接和消息 但是当我用大约 200 个 websocket 启动基准测试几分钟后 我的 socket io 服务器崩溃了 我尝试使用node js的集群模块将
  • python os.path.exists() 对于存在的 nfs 挂载目录文件失败

    我基本上有一个用于网站的网络服务器和另一个仅存储文件的网络服务器 文件服务器通过安装其目录之一连接到主服务器 该网站运行 Django 所以我主要处理 python 不管怎样 我似乎遇到了一些问题 文件被报告为不存在 即使它们实际上存在 基
  • 如何在 Braintree Paypal 结帐中添加税费和运费

    我正在使用 Braintree Paypal Checkout 它对我来说工作正常 但我无法添加税费和运费 我试图获取一些信息 但这对我来说也不起作用 这是我当前的 Braintree 代码查看 var form document quer
  • Objective C iPhone 何时将对象引用设置为 nil

    我使用 Objective C 和 Cocoa 框架进行开发已经有一段时间了 然而 我仍然不太清楚 我什么时候应该将对象引用设置为 nil 我知道建议在释放具有委托的对象之前执行此操作 并且您还应该在保留子视图的 viewDidUnload
  • PHP中通过Hive/Thrift查询数据库不起作用

    我正在尝试通过 PHP 中的 Hive Thrift 查询数据库 但是 我不断收到错误 TSocket timed out reading 4 bytes from XYZ 我正在使用来自的代码 https cwiki apache org