0

运行嵌入 Python 脚本的 pig 时遇到 python 错误。解决了问题,但想知道是否有其他人遇到此错误。

场景:a) 带有 pig 的 Python 脚本是这样的。

pigRun = Pig.compileFromFile(self.settingsReader.getScriptsDir() + "/" + script.name)
params = { 'datefrom': '2012-08-04 00:00:00', 'dateto': '2012-12-05 00:00:00', 
       'parallelism':self.settingsReader.getParallelism(), 
       'input' : script.input, 'output':script.output}
        bound = pigRun.bind(params)
        stats=bound.runSingle()
        if not stats.isSuccessfull():
          raise 'failed'

b) Pig 版本为 0.10。Python 2.7、Jython 2.5 出现错误

if not stats.isSuccessfull():
          raise 'failed'

c) 错误如下 AttributeError: 'org.apache.pig.tools.pigstats.SimplePigStats' object has no attribute 'isSuccessfull'

查看 Apache PIG 0.10 的源代码后,SimplePigStats 似乎实现了 isSuccessfull() 。但是运行时错误说不是。

临时解决方案:更改失败检查代码如下

bound = pigRun.bind(params)
stats= bound.runSingle()
     if stats.getReturnCode() != 0:
        raise 'failed'

这似乎工作正常。

4

0 回答 0