Hi,
We are getting access violation on table comparisons within SAP Data Services 4.2 since upgrading (datastores are SQL Server 2012, repo on SQL Server 2008). This is a simple table comparison to help generate delta tables and load full history table after extracting into staging area.
We find playing around with the degree of parallelism (DOP) has an effect, but we don't understand why these are appearing in first place as this is migrated code and worked fine before. WFs and DFs all run in parallel during this part of the job.
Re-running or changing DOP normally resolves issue.
Error Log:
(14.2) 03-25-14 08:18:54 (R) (3772:7324) SYS-170101: |Session JOB_Live_Insight_CRM_EXTRACTS_ONLY|Work flow WF_EXTRACTS|Work flow WF_EXTRACTS_1|Work flow New_WorkFlow3|Work flow WF_EXTRACTS_1A|Work flow WF_EXTRACTS_EVENTDB_CRM|Work flow WF_EXTRACT_EVENTDB|Work flow WF_EXTRACT_EVENTDB_DELTA|Work flow WF_Extract_EventDB_EU_Delta|Data flow DF_Extract_EventDB_EU_Events_Delta
System Exception <ACCESS_VIOLATION> occurred. Process dump option is off. Process is not dumped.
Call stack:
0x00000000801CEAFF, XLink_desc::getNewRow()+0015 byte(s),
d:\im_ds_4.2_sp_rel\src\dataservices\dataintegrator\codeline\code\src\core\xlink.cpp, line 0536
0x00000000801C06B2, XPort_desc::get_new_row()+0018 byte(s),
d:\im_ds_4.2_sp_rel\src\dataservices\dataintegrator\codeline\code\src\core\xport.cpp, line 0539
0x00000000811A4B61, XTran_mergesplit::split()+0129 byte(s),
d:\im_ds_4.2_sp_rel\src\dataservices\dataintegrator\codeline\code\src\xform\tran_mergesplit.cpp, line 0164
0x00000000811A4A7F, XTran_mergesplit::execute()+0095 byte(s),
d:\im_ds_4.2_sp_rel\src\dataservices\dataintegrator\codeline\code\src\xform\tran_mergesplit.cpp, line 0136+0015 byte(s)
0x00000000801A0040, XTran_desc::execute()+0448 byte(s),
d:\im_ds_4.2_sp_rel\src\dataservices\dataintegrator\codeline\code\src\core\xtran.cpp, line 0799
0x0000000080FE3D39, Rww_thread::main()+0249 byte(s),
d:\im_ds_4.2_sp_rel\src\dataservices\dataintegrator\codeline\code\src\rww\rww.cpp, line 0451
0x0000000000A1438E, RWThreadFunctionImp::run()+0126 byte(s)
0x00000000009FC184, RWRunnableImp::exec()+0372 byte(s)
0x0000000000A14643, RWThreadImp::exec()+0051 byte(s)
0x0000000000A15F59, RWThreadImp::_setTimeSliceQuantum()+0169 byte(s)
0x00000000749337D7, endthreadex()+0071 byte(s)
0x0000000074933894, endthreadex()+0260 byte(s)
0x0000000076CD652D, BaseThreadInitThunk()+0013 byte(s)
0x000000007717C541, RtlUserThreadStart()+0033 byte(s)
Registers:
RAX=0000000000000000 RBX=0000000005B0E9C0 RCX=0000000000000000 RDX=0000000000000009 RSI=0000000000000000
RDI=000000000A90F850 RBP=0000000002F41270 RSP=000000000D8CF590 RIP=00000000801CEAFF FLG=0000000000010206
R8=0000000000000000 R9=000000000A93A7D0 R10=0000000000000016 R11=000000000D8CF540 R12=0000000000000001
R13=0000000005B0E978 R14=000000000A47B730 R15=000000001522C938
Exception code: C0000005 ACCESS_VIOLATION
Fault address: 00000001801CEAFF 01:00000000001CDAFF D:\BODS\Business Objects\Data Services\bin\acta.dll
==========================================================
Collect the following and send to Customer Support:
1. Log files(error_*, monitor_*, trace_*) associated with this failed job.
2. Exported ATL file of this failed job.
3. DDL statements of tables referenced in this failed job.
4. Data to populate the tables referenced in the failed job. If not possible, get the last few rows (or sample of them) when
the job failed.
5. Core dump, if any, generated from this failed job.
==========================================================
(14.2) 03-25-14 08:18:54 (E) (3772:7324) SYS-170101: |Session JOB_Live_Insight_CRM_EXTRACTS_ONLY|Work flow WF_EXTRACTS|Work flow WF_EXTRACTS_1|Work flow New_WorkFlow3|Work flow WF_EXTRACTS_1A|Work flow WF_EXTRACTS_EVENTDB_CRM|Work flow WF_EXTRACT_EVENTDB|Work flow WF_EXTRACT_EVENTDB_DELTA|Work flow WF_Extract_EventDB_EU_Delta|Data flow DF_Extract_EventDB_EU_Events_Delta
桔祳瑳浥攠据畯瑮牥摥愠硥散瑰潩湡慣湮瑯瀠潲散獳琠楨捡楴湯桔獩洠獥慳敧挠湯
慴湩潳敭椠瑮牥慮祳瑳浥搠瑥楡獬眠楨档栠癡敢湥栠摩敤潦敳畣楲祴晉礠畯渠敥
潴猠敥琠敨映汵潣瑮湥獴漠桴牯杩湩污洠獥慳敧獡潹牵愠浤湩獩牴瑡牯琠獡楳湧愠
摤瑩潩慮牰癩汩来獥琠潹牵愠捣畯瑮.
Any suggestions welcome....
Regards,
John