7

我已经建立了一个 Hadoop 集群(通过 Cloudera Manager 使用 Cloudera 发行版)并且我正在使用 Hue 界面运行一些 Hive 查询,该界面在下面使用 Beeswax。

我所有的查询都运行良好,我什至成功地部署了一个自定义 UDF。

但是,在部署 UDF 时,我遇到了一个非常令人沮丧的版本控制问题。在我的 UDF 类的初始版本中,我使用了一个导致StackOverflowError.

我修复了这个错误,然后验证了 UDF 可以从 hive 命令行成功部署和使用。

然后,当我再次使用 Hue 和 Beeswax 时,我一直收到同样的错误。我只能通过更改我的 UDF java 类名来解决这个问题。(从LowerLower2)。

现在,我的问题是,处理这些版本问题的正确方法是什么?

据我了解,当我使用左侧方便的表单字段添加 jar 时,它们会被添加到分布式缓存中。那么,如何刷新/清除分布式缓存?(我无法LIST JARS;从 Hive / Beeswax 中运行等。它给了我一个语法错误。)

4

1 回答 1

2

由于类被加载到 Beeswax Server JVM(HiveServer1 和 HiveServer2 JVM 也是如此),部署新版本的 jar 通常需要重新启动这些服务以避免此类加载问题。

于 2013-08-26T07:33:09.440 回答