2013-04-27 51 views
6

我已經建立了一個Hadoop集羣(通過Cloudera Manager使用Cloudera發行版),並使用Hue接口運行一些Hive查詢,Hue接口使用下面的Beeswax。如何使用Hue + Beeswax刷新/清除DistributedCache運行定義自定義UDF的Hive查詢?

我所有的查詢運行良好,我甚至成功地部署了自定義的UDF。

但是,在部署UDF時,我遇到了一個非常令人沮喪的版本問題。在我的UDF類的初始版本中,我使用了導致StackOverflowError的第三方類。

我修復了這個錯誤,然後驗證了可以從配置單元命令行成功部署和使用UDF。

然後,當我再次使用Hue和Beeswax時,我一直得到同樣的錯誤。我只能通過更改我的UDF java類名來解決這個問題。 (從LowerLower2)。

現在,我的問題是,處理這些版本問題的正確方法是什麼?

從我所瞭解的情況來看,當我使用左側的便利表單字段添加jar時,它們被添加到分佈式緩存中。那麼,我該如何刷新/清除分佈式緩存? (我無法得到LIST JARS;等從Hive/Beeswax中運行,它給我一個語法錯誤。)

+0

你解決了這個問題嗎? – yatul 2013-07-09 14:08:53

+0

你可能會考慮提交一個bug。 – 2013-07-11 07:16:45

回答

2

由於類被加載到Beeswax服務器JVM上(與HiveServer1和HiveServer2 JVM一樣),部署新版本的jar通常需要重新啓動這些服務以避免類加載問題。