Hue 上的 Apache Pig 0.12.0 未按预期预处理语句

Apache Pig 0.12.0 on Hue not preprocessing statements as expected

我在亚马逊 EMR 上将 Hue 用于 PIG 脚本。 I am using the declare and default statements as mentioned in the documentation.

我有一些 %default 和 %declare 声明,看起来它们是 未在 Hue 中进行预处理。因此,虽然定义了参数 在我的脚本中,编辑器不断弹出参数配置 window。如果我将参数留空,作业将失败并出现错误。

示例脚本

%declare OUTPUT_FOLDER 'testingOutput01';

ts = LOAD 's3://testbucket1/input/testdata-00000.gz' USING PigStorage('\t');
STORE ts INTO 's3://testbucket1/$OUTPUT_FOLDER' USING PigStorage('\t');

执行后,它会显示弹出窗口 window,询问 OUTPUT_FOLDER 的值。如果我将其留空,它将失败并出现以下错误:

2015-06-23 20:15:54,908 [main] ERROR org.apache.pig.Main  - ERROR 2997:
Encountered IOException. org.apache.pig.tools.parameters.ParseException:
Encountered "<EOF>" at line 1, column 12.
Was expecting one of:
<IDENTIFIER> ...
<OTHER> ...
<LITERAL> ...
<SHELLCMD> ...

这是预期的行为吗?这是一个已知问题还是我遗漏了什么?

配置详情:

AMI version:3.7.0
Hadoop distribution:Amazon 2.4.0
Applications:Hive 0.13.1, Pig 0.12.0, Impala 1.2.4, Hue

使用 default 而不是 declare 可以看到相同的行为。

如果您需要任何说明,请对此问题发表评论。我会根据需要更新它。

Hue 不支持带有默认语句的 %declare。它将被修复:https://issues.cloudera.org/browse/HUE-2508

当前的临时解决方法是在弹出窗口中输入任何值。