HBase alter table 命令失败并显示“错误:d!= java.lang.String”
Posted
技术标签:
【中文标题】HBase alter table 命令失败并显示“错误:d!= java.lang.String”【英文标题】:HBase alter table command fails with "ERROR: d != java.lang.String" 【发布时间】:2019-11-01 19:56:40 【问题描述】:HBase alter table 命令失败并显示
错误:d != java.lang.String
,不确定在哪里查看以及如何调试?没有找到任何 HBase 日志。我正在使用 OpenTSDB + Bigtable。 每当我运行改变命令时
hbase(main):005:0> 改变 'test_table', NAME=>'colFam2', 属性=>'1000'
我的桌子上写着:
2019 年 11 月 1 日晚上 8:01:42 com.google.bigtable.repackaged.io.grpc.internal.ManagedChannelImpl 信息:[ManagedChannelImpl@4f94e] 使用目标创建 bigtableadmin.googleapis.com:443
错误:d != java.lang.String
以下是此命令的一些帮助:Alter a table。 ...
【问题讨论】:
请在此处添加您的代码,以便更好地获得帮助。 这听起来像是字符串格式的问题。调试 hbase shell 会话非常困难,因为 hbase shell 会抑制调试信息。 dqlgnoleht@,更改代码可以在这里找到:github.com/GoogleCloudPlatform/cloud-bigtable-examples/blob/…。基本上,这是一个Admin.modifyTable
电话。这可能与 OpenTSDB 的旧版本客户端有关,也可能与其他问题有关。
【参考方案1】:
如果您发布表结构和精确查询,会更容易理解您做错了什么,但在我看来,这是一个错误
ERROR: d != java.lang.String
被函数抛出
String.format("...%d...", ...);
当你运行你的改变时。我想您应该键入不带引号的“属性”值
hbase(main):005:0> alter 'test_table', NAME=>'colFam2', property=>1000
【讨论】:
以上是关于HBase alter table 命令失败并显示“错误:d!= java.lang.String”的主要内容,如果未能解决你的问题,请参考以下文章
ALTER TABLE DROP COLUMN 失败,因为一个或多个对象访问此列
MVC - ALTER TABLE DROP COLUMN 失败,因为一个或多个对象访问此列