I have developed a parallel job to load data from a file to the target table .
The transformation includes lookup on a table with 29604 records. This job will be executed many times a day. During some execution , the job aborts stating the below error message in the reference DB stage:
ODBC_align_dim,0: ODBC function "SQLFetch" reported: SQLSTATE = HY000: Native Error Code = 20: Msg = [Vertica][VerticaDSII] (20) An error occurred during query execution: server closed the connection unexpectedly
This probably means the server terminated abnormally
before or while processing the request.
(CC_OdbcDBStatement::dbsFetch, file CC_OdbcDBStatement.cpp, line 1,429)
Both my target DB and reference table DB is vertica. Since there is no native connectivity stage available for vertica DB , we are using the ODBC connector stage.
The job failure happens regardless of the data volume or excution time. Some times the job processes 5lakhs records successfully and fails when processing just 1K records.
WE have other jobs with similar design which executes parallely with this job. These jobs does not show this failure.
Can anybody tell me if you faced similar issue in your environment. Also please provide me a solution for this issue
DB connectivity lost during job execution
Moderators: chulett, rschirm, roy
Normally this behavior is associated with some sort of a timeout occurring, but what you described doesn't fit most of those problems. I'd suggest trying the following:
1) Turn on ODBC tracing and run the job to see if you can get any more detailed information on the problem.
2) Check with the Vertica database admin and see what shows up in their logs at the time of the abort.
Here's the IBM link for how to turn on ODBC tracing. Be careful, it turns on for ALL active jobs, so the best way to use it is when nothing else is running on the system and you can just run the problematic job. That makes the log smaller and easier to read. Also, don't forget to turn it off as it degrades performance while it is on.
http://www-01.ibm.com/support/docview.w ... swg2142902
1) Turn on ODBC tracing and run the job to see if you can get any more detailed information on the problem.
2) Check with the Vertica database admin and see what shows up in their logs at the time of the abort.
Here's the IBM link for how to turn on ODBC tracing. Be careful, it turns on for ALL active jobs, so the best way to use it is when nothing else is running on the system and you can just run the problematic job. That makes the log smaller and easier to read. Also, don't forget to turn it off as it degrades performance while it is on.
http://www-01.ibm.com/support/docview.w ... swg2142902