Tuesday, August 4, 2009

Timeout error when migrating data in a large table

Symptom
Data Migration times-out for a particular table that contains around 100000 rows (the error message is ‘The command has timed out.’). Sybase OLEDB provider was used to connect to ASE 15.0.2 (on Windows 2003 32bit)

Cause
This is caused when using OLEDB provider to connect to Sybase, which fails when trying to read large tables using cursors.

Resolution
If you are using Oledb provider and facing the same issue, this can be resolved in two ways:
1) It’s failing when oledb provider is trying to read large tables using cursors.
You can give the connection string in Advance mode by setting property UseCursor=0 . Please see the below image for more details.

Sample Connection string:
User ID=sa;PWD=abc;Provider=ASEOLEDB.1;Server=myserver;Port=5000;Database=master;UseCursor=0;
(Please remember provider should be changed as per your sybase version)

2) You can consider changing the provider to ADO.Net provider. Please follow the following process to change the provider:Tools menu => Click on ProjectSettings=> Migration Tab and use the Provider dropdown to change the provider.


More Information
Article Id: KBS2SS1005

Applies to
• SSMA 2005 for Sybase
• SSMA 2008 for Sybase

No comments:

Post a Comment