Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Qlik Open Lakehouse is Now Generally Available! Discover the key highlights and partner resources here.
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

No errors in Talend but no data getting inserted into DB2

Hi Guys,

 

I have an ETL process that runs fine with no errors; and tDB2Output\tDB2Commit components show no errors and a row count of rows inserted,

However when I check the DB2 table I do not see any data there.

 

If I write to a flat file and then load that file to DB2, it works fine as is with no changes needed to the data.

Any ideas how to troubleshoot to see where the issue is.

 

Thanks!

Labels (2)
11 Replies
Anonymous
Not applicable
Author

Hello,

If you are trying to insert or update data in the target database and the data violates any integrity constraints set by the database, you can use the Reject flow from the Output component to capture the records in error. Here’s an example of Retrieving data in error with a Reject link from Talend documentation.

Best regards

Sabrina

shivanand
Contributor III
Contributor III

Check "Commit Every" option in advanced settings of db output component, and make sure no of rows flowing are grater than that count .

Anonymous
Not applicable
Author

Thanks Sabrina, I only see the Rows-Reject option show up if its an Insert\Update.

If its just insert, I dont see that option there. If I set it to insert\Update and set up a REJECT flow and then change the output back to INSERT only, I get the warning saying 'too many rows for the component'.

 

Is that intended?

 

Thanks,

Chetan

Anonymous
Not applicable
Author

Thanks Shivanand, I set the commit size to 1, but still the same. I dont get any errors back, but no data added either.


@shivanand wrote:

Check "Commit Every" option in advanced settings of db output component, and make sure no of rows flowing are grater than that count .


 

Anonymous
Not applicable
Author

Also I ran it in the Debug mode and in the end it says 1 row inserted.

 

0683p000009M0hX.png

Anonymous
Not applicable
Author

Hi Chetan,

 

      Could you please select the Die on error check box in the tDBOutput in your job? It will throw the details of the error in more detailed manner.

 

       You have specified that you got "too many rows for the component". One reason for this error could be that the input data is having duplicate records and you have a primary key in DB table which is not allowing the data to be loaded there. But in your case, you have mentioned that the data is missing in the table. 

 

         It would be great help if you could share the overall job screen shot and the component screenshot of both tDBOutput and tDBCommit for detailed analysis. You can mask any sensitive information before sharing.

 

         If the details shared already helped you to identify the root cause, could you please mark the topic as resolved with resolution details? Kudos are also welcome 🙂

 

Warm Regards,

 

Nikhil Thampi

Anonymous
Not applicable
Author

Hi Nikhil, I apologize for the delayed response. This issue seemed to have corrected itself, but it is back when we reran this workflow again after a few weeks.

As suggested, I have the die on error option checked.

 

You are correct that it is not a data integrity issue because if i route this data to a flat file- and then I load directly to DB2 it works fine.

I do not see any error messaged popup, and the GUI says 2 rows should have been inserted, running it in debug mode also says 2 rows inserted

 

Here's a screenshot of the job and the the tDB2output and tDB2commit components as well.

 

Thank you for helping resolve this issue.

 

 

 

 


Untitled1.png
Anonymous
Not applicable
Author

0683p000009M149.png0683p000009M1Gm.png0683p000009M1GY.png

Anonymous
Not applicable
Author

Also some additional information- I had the DB2 DBA take a look at this, and they say they see a connection being made to the server, but not insert command following that.

 

So it seems like there is an issue with the component, I have dropped and added both the tDB2Commit and tDB2Output components, but it has not helped.