Logging and Correcting Errors

Check the database engine output logs to isolate migration problems. There are separate output logs for the Sybase IQ 15.4 and Sybase IQ 12.7 database engines.

Sybase IQ 15 Engine Logs

Use the -new_startline parameter on the iqunload command to specify diagnostic parameters -z and -zr all to start the Sybase IQ 15 server with extra logging.

For example:
iqunload -au -c "UID=DBA;PWD=SQL;DBF=W:\\iq-15\\unload\\127\\db\\iq127db.db" -new_startline "-z -zr all" -o d:\\iq15db.out 

This statement causes the new iqsrv15 database engine to produce more verbose logging output to the file d:\iq15db.out.

Sybase IQ 12.7 Engine Logs

To start the bundled Sybase IQ 12.7 engine with extra logging, use the START= connection property to specify the -z and -zr all parameters. For example:
iqunload -v -au -c "UID=DBA;PWD=SQL;DBF=W:\\iq-15\\unload\\127\\db\\iq127db.db;START=-z -zr all -o d:\\iq127db.out" 

This statement causes the bundled Sybase IQ 12.7 engine to produce more verbose logging output. Examine the output file iq15db.out or iq127db.out for server error messages.

For details about the -z diagnostic parameter, see the Utility Guide. For information about request logging, see SQL Anywhere Server - SQL Usage > Monitoring and improving database performance > Diagnosing performance issues > Using other diagnostic tools and techniques.

Server Not Found

A message similar to this indicates that iqunload started the database but could not connect:
SQL error:Database server not found

Check to see if an iqunlspt process is running, and stop the process before retrying iqunload.

For example, here is top output:
load averages:  1.45,  1.19,  0.80; up 3+16:22:31
10:2
172 processes: 168 sleeping, 2 zombie, 2 on cpu
CPU states: 79.1% idle, 18.9% user,  1.9% kernel,  0.0%
iowait,  0.0% swap
Memory: 16G phys mem, 13G free mem, 16G swap, 16G free
swap

PID USERNAME LWP PRI NICE  SIZE   RES STATE    TIME    CPU COMMAND
21223 ybrown 1  59    0 2908K 1844K cpu      0:00  0.12% top
21172 ybrown 476  59    0  319M  264M sleep    0:01  0.05% iqunlspt
24890 ybrown 14  29   10   79M   43M sleep    0:49  0.03% java
20103 ybrown 1  59    0 7916K 2080K sleep    0:00  0.00% sshd
To stop the process, enter the command kill –9 and supply the process ID, for example:
kill –9 21172

In Task Manager, click the Processes tab, and locate the image name iqunlspt. Right-click iqunlspt and choose End Process.

If you try to run iqunload without killing the orphaned iqunlspt process, you may see this:
SQL error: Unable to start specified database: autostarting database failed.

Obsolete Stored Procedures

Migration replaces 12.7 login procedures to support new Sybase IQ 15 login management functionality.

The procedure sp_login_environment replaces the 12.7 default login procedure DBA.sp_iq_process_login and dbo.sa_post_login_procedure replaces the 12.7 default post login procedure DBA.sp_iq_process_post_login. The iqunload utility generally replaces obsolete options with their new defaults, but if the 12.7 option is set on a specific user instead of PUBLIC (the default), the log file may report errors similar to:
E. 10/31 16:53:40. Login procedure
'DBA.sp_iq_process_login' caused SQLSTATE '52W09' 
E. 10/31 16:53:40. Procedure 'sp_iq_process_login' not
found 
Related concepts
Determining Migration Switches
Working With Large Schemas
Working with Extremely Large Schemas