By product  
  Other  

Troubleshooting

Troubleshooting and known issues with ApexSQL Tools


System.OutOfMemory exception is thrown

Applies to
ApexSQL Diff,
ApexSQL Log,
ApexSQL Doc

Summary

This article explains what to do when the System.OutOfMemory exception is thrown

Symptoms
System.OutOfMemory exception is thrown. It usually happens when working with large databases, backups or script folders containing large number of objects, generating huge scripts or putting application under strain in general.

Cause
The exception is caused by the .NET framework architecture and the way it allocates memory. Due to the nature of the .NET framework, this cannot be completely removed, however it can be worked around.

Resolution
Use Command Line Interface that these ApexSQL products contain. Using CLI puts less strain on the machine resources.
You can either save your project using GUI and then execute it via CLI, or you can specify all the parameters using CLI entirely.

To make your project using GUI and execute it via CLI:

1) Make your project using GUI and save it

2) Open Command Prompt

3) Navigate to the ApexSQL product installation path
(e.g. cd C:\Program Files\ApexSQL\ApexSQLDiff\
or
cd C:\Program Files\ApexSQL\ApexSQLLog\)

4)  Type:

a) for ApexSQL Diff

ApexSQLDiff.com /project:<project path>\<project name>
(e.g. ApexSQLDiff.com /project:C:\Users\ApexUser\Documents\ApexSQL\ApexSQLDiff  \project.axds)

The script file named “sync.sql” will be created in the ApexSQL Diff installation folder.

b) for ApexSQL Log

ApexSQLLog.com /project:<project path>\<project name> /undo:<filename>      
(e.g. ApexSQLLog.com /project:C:\Users\ApexUser\Documents\ApexSQL\ApexSQLDiff \project.axlp /undo:undoscript.sql)

The script file named “undoscript.sql” will be created in the ApexSQL Log installation folder.

Instead of using CLI in ApexSQL Log, you can output the results into a file and thus avoid showing them in the Main grid.

About ApexSQL Log
ApexSQL Log is a SQL Server Transaction Log reader that allows viewing transaction log data in read-friendly format. Audit and undo SQL database changes of your choosing. Determine who changed the data and when the change occurred. Read the transaction log to find out who created, changed or dropped a database object

Last updated
December 01, 2011

Labels: , ,

...


"System. FormatException" thrown on documenting a specific database

Applies to
ApexSQL Doc

Summary

This article discusses how to troubleshoot "System.FormatException" that can be thrown when documenting a database.

Symptoms
"System.FormatException" can be thrown when documenting a database

Exceptions
Top Level Exception
Type: System.FormatException
Message: Index (zero based) must be greater than or equal to zero and less than the size of the argument list.
Source: mscorlib

Resolution
The possible workarounds for this case are as follows:

1) Replace '.' with the real server name or (local) in the Add SQL Server dialog (e.g. ".\SQL2005" change on "(local)\SQL2005")

2) If you document several databases simultaneously, please try to document them one by one

3) Document your database with the Explicitly parse database option turned off





4) Change the regional settings of your machine to English

About ApexSQL Doc
ApexSQL Doc documents SQL Servers, databases, objects, and SSIS packages in a single document. Create database documentation in a variety of formats including compiled help (.CHM), HTML and MS Word. Schedule your documentation process unattended with the help of the CLI.

Last updated
November 25, 2011

Labels:

...


Not enough time to create documentation

Applies to
ApexSQL Doc

Summary

This article explains what to do when error message “ApexSQL Doc has waited for HTML help compiler work result for 600 seconds. Result was not produced for this time” occurs

Cause
The compile timeout value in ApexSQL Doc is set to 10 minutes by default

Resolution
To create the documentation for huge amount of data or many databases, this parameter should be increased. Set the Compile timeout option in the Options dialog from the Tools menu on a higher value

To compile document the Command Line Interface users should follow the next steps

1. Open the ApexSQL Doc Intermediary folder
For Windows XP
I.e. C:\Documents and Settings\<user>\MyDocuments\ApexSQL\ApexSQLDoc\Intermediary
For Vista and Windows 7
I.e. C:\Users\<user>\Documents\ApexSQL\ApexSQLDoc\

2. Delete all TempXXX folders or save the last created folder

3. Document database and if compilation fails due to timeout, go to the intermediary folder

4. Find the newest TempXXX folder

5. Run CHM file compilation from this folder with the following command: "hhc.exe apexdoc.hhp" (hhc.exe could be found in ApexSQL Doc installation folder)

About ApexSQL Doc
ApexSQL Doc documents SQL Servers, databases, objects, and SSIS packages in a single document. Create database documentation in a variety of formats including compiled help (.CHM), HTML and MS Word. Schedule your documentation process unattended with the help of the CLI.

Last updated
November 24, 2011

Labels:

...


"An internal error has occurred. This program will now close"

Applies to
ApexSQL Doc

Summary

This article explains what to do when the "An internal error has occurred. This program will now close" error message appears at the final stage of CHM compilation

Cause
This problem is caused by long database and objects names possibly containing some not standard alpha-numeric characters like: <, >, $, “

Resolution
Use HTML or Help 2.0 formats for documentation

About ApexSQL Doc
ApexSQL Doc documents SQL Servers, databases, objects, and SSIS packages in a single document. Create database documentation in a variety of formats including compiled help (.CHM), HTML and MS Word. Schedule your documentation process unattended with the help of the CLI.

Last updated
November 24, 2011

Labels:

...


Access to the path "C:\Program Files\ ApexSQL\ApexSQLDoc\ Intermediary\ Temp####'" is denied

Applies to
ApexSQL Doc

Summary

Access to the path "C:\Program Files\ApexSQL\ApexSQLDoc\Intermediary\Temp#### is denied" error message is displayed during database documentation in Windows Vista/7

Cause
ApexSQL Doc does not have full access to mentioned folder and cannot complete documentation

Resolution
Launch ApexSQL Doc with administrator privileges for Windows Vista/7. Right-click the ApexSQL Doc icon and select Run as administrator from the context menu

About ApexSQL Doc
ApexSQL Doc documents SQL Servers, databases, objects, and SSIS packages in a single document. Create database documentation in a variety of formats including compiled help (.CHM), HTML and MS Word. Schedule your documentation process unattended with the help of the CLI.

Last updated
November 24, 2011

Labels:

...


System.IO. PathTooLongException error

Applies to
ApexSQL Doc

Summary

This article explains what to do when "System.IO.PathTooLongException" is thrown

Symptoms
When documenting a database using ApexSQL Doc, the documentation fails and the "System.IO.PathTooLongException" message is displayed

Cause
ApexSQL Doc creates "intermediary files" prior to the generation of the final document. The location of these files is specified in the Intermediary files location field



The default location is user profile directory
I.e. C:\Users\UserName\Documents\ApexSQL\ApexSQLDoc\Intermediary

Windows has a filepath length limit of 248. With the filename, the length limit is 260. The fully qualified filename of the generated intermediary files may exceed this limit

Resolution
To resolve this issue, change the location of intermediary files

1. Start ApexSQL Doc
2. Go to Tools menu Options tab
3. Specify a shorter path in the Intermediary files location I.e. C:\Temp
4. Click OK to apply the settings
5. Restart the documentation process

About ApexSQL Doc
ApexSQL Doc documents SQL Servers, databases, objects, and SSIS packages in a single document. Create database documentation in a variety of formats including compiled help (.CHM), HTML and MS Word. Schedule your documentation process unattended with the help of the CLI.

Last updated
December 16, 2011

Labels:

...


"This program cannot display the webpage" message is shown for generated CHM documents copied to network drive

Applies to
ApexSQL Doc

Summary

This article explains what to do when the message "This program cannot display the webpage" occurs

Cause
New database document file can be opened from a local machine. After it is copied to a network drive, the message "This program cannot display the webpage" occurs

Resolution
1) Use the UrlAllowList entry to enable specific URLs
Warning: Include only URLs for sites that are trusted
For example .chm files are in the \\productmanuals\helpfiles folder and web application is located at http:// www.wingtiptoys.com/help. Paste the following text in a text editor such as Notepad and save the file using the .reg file name extension. This file extension re-enables hosting of the HTML Help ActiveX control

REGEDIT4 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp] [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\HHRestrictions] "UrlAllowList"="\\\\productmanuals\\helpfiles;http://www.wingtiptoys.com/help/"

Wildcard characters cannot be used in the URL string of any site that is added to the UrlAllowList registry key, for example "UrlAllowList"=http://*.wingtiptoys.com. However, the following URL string can be used "UrlAllowList"="http://help.wingtiptoys.com"

2) Paste the following text in a text editor such as Notepad and save the file by using the .reg file name extension

REGEDIT4 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\HHRestrictions]
"MaxAllowedZone"=dword:00000003 "UrlAllowList"=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\ItssRestrictions]
"MaxAllowedZone"=dword:00000003 "UrlAllowList"=""

About ApexSQL Doc
ApexSQL Doc documents SQL Servers, databases, objects, and SSIS packages in a single document. Create database documentation in a variety of formats including compiled help (.CHM), HTML and MS Word. Schedule your documentation process unattended with the help of the CLI.


Last updated
December 16, 2011

Labels:

...


Content of the CHM file generated by ApexSQL Doc is not shown from the shared drive

Applies to
ApexSQL Doc

Summary

This article explains what to do when content of the CHM file generated by ApexSQL Doc is not shown from a shared drive

Cause
A security patch released for all Windows operating systems can limit by default the ability of viewing active content (which includes all .chm page content) on a networked or shared drive

Resolution
This setting can be overridden on individual client machine in order to view the file's page content. To do this, cut and paste the following code into a .reg file and then double-click that file

REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\ItssRestrictions]
"MaxAllowedZone"=dword:00000004

Please note that by exposing a machine to view active content on remote machines, an inherent security risk is associated with this action and a degree of awareness and caution should be exercised

About ApexSQL Doc
ApexSQL Doc documents SQL Servers, databases, objects, and SSIS packages in a single document. Create database documentation in a variety of formats including compiled help (.CHM), HTML and MS Word. Schedule your documentation process unattended with the help of the CLI.

Last updated
November 28, 2011

Labels:

...