GBase 8a 的加载支持从hadoop hdfs,官方的hadoop不要求userAgent参数,而某些修改版本做了检查,导致服务器端安全检查报错,出现了空指针导致500错误。 通过设置GBase 8a的_gbase_enable_hdfs_useragent参数可以解决该问题。
目录导航
报错样例
HTTP response code said errorm HTTP/1.1 500 Internal server error uri ....
排查
通过curl 能够获得文件信息
通过抓包工具,对比curl和gbase 8a load的信息,发现gbase 少了User-Agent的请求头。
解决
打开数据库的参数_gbase_enable_hdfs_useragent, 同时修改配置文件(gcluster和gnode)
set global _gbase_enable_hdfs_useragent=1
再次运行load 正常。