Sometimes, for the database integration, like PostgreSQL, MongoDB, etc., you may encounter the following error.
2021-03-03 15:55:20,221Z main - INFO Exit status is: Discovery succeeded. Tap failed with code -9. Target succeeded.
Resolution
To help with the above scenario, we have two non-customer-facing settings we can help to set. Those are the Incremental limit and the Itersize values.
Incremental Limit – Chunks full table and incremental queries into multiple explicit queries by adding a LIMIT X clause to each. This would reduce the load on the DB to prepare result sets if that’s an issue. As mentioned above, by default, our full table and incremental queries do not issue a limit. By adding an incremental limit, we are now forcing the integration to request "batches" of x number of data. This is in hopes that it can alleviate the burden on the source and allow for the query to complete.
Itersize – This adjusts the number of rows fetched per round trip of a streaming result set for the queries themselves (defaults to 20k rows at a time). It controls the maximum rows fetched in a batch.
If you face this issue, please reach out to us, and we can set up alleviation for you. How-to-contact-Qlik-Support
Cause
Generally, these -9 errors indicate that the tap is running out of memory when trying to perform an extraction. By default, our full table and incremental queries do not issue a limit. As a result, we wait for the query to complete on your server and in some instances, if the resulting data is quite large, it can terminate, resulting in a connection close error or something similar, like a memory error.