teragrep / pth_10

Data Processing Language (DPL) translator for Apache Spark
GNU Affero General Public License v3.0
0 stars 2 forks source link

teragrep exec hdfs list throws NullPointerException if path not found #242

Closed 51-code closed 4 months ago

51-code commented 5 months ago

Describe the bug

The query: | teragrep exec hdfs list xxx/yyy throws NullPointerException:

java.lang.NullPointerException at com.teragrep.pth10.steps.teragrep.TeragrepHdfsOperations.listDataFromHdfs(TeragrepHdfsOperations.java:426) at com.teragrep.pth10.steps.teragrep.TeragrepStep.get(TeragrepStep.java:95) at com.teragrep.pth10.ast.StepList.executeFromStep(StepList.java:184) at com.teragrep.pth10.ast.StepList.execute(StepList.java:155) at com.teragrep.pth10.ast.DPLParserCatalystVisitor.visitRoot(DPLParserCatalystVisitor.java:283) at com.teragrep.pth10.ast.DPLParserCatalystVisitor.visitRoot(DPLParserCatalystVisitor.java:80) at com.teragrep.pth_03.antlr.DPLParser$RootContext.accept(DPLParser.java:3083) at com.teragrep.pth_03.shaded.org.antlr.v4.runtime.tree.AbstractParseTreeVisitor.visit(AbstractParseTreeVisitor.java:18) at com.teragrep.pth_07.DPLExecutor.interpret(DPLExecutor.java:185) at com.teragrep.pth_07.DPLInterpreter.internalInterpret(DPLInterpreter.java:159) at org.apache.zeppelin.interpreter.AbstractInterpreter.interpret(AbstractInterpreter.java:47) at org.apache.zeppelin.interpreter.LazyOpenInterpreter.interpret(LazyOpenInterpreter.java:110) at org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer$InterpretJob.jobRun(RemoteInterpreterServer.java:860) at org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer$InterpretJob.jobRun(RemoteInterpreterServer.java:752) at org.apache.zeppelin.scheduler.Job.run(Job.java:172) at org.apache.zeppelin.scheduler.AbstractScheduler.runJob(AbstractScheduler.java:132) at org.apache.zeppelin.scheduler.FIFOScheduler.lambda$runJobInScheduler$0(FIFOScheduler.java:42) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:750)

Expected behavior

Should result in a more informative Exception message or even a dataset implying that the path was not found.

How to reproduce

Run the query.

Screenshots

Software version

PTH-10: 4.18.0-8-ge7e4190c

Desktop (please complete the following information if relevant):

Additional context

eemhu commented 4 months ago

internal pr done