Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi, I tried to replicate this example in the Talend Open Studio for Big Data (v. 7.0.1): https://talend-rc.fluidtopics.net/reader/NNO~fmVQU4rlkF9Depfdxw/lMyOXnz3qRAvdVqmvb8Hrg
I create the connections to Hive and the tables that I need, but when I run the job I had this error:
Exception in component tELTHiveOutput_1 (Integration)
java.lang.NullPointerException
at inicial.integration_0_1.Integration.tELTHiveMap_1Process(Integration.java:612)
at inicial.integration_0_1.Integration.runJobInTOS(Integration.java:1198)
at inicial.integration_0_1.Integration.main(Integration.java:1040)
The job is this:
Hello,
What you need to do is to use the OnsubjobOK trigger to connect to another component to "start" your pre-process.
tPreJob is used to run before your main body of code. Think of it as StartUp activators.
The workflow should be:
tprejob-->thiveconnection
|
| onsubjobok
tELTHiveInput-->tELTHiveMap-->tELTHiveOutput
Let us rule out workflow issue firstly and then we will check null in data mapping.
Best regards
Sabrina
Hello,
From your screenshot, you are using tHiveConnection component, whereas there is no connector(onsubjobok) between your thiveconnection and tELTHiveMap.
There will be no flow from thiveconnection to your ELT subjob.
Does your job works without using tHiveConnection component?
Best regards
Sabrina
Hi, thanks for your feedback. The tHiveConnection component it's connected to the tELTHiveMap right this:
And the configuration of the tELTHiveOutput element is:
I created the necessary tables I need and check this in my HDP Clúster.
The mapping is:
I hope thats help
David
Hello,
You have to use connector(onsubjobok or oncomponentOK) between tHiveConnection and tELTHiveMap.
Best regards
Sabrina
Hi, I connected the tELTHiveMap with the trigger option to the tELTHiveConnection element:
But the error is the same:
[statistics] connecting to socket on port 3907
[statistics] connected
Exception in component tELTHiveOutput_1 (Integration)
java.lang.NullPointerException
at inicial.integration_0_1.Integration.tELTHiveMap_1Process(Integration.java:591)
at inicial.integration_0_1.Integration.runJobInTOS(Integration.java:1173)
at inicial.integration_0_1.Integration.main(Integration.java:1022)
[statistics] disconnected
I understand that the trigger must be placed in the tELTHiveMap element.
The line 591 of the code is this:
" java.sql.Statement stmt_tELTHiveOutput_1 = conn_tELTHiveOutput_1
.createStatement();"
Thanks
David
Hello,
What you need to do is to use the OnsubjobOK trigger to connect to another component to "start" your pre-process.
tPreJob is used to run before your main body of code. Think of it as StartUp activators.
The workflow should be:
tprejob-->thiveconnection
|
| onsubjobok
tELTHiveInput-->tELTHiveMap-->tELTHiveOutput
Let us rule out workflow issue firstly and then we will check null in data mapping.
Best regards
Sabrina
Hi, thanks for your reply
I connect the elements like this:
Is this okey? In this case I get this output error:
Exception in component tELTHiveOutput_1 (Integration)
org.apache.hive.service.cli.HiveSQLException: Error while compiling statement: FAILED: ParseException line 1:124 cannot recognize input near '(' ')' '<EOF>' in expression specification
at org.apache.hive.jdbc.Utils.verifySuccess(Utils.java:262)
Thanks
David
Hello David,
Could you please check your "Code" tab in your job to see if there will be compile error highlighted in red line?
Best regards
Sabrina