Release notes: this document describes changes and enhancements made to ApexSQL Log

Best viewed with 'WORD WRAP' unchecked
--------------------------------------------------------------------------------------------------
 Release: 	2014.04.1133
 Date:		See http://www.apexsql.com/sql_tools_log_readme.aspx
 Description:	Minor fix release
--------------------------------------------------------------------------------------------------

Fixes:
- The "Operation is missing UNDO/REDO script" error is encountered when creating UNDO or REDO script for DDL operations
- The application does not show transaction for tables with page compression when database is in compatibility mode
- The "System.Data.SqlTypes.SqlNullValueException" is thrown when transaction log contains incomplete data
- The 'ApexSQL Log has stopped working' error is encountered when opening previously saved session while exporting process is running
- Missing warning message that table ID is already mapped if multiple table mapping is initiated
- Missing confirmation prompt when filter clear is initiated in GUI
- The 'Group by' filters in the grid do not work
- The "System.IO.FileNotFoundException" error is encountered when trying to open Options on a specific Windows Server 2003
- The Schema operations filter is missing filter by Schema
- The 'Collection was modified; enumeration operation may not execute' error is encountered if a session is active during the application update
- Deleted users are not shown if existing users are filtered out via the grid filter

--------------------------------------------------------------------------------------------------
 Release: 	2014.03.1129
 Date:		November 19, 2014 
 Description:	Minor fix release
--------------------------------------------------------------------------------------------------

Fixes:

- The "Error opening connection: Invalid connection string attribute" error is encountered when trying to connect to database when either server, username or password contains special characters ("';)
- The application hangs during the creation of a REDO script when performing a conversion of datetime
- The "Operation 'Drop object' is missing UNDO/REDO script" error is encountered when creating UNDO or REDO script for dropped DDL operations
- The auditing process stops during "Initialize engine" step when auditing SQL 2005 database on Windows Server 2008
- The exporting process cannot be completed when exporting transaction log file backups without on-line transaction log to XML from CLI
- The "External component has thrown an exception" error is encountered when trial period is extended on remote SQL Server

--------------------------------------------------------------------------------------------------
 Release: 	2014.02.1121
 Date:		July 14, 2014 
 Description:	Minor fix release
--------------------------------------------------------------------------------------------------

Fixes:

- The "Object reference not set to an instance of an object" error is encountered when using the "Old table ID mapping" option when transactions contain incomplete information
- The application cannot complete auditing and the GUI hangs when auditing damaged transaction logs
- The application cannot read compressed SQL Server 2014 backups
- The batch script generated via the "Create batch file" option contains an incorrect value for the "/from" switch for the last 24 hours time range
- The "System.ArgumentNullException - Value cannot be null" error is encountered when copying from the Undo or Redo script pane when no code is selected
- The "Object reference not set to an instance of an object" error is encountered when exporting results into an HTML file via the CLI 
- The "At least one table must be selected when the DDL filter is not used" message is shown when no tables exist in the transaction log files added to the session, and navigation through Filter setup is blocked 

--------------------------------------------------------------------------------------------------
 Release: 	2014.01.1116
 Date:		May 20, 2014
 Description:	Minor feature, major fix release
--------------------------------------------------------------------------------------------------

Enhancements:

- The application now fully supports SQL Server 2014
- Automatic recognition of the database recovery model
- An option to purge old application log files is added
- Precision up to milliseconds is added to the Time range filters
- Added the new "The session wizard auto loads SQL logs to analyze" option in the General section of the Options dialog 

Fixes:

- The script created via the "Export to SQL BULK" cannot be executed
- The "System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values" error is encountered when trying to connect to a database using the login mapped to a database user with the db_owner role
- The "Object reference not set to an instance of an object." error is encountered if an incorrect path is selected in the Export undo script option
- The "Column name or number of supplied values does not match table definition" error is encountered when running a script created via the Export to SQL file option
- The "External error has thrown an exception" error is encountered when trying to manually activate a remote SQL Server instance
- The "Adding a server failed" error is encountered when trying to activate a SQL Server instance with the same name as an instance already activated, but on a different machine 
- The Time range filter shows incorrect result set when the main grid is refreshed
- The Users filter is not correctly filtering transactions in the main grid 
- When Select All Operations in Transactions is selected in the main grid, all operations in the selected transaction(s) are not shown in a specific case
- The "Object reference not set to an instance of an object. Type: System.NullReferenceException" is encountered when creating the Undo or Redo script for the specific case
- The application crashes when reading online transaction log files and server side auditing is used in a specific case 
- The Copy Rows to the Clipboard option does not copy the rows to the clipboard
- The "The system cannot find the file specified" errors is logged in the application log files when trying to read specific transaction log backup files
- The DDL filters are filtering the result set incorrectly after loading an application object filter .axof file
- The Other option in the application Options | Script editor| Output Format and Editor cannot be configured
- The "The constructor to deserialize an object of type 'ApexSql.Log.LogOperationData' was not found." error is encountered when clicking rows in the main grid in a specific case
- Values for binary columns are not shown as binary when scripting user defined types that inherit the varbinary type
- The Server selection in the Connect to server dialog in the Activation form is not locked in the activation dialog
- When a backup is removed from the file list in the Select SQL logs to analyze step, transaction log details are removed from all backups in the file list
- Some dialogs cannot be closed via the Escape key
- The "The path is not of a legal form" error is encountered when incorrect path is provided in the Output path for Export/Create batch file
- The Activation status is shown as Unknown when the trial expires on a server with no server side components
- The application cannot access the online transaction log and the "The system cannot find the file specified" message is logged in the application log files in a specific case
- The "Object reference not set to an instance of an object" error is encountered when creating the undo/redo script in a specific case
- The session wizard cannot complete the auto loading of SQL logs process in a specific case
- The "Export to SQL BULK" option generates a SQL script that cannot be executed in a specific case
- The "Object reference not set to an instance of an object" error is encountered when using the "Open results in grid view" option in a specific case
- The "There was an error reflecting type 'ApexSql.Log.Gui.Classes.Data.LogProjectFilter' Error" error is encountered when using the "Save filter" option in a specific case
- The "Unknown error has occur" message is shown when trying to use the "Manage server-side components on local servers" option in a specific case
- There’s no option to check/uncheck all Users in the main grid filter 
- Updated columns are not highlighted in the Operations details tab

Changes:

- New user interface that follows Metro UI style
- The "Create undo script" and "Create redo script" options in the main menu now create scripts only for the selected transactions
- Windows XP is no longer supported

--------------------------------------------------------------------------------------------------
 Release: 	2013.01.1098
 Date:		October 14, 2013
 Description:	Major feature, major fix release
--------------------------------------------------------------------------------------------------

Enhancements:

- Faster and easier server-side components (SSC) installation for remote servers
- Optimized session wizard with simplified data sources selection (unified backup, tlog and detached file adding interface)
- Performance improvements - up to 12 times faster auditing via GUI, and up to 5 times faster result grid filtering on large transaction logs (with over one million operations) 
- The application now fully supports Windows 8.1

Fixes:

- If schema related operations are filtered using the "Filter" feature, and only transaction log backups are used as the source, an incomplete set of data and schema related operations is shown in the main grid 
- The "Date/Time range" filter shows wrong results
- The application crashes when sorting results in the main grid by transaction ID
- Filtering results using the "User tables" option doesn't work properly for the specific database
- The application prompts to install server-side components (SSC) when sending logs, even if a proper SSC version is already installed
- The Find feature doesn't work properly if search is started from the beginning of the main grid while searching upwards 
- The text about the trial version limitation is cut off in the about dialog
- The "Object reference not set to an instance of an object." error is encountered if the "Find next" command is used after the "Check" option while the application still read logs
- The "Files cannot be replaced" error is encountered while installing server-side components on SQL Server 2005
- A transaction log backup cannot be found on a remote SQL Server 2000 when the "Server usage" option is On
- An incorrect error message is shown in the GUI if the transaction log file is inaccessible
- Both ApexSQLLog2008 and ApexSQLLog2011 folders are created in AppData when using the application
- The "Server activation center" doesn't change application status to Activated upon successful manual activation
- Improper grammatical structure in the "Server activation center" Details if the selected server is unavailable or has invalid credentials
- The "Activate" button in the "Server activation center" is unpredictably enabled or disabled when two or more servers without SSC installed are enlisted
- The application crashes when applying the "Date/time" filter option changes
- Navigating the resulting grid using Ctrl+Home and Ctrl+End key combination doesn't work properly
- The "Delete Filter" command unsorts the resulting grid sorted previously 
- After refreshing the resulting grid, previously deselected columns in the "Select columns" dialog are selected and re-shown in the resulting grid
- The resulting grid empties and cannot be repopulated after the DDL filter is applied on a database that contains only DDL changes
- SQL Server activation state is lost in case an activated latest patched installation is uninstalled and replaced with the public application version
- When using the custom "Day/time" filter, the committed DDL and DML changes aren't displayed
- When filtering DML operations, selecting "Update" and "Delete", without "Insert", displays updated objects only
- The application is unable to access transaction log backups created on network drive mapped via XP_CMDSHELL system procedure
- The application stops responding for a short time when connecting to SQL Server to retrieve server side logs using the "Send logs" option
- "The [DBNETLIB][ConnectionWrite (send()).]General network error." error is encountered when "Opening log sources" dialog is closed due to insufficient permissions to access transaction log backups
- Canceling the "Check all" feature of the "Find" dialog starts the searching process that cannot be canceled
- The application crashes if the "Find" dialog's "Check all" with the "Details" option is performed on a specific database with transaction log backup included as an additional source
- Incomplete data is exported after the "Export to HTML" feature is used twice to export the same resulting grid
- The application stops responding when trying to open a specific test database
- Incorrect text spacing in the "Filter defaults"-"Other" dialog
- The "An error occurred while reading the backup file: CreateFile() failed ..." error is encountered when opening projects with remote database backup
- The application is unable to read data from databases re-attached to the remote SQL Server
- Excessive logging if reconstruction of UPDATE statement fails
- The "Check all" feature in the "Find" dialog deselects previously checked items from the resulting grid
- "Operation ALTER TABLE at <location> is missing UNDO script." is generated as an ALTER TABLE undo script in case both online transaction log and additional transaction log backups are used as the source
- Missing desktop shortcut icon on Windows 8 and Windows Server 2012
- The "Specified argument was out of the range of valid values" error is encountered when removing "Unknown server" using the "Server activation center" dialog
- The "Update error: Update process completed successfully, but can't run PostProcessorAssembly" error is encountered when the update ends using the "Automatic Update Service" feature 
- The application stops responding while reading AdventuresWork2012 database transaction log with enabled filter for user column 
- The application stops responding while reading the transaction log backup using a particular database 
- The "Top Level Exception stack trace at System.Drawing.Graphics.CheckErrorStatus(Int32 status)" error is encountered when selecting and deselecting rows in the resulting grid
- Wrong copyright year information displayed in the "About" dialog
- Multiple database backups must be added manually one by one using the "Database backups" dialog
- The ApexSql.Log.LogException" error is encountered when the database being audited is deleted, and a new project started
- When filtering main grid results by the "Date and Time" column, sorting is changed from "Begin Time" to alphabetical order of the "Operation" column
- The application is being deactivated randomly, and requires reactivation
- The "Exception occurred: OpenProcess() failed (2): Access is denied." error is logged when auditing any database on SQL Server 2012 x64
- The "System.ArgumentOutOfRangeException" error is encountered when removing all enlisted servers from the "Server activation center" dialog
- The selected enlisted transaction log or backup file is not correctly marked when selected through the "Project" dialog
- The resulting grid data is not refreshed if Page Down button is used and DML operations are filtered out
- The "Failed accessing activation information." error is encountered when connecting to the server database
- The Progress bar and Cancel button are shown on the "Database backups" tab even if no backup is selected for loading
- Sorting recent projects in the "Project management" dialog does not work
- The application doesn't handle the Up and Down Arrow keys properly for the resulting grid navigation
- The Apply filter pane remains visible after deleting the filter 
- Navigating the resulting grid via Up/Down arrows or PgUp/PgDown keys doesn't work correctly if remote SQL Server database is being audited
- Question marks instead of dots are shown in the connection failed dialog
- Transaction log files cannot be read because of insufficient permissions on project edit even if they were successfully added
- Project wizard column descriptions cannot be read as the horizontal scroll bar is missing
- The "ApexSql.Log.SsaFailedException" error is encountered when auditing a particular database and the "Server usage" option is On
- The "ApexSql.Log.LogException" error is encountered if connection to the database is lost and resulting grid refreshed while the "Server usage" option is On
- If the checked rows are filtered out after applying a new filter, random rows will appear as checked
- The commands attached to the Quick access toolbar are reset after the application restarts
- Commands "Close project", "Save as...", "Print" and "Print preview" don't have tooltips when added to the Quick access toolbar
- Number of checked rows isn't updated in the status bar after being modified via the "Check all" command using the "Find" dialog
- Columns in the "Server activation center" can be shrunk to zero width
- Enlisted rows in "Old table ID mapping" need to be removed twice to be deleted
- The "Remove" option in "Transaction logs" dialogs removes the selected, not the checked files
- A wrong error message is encountered when entering Connection monitor account details if SQL Server authentication is used and Windows user details entered
- Statistics information is not updated if selected rows are checked using the Space key
- Invoking help leads to non-existing pages
- Information icons with tooltip descriptions are missing for some options
- Inconsistent tooltip buttons in the "Project" dialog
- The "Object reference not set to an instance of an object" error is encountered when repeating the search process for the existing text in the resulting grid, with different search options selected
- Wrong resulting grid row selection info if data is filtered out
- The "Collection was modified after the enumerator was instantiated." error is encountered when sorting the grid while the application is reading data sources
- Wrong information shown about searched operations if searching is started while the application is reading data sources
- The "Requested Clipboard operation did not succeed." error is encountered on copying the DML operations value to clipboard
- The application stops responding if the "Find" dialog is used with lots of data in the grid and all search options are checked
- The "Find" feature is omitting the selected record from search
- The icon indicating the DDL filter is changed remains gray if the "Objects: not set" option is used
- The "Applications: not set" text is unchanged even if "Show operations made by unknown applications" is changed
- The "Hosts: not set" text is unchanged even if "Show operations made by unknown client host" is changed
- Description items added on project wizard or filter cannot be edited
- If all data is filtered out, the "Refresh" option in the menu is enabled and the "Refresh" option on the context menu is disabled
- If all data is filtered out, the "Find" option in the "menu is enabled and the "Find" option on the context menu is disabled
- If all data is filtered out, the "Copy rows to clipboard" option in the menu is enabled and the "Copy rows to clipboard" option on the context menu is disabled
- Saved project shows no database name in the "Project management" dialog if used database is the SQL Server default one
- Calendar months cannot be properly set using the visual calendar in the "Time range" filter feature
- The user is not prompted to save previously changed filter settings before loading other filter settings file
- The "Clear recent history" option is wrongly positioned in the "Options" dialog
- Using the "Check all" button in the "Find" dialog clears the checked state from all records before setting it for the records fulfilling the search criteria
- The "Startup action" option's tooltip on the "General" tab in the "Options" dialog contains too much text to be read while it's displayed as tooltip closes
- The last selected row does not get checked when the "Check selected" command is selected and the selection is made by the Shift+Left mouse button click
- The rows checked before applying a filter are shown as checked in the grid, but they all uncheck after scrolling the grid
- Impossible to type uppercase letters in the "Find" dialog if there are lowercase words in the search history beginning with the same letters
- The Search history list in the "Find" dialog cannot be cleared
- The "Processing logs" progress bar shows wrong information while exporting data using the "Project" dialog
- The application always asks to save changes in the current project when closing, or on opening a new one, even if nothing is changed
- When adding database backups, the last used location is opened instead of the one used by SQL Server
- Removed transaction logs are enlisted again on editing project in the "Transaction logs" section
- Searching for backups cannot be canceled or finished if a project with the previously removed backup is being edited
- Visual inconsistencies exist in the "Options" dialog if application is started under 120 DPI font size
- Additional "\" character is added to the destination file path if the resulting file type is changed on the "Export results" dialog
- The "NullReferenceException" error is encountered on generating undo SQL script for a database containing BLOB values using the CLI
- Excessive GO keyword is added to end of undo and redo scripts in specific cases
- The application stops responding for a significant time when exporting transactions from a large database to HTML file consuming all available CPU and RAM resources
- Exporting to HTML takes too long for specific database
- The "System.AccessViolationException" error is encountered when exporting results to HTML for specific database
- The application fails to retrieve the server-side components (SSC) status information for SQL Servers where old SSC version was uninstalled
- The application fails to connect to SQL Server to retrieve server side logs with "The certificate chain was issued by an authority that is not trusted." in case "(local)" is used instead of SQL Server name or IP address
- An undo script created via the CLI contains no data in case changes made in specific time period are audited
- The server-side component tries to use wrong online transaction log file
- The auditing process stops after few operations returned when auditing SQL Server 2000 database when the "Server usage" option is On
- Wrong message displayed when trying to connect to the unsupported SQL Azure server
- The "/html" CLI switch does not work correctly
- The "Unexpected error occurred" error is encountered when the project file created for one database is used with another one using the CLI with "/d" switch
- The "Next" button in the last step in the server-side components installation process is obsolete
- Aborted transactions referenced incorrectly in the "Statistics" dialog
- Wrong text in the "Others" section of the "Schema objects" filter group
- The term previously searched with low caps cannot be retyped with upper caps using the "Find" feature
- The "Uncheck all" option is disabled when a filter is applied after checking transactions
- Column headers doesn't have describing tooltips
- The dialog warning the user that SPID value has to be between 0 and 65535 cannot be closed by pressing the Enter key
- If the number of records is reduced by applying the filter, the selected record number is larger than the total number of records
- The information about the loaded project is missing until the "Processing logs" progress bar dialog is closed
- The "Statistics" dialog shows no data until reading process is finished, even if the resulting grid contains data
- The transactions are not filtered correctly using the "Time range" filter when creating an undo script via the CLI, or exporting the results directly into an undo file
- The "Check prerequisites on target server" error is encountered when attempting to connect to a SQL Server installed on a system with Data Execution Prevention (DEP) turned on, or on a system where its hardware ID is changed
- The "Connection to the < databasename > on the server < hostname > failed." error is encountered when attempting to connect to any SQL Server instance if the application is running on Windows XP or on Windows Server 2003

Changes:

- Server side components are not necessary when auditing a local database
- The application stores all server-side log files and metadata in "C:\ProgramData\ApexSql\ApexSqlLog\(local)\LOG" folder
- Redesigned "Find" dialog to improve usability - "First N hours" from data sources and "Last N hours" from data sources
- Added standard row navigation commands at the bottom of the resulting grid
- Removed connection monitor functionality

--------------------------------------------------------------------------------------------------
 Release: 	2011.03.1088
 Date:		March 18, 2013
 Description:	Medium fix release
--------------------------------------------------------------------------------------------------

Fixes:

- The information about the trial version limitation is not shown in the application
- If a field value filter is added to a project, the table columns initially labeled as CLUSTERED in the Operation details tab of the Results grid, will not be shown after re-running the same project
- The "System.PlatformNotSupportedException" error is encountered when the application is running on Windows XP and a full database backup is added
- Update operations can't be reconstructed when a database is restored from a backup and multiple sets of full database and transaction log backups are used as additional data sources
- Some operations are not detected when the latest transaction log backup, created prior to a full database backup from which the database has been restored, is used as an additional data source
- The "hexadecimal value 0x07 is an invalid character" error is encountered when exporting data to HTML
- Depending on the data size, up to 20 operations from the first segment of the transaction log are skipped when reading multiple sets of full database and transaction log backups stored in the same backup file
- The "hexadecimal value 0x0E is an invalid character'' error is encountered when exporting data to HTML 
- The "Object reference not set to an instance of an object." error is encountered on SQL Server 2005 or later when exporting transactions to HTML 
- The application stops without an error when the database has a large number of expired or deleted transaction log backups (>7000)
- If an Object filter is applied, when exporting data from the Main grid to any output format, all operations will be scripted multiple times 
- The Main grid scroll will not work if an Object filter is applied
- "ExecQuery failed: File device name not found due to following error (1): CreateFile() failed : The system cannot find the path specified. [0x00000003] [0x20000005]" error is encountered on SQL Server 2005 or later when auditing a database restored from a backup made after the database was put in read-only mode 
- "Gap in log source detected" warning message is written to the application log file while auditing transaction log backup file if not all operations were found in the backup file
- Transaction log auditing results don't correspond to specified Filter panel settings if filtering settings are modified during the auditing process
- "Auditor initialization failed" error message is encountered during auditing process when using server side auditing in up to 1% cases
- "Check the prerequisites on the target server" error message is encountered when auditing server with highly restrictive security settings
- 'Last 'N' minutes/hours' transaction filter doesn't exclude all operations that do not belong to specified time range
- "Check the prerequisites on the target server" error message is encountered when auditing server with highly restrictive security settings
- The application doesn't respond on startup for up to 30 seconds when internet connection is not available

Changes:

- Transaction logs wizard tab now groups sources by type

--------------------------------------------------------------------------------------------------
 Release: 	2011.03.1062
 Date:		August 8, 2012
 Description:	Minor feature, minor fix release
--------------------------------------------------------------------------------------------------

Enhancements:

- The application is now FIPS compliant
- Improved server side auditing stability and performance up to 5%

Fixes:

- The application user interface is not responsive while loading transaction logs in log wizard
- Find dialog doesn't complete search process and displays incorrect progress when 'Check All' option is ON
- Applying any data and/or schema operation filter via main window filter pane removes all schema operations from main grid
- "Online file not found" error message is encountered when auditing database that contains multiple transaction logs on SQL Server 2005 or later
- "Conversion from class _variant_t to short failed" error message is encountered when auditing database that contains short data type in variant fields
- "Insufficient permissions to access log file" error message is encountered when auditing database that contains multiple transaction logs on SQL Server 2005 or later
- All rows from Tables are not read from compressed backups that are internally optimized by SQL Server

--------------------------------------------------------------------------------------------------
 Release: 	2011.02.1055
 Date:		May 18, 2012
 Description:	Medium feature, medium fix release
--------------------------------------------------------------------------------------------------

Enhancements:

- Application now fully supports auditing of SQL Server 2012 databases
- Natively compressed backups can now be used in auditing
- To simplify filtering especially for large operation counts a new operation filter has been introduced to main grid that includes the following:
	'Date and Time' tab with improved date/time period selection capabilities
	'Data operations (DML)' tab for specific tables to output operations for selection
	'Schema operations (DDL)' tab for specific DDL operations and specific objects selection
	'Schema objects' tab for filtering objects by type with enhanced individual object filtering capabilities
	'Transactions' tab for transaction parameters selection
	'Users' tab for filtering operations by user
	'Other' tab where other operation parameters can be set including application, host, SPID and description

- Visual C++ run-time components are now installed on remote server automatically during Server Side Components installation
- Main grid can now handle large operation counts (up to 10 millions) without noticeable performance degradation
- Main grid population now starts with minimal delay after Project wizard is closed to improve perceptible performance
- Sorting in main grid is now allowed regardless of operations count
- A new setting to show export results in SQL Server 2012 Management Studio has been introduced on Options form
- A new bar that shows currently connected server name has been introduced on Status bar
- Performance of auditing transaction logs has been improved by 10% - 40% depending on number of operations being analyzed

Fixes:

- Transactions counts shown on Statistics dialog are incorrect
- Opening an existing project from recent projects list doesn't trigger save changes prompt for currently opened project
- Auditing is still performed on the server with Server Usage option set to OFF
- Descriptions picklist on Descriptions tab of Filter step of Project wizard is empty for a new project
- System.NullReferenceException error is encountered on attempt to edit currently opened project after it has been used for exporting directly to a file
- ApexSql.Log.LogException error is encountered on attempt to refresh main grid after connection to the server has been lost
- 'The network path was not found' error is encountered when uninstalling Server Side Components from local SQL Server 2000 instance if it was specified as '.' during installation
- 'Insufficient permissions to access database' error is encountered on attempt to refresh main grid after Server Side Components have been uninstalled
- Prompt to save changes is shown for unchanged projects when closing application, creating new or opening an existing project
- Clicking Checked and Excluded bars on Status bar doesn't open Statistics dialog
- It takes a long time for auditing to start after Project wizard is closed
- 'Could not find stored procedure 'sp_dboption' error is encountered when starting Connection Monitor on SQL Server 2012
- Database backups once added to the project cannot be removed then
- 'Select a database to store captured data' picklist on Connection Monitor dialog can be made enabled for disabled Connection Monitor by clicking 'Remove all captured data now' button
- 'Is null' field value filter isn't applied to DATETIME values
- Currently connected server name is not shown on Status bar
- Server Side Components are still installed on remote server when the user has insufficient permissions that results in damaged installation that can't be rolled back
- Server list on Server Activation Center dialog is reordered during population that makes it hard to work with
- SET ANSI_PADDING setting isn't exported for Tables when exporting from main grid
- Tab order is incorrect on 'Field Values Filter for <object>' dialog shown on Field values tab of Filter step of Project wizard
- Incorrect connection string is generated when installing Server Side Components on a server connected with network protocol and port explicitly specified
- Administrative credentials are unnecessarily requested when installing Server Side Components on a local server running under non-administrative account

Changes:

- Application now requires .NET Framework 3.5 SP1 to run properly
- Grouping is no longer possible in main grid for performance considerations

Known limitations:

- Changes from WRITETEXT and UPDATETEXT commands are not detected
- UPDATE operations affecting only data in obsolete BLOB data types (TEXT, NTEXT, IMAGE) are not detected
- Change to the table data compression option renders reconstruction of older changes to the table data impossible

--------------------------------------------------------------------------------------------------
 Release: 	2011.01.1039
 Date:		December 16, 2011
 Description:	Major feature, medium fix release
--------------------------------------------------------------------------------------------------

Enhancements: 

- Application now supports auditing of SQL Server Denali/2012 RC0 databases
- Application now fully supports auditing of the following SQL Server Denali/2012 RC0 DDL operations:
	CREATE/ALTER/DROP SEQUENCE
	CREATE/ALTER/DROP TABLE ... AS FILETABLE
	CREATE/DROP COLUMNSTORE INDEX

- Application will now run as 64-bit process under 64-bit OS
- Server Activation Center dialog has been redesigned for improved usability
- Connection Monitor Manager dialog has been redesigned for improved usability
- Application stability has been improved when auditing larger than 32 GB transaction logs
- Memory consumption has been improved when auditing transaction logs larger than 2 GB by preventing memory overuse
- Performance has been improved by 40% when auditing transaction logs with more than 1,000,000 operations
- Auditing of page and row compressed tables is now supported
- Auditing of SPARSE columns is now supported
- Application can now reconstruct changes made with SELECT INTO statements
- Application can now reconstruct changes to numeric data stored in the vardecimal storage format
- Application can now be started without requiring administrative privileges
- User feedback dialogs have been updated for improved usability

Fixes:

- Incorrect database version is shown in status bar tooltip for SQL Server 2000 databases
- "Mapped table <name> doesn't exist in database." error is encountered on editing or refreshing currently opened project when previously mapped table is deleted
- Application prompts to install already installed Server Side Components if the connected user has insufficient privileges
- Old table ID mapping doesn't work when transaction log processing is performed on the server with Server Usage option set to either ON or AUTO
- Application requires administrative privileges to start
- Connection Monitor Manager dialog is closed after any warning/error message not allowing fixing issue right away
- Application doesn't offer to install Server Side Components when sending server logs from a server with no Server Side Components installed
- Export type option is always set to Output transactions and operations info into | XML file when editing project
- Offline databases are displayed in database picklist on Connect to database tab of Project settings form
- /no_header switch doesn't suppress outputting header for SQL export type in CLI
- DATETIMEOFFSET values are scripted incorrectly into UNDO/REDO scripts
- Update operations on BLOBs may be scripted twice into UNDO/REDO scripts

Changes:

- Server Side Components of all older versions will now be uninstalled from the server when installing a newer version
- Progress dialogs have been updated to be more standard with other applications
- Old and New Value comparison results in Column Data Viewer for UPDATE operations have been replaced with individual values

Known limitations:

- Sorting, grouping and filtering get automatically disabled in main grid with corresponding message shown when amount of outputted operations exceeds 100,000 to maintain acceptable performance
- Changes from WRITETEXT and UPDATETEXT commands are not detected
- UPDATE operations affecting only data in obsolete BLOB data types (TEXT, NTEXT, IMAGE) are not detected
- Change to the table data compression option renders reconstruction of older changes to the table data impossible

--------------------------------------------------------------------------------------------------
 Release: 	2010.02.1004
 Date:		February 16, 2011
 Description:	Minor feature, medium fix release
--------------------------------------------------------------------------------------------------

Enhancements:

- Application now fully supports auditing of the following DDL operations:
	CREATE/DROP SCHEMA

- Progress dialogs have been redesigned across the application for improved accuracy and usability
- Server Side Components can now be uninstalled through Server Activation Center dialog 
- Connection Monitor Manager dialog has been redesigned for improved usability
- Performance of UPDATE reconstruction has been improved for rarely updated rows (up to 400% depending on internal state of the operation)
- Performance of data export has been improved up to 100% for BLOBs larger than 64 Kb
- The following new switches have been added to CLI: 
	 /ifl [/intermediary_files_location] - Specifies location of intermediary files created during auditing

- Delay in opening Filter step of Connection Wizard with lots of hosts, applications or user data has been eliminated
- Amount of memory required for UPDATE reconstruction has been reduced by 10% on average

Fixes:

- GUI gets unresponsive when auditing with Server Usage option ON
- System.InvalidOperationException error is encountered when opening a project if 'System cryptography: Use FIPS compliant algorithms for encryption, hashing, and signing' security setting is enabled either in the Local Security Policy or as part of Group Policy
- Searching through main grid with more than 100,000 operations results in System.NullReferenceException error
- ALTER PROCEDURE operations are not detected
- Send Logs ribbon command does nothing if default email client is already opened
- Select All Operations in This Transaction main grid context menu command selects incorrect operations in main grid with more than 100,000 operations
- Operation Details, Row History, Undo Script, Redo Script and Transaction Information tabs show nothing if there's only 1 operation in main grid
- Export type settings get restored from projects incorrectly in GUI
- Credentials used for accessing Connection Monitor with Connection Monitor Manager dialog aren't persisted between sessions
- System.ArgumentOutOfRangeException error is encountered when scrolling main grid with more than 100,000 operations extracted from SQL Server 2000 transaction log
- Backups don't get specified in sample CLI command when exporting auditing results with backups among data sources
- Changes in Date/time range filter get incorrectly reflected in sample CLI command shown when exporting auditing results
- Comparison with NULL in Field values filter results in incorrectly formatted /fields switch argument in sample CLI command shown when exporting auditing results
- "Switch 'css' is not recognized" error is encountered when executing sample CLI command generated for exporting auditing results to HTML
- "SSA error:" error is encountered when auditing remote SQL Server 2008 R2 instances with Server Usage option ON
- "Value does not fall within the expected range" error is encountered in CLI if /fields switch argument contains LIKE operator
- Searching in Operation Details grid works incorrectly with more than 100,000 operations in main grid
- "Trusted connection will be used" message gets outputted twice in CLI if /trusted switch was specified
- Filter Converter doesn't warn if specified file is of bad format
- Textual data cannot be copied from Column Data Viewer
- Corrupted Connection Monitor tables can cause performance degradation (up to 2 times and more)
- Default Intermediary Folder application option can't be set in CLI
- Copy Rows to Clipboard ribbon command does not work if main grid is not focused
- Usage of deprecated CLI switches /ddl, /undo_ddl, /include_dropped_tables, /exclude_system_tables, /include_dropped_users, /include_unknown_applications, and /include_unknown_clients does not result in warning
- Column Data Viewer does not show binary data
- Show filter row main grid context menu command does not work
- Create Undo Script and Create Redo Script main grid context menu commands get disabled with more than 100,000 operations in the grid if all are selected
- Values of TEXT data type are shown in hexadecimal form in Row History grid
- Application cannot detect whether Server Side Components are already installed if connected user has insufficient permissions on the extended stored procedures installed as part of Server Side Components

Known limitations:

- Sorting, grouping and filtering get automatically disabled in main grid with corresponding message shown when amount of outputted operations exceeds 100,000 to maintain acceptable performance
- Changes from WRITETEXT and UPDATETEXT commands are not detected
- UPDATE operations affecting only data in obsolete BLOB data types (TEXT, NTEXT, IMAGE) are not detected

--------------------------------------------------------------------------------------------------
 Release: 	2010.01.0979
 Date:		August 23, 2010
 Description:	Major feature, major fix release
--------------------------------------------------------------------------------------------------

Enhancements:

- All transaction log processing can now be done on the server with only results sent to the client
- Depending on the case auditing performed on the server can significantly improve overall performance vs. auditing performed locally on the client (from 10% to more than 400%)
- Server Usage options group has been added to Options dialog to control whether to perform auditing on the server. Available choices are Off (default), On and Auto
- Application now fully supports auditing of the following DDL operations:
      CREATE/ALTER/DROP TABLE, 
      CREATE/ALTER/DROP FUNCTION, 
      CREATE/ALTER/DROP PROCEDURE,
      CREATE/ALTER/DROP TRIGGER, 
      CREATE/ALTER/DROP VIEW,
      CREATE/DROP CHECK CONSTRAINT, 
      CREATE/DROP DEFAULT, 
      CREATE/DROP DEFAULT CONSTRAINT, 
      CREATE/DROP FOREIGN KEY, 
      CREATE/DROP INDEX, 
      CREATE/DROP PRIMARY KEY, 
      CREATE/DROP RULE, 
      CREATE/DROP STATISTICS, 
      CREATE/DROP TYPE, 
      GRANT PERMISSIONS,
      RENAME OBJECT,
      REVOKE PERMISSIONS

- Encrypted SQL Server objects get fully decrypted in auditing of DDL operations
- DML and DDL operations can now be shown in grid with different background colors
- Main grid can now display any number of operations
- Application now supports filtering by Unknown transaction state 
- The following predefined filters have been added to Time range filter of Project wizard: "Whole transaction log", "Last 30 days", "Last 7 days", "Last 24 hours", "Last 60 minutes"
- Each column on Columns filter step of Project wizard has appropriate tooltip
- 'Parent Object' and 'Parent Schema' columns have been added to Main grid
- New Office 2007 style interface with ribbon bar, quick access toolbar, and ApexSQL Log button has been introduced
- New Resources ribbon bar has been introduced for quick access to Help page, Support forum, Training page, FAQs, Knowledge base, Troubleshooting, About and Get Updates dialog boxes
- Filter files have been replaced with full-fledged projects
- New standard Project Management dialog has been introduced
- Project Management dialog now shows recently used projects or projects stored in any folder of choice
- Projects can be Pinned/Un-Pined to Recent Projects list on Project Management dialog
- Project description can be edited directly from Project Management dialog
- 'Show on Startup' option has been added to Project Management dialog box
- Startup Action options group has been added to Options dialog to control Project Management dialog behavior. Available choices are 'Show Project Management dialog', 'Show last opened project' and 'None'
- Advanced button implemented in Project wizard displays additional steps (Database Backups, Old Table ID Mapping)
- Filter converter has been implemented for converting old (ApexSQL Log 2008) filter files to new projects
- Filter Defaults for Transactions, Operations and Other filters have been added to Options dialog
- Specific backup sets can now be used as a data source
- Exporting to SQL BULK format is now available from the ribbon in the form of "Export to SQL BULK" command
- Server Activation Center dialog has been redesigned for improved usability
- Main window Status bar has been redesigned and now shows numbers of checked and excluded by filter rows in addition to server and database names
- New Comparison Statistics dialog is shown in response to clicking on checked or excluded by filter bars of main windows Status bar
- New tooltip balloon has been added to data source bar of main window Status bar
- Options dialog has been redesigned with new Office 2007 button bar
- Application can now be presented in 3 color schemes: Blue, Silver and Black 
- Field Filter Editor has been redesigned and now supports accurate numeric comparison and nested conditions
- New Field Filter Editor allows to filter operations based on 'Exclude if' or 'Include if' conditions
- New Field Filter Editor criteria can use the following comparison operators: 'Equal', 'Not Equal', 'Between', 'Not between', 'Contains', 'Not contains', 'Begins with', 'Ends with', 'Any of' and 'None of' and the following logical operators: 'And', 'And not', 'Or' and 'Or not'
- Installing server-side components remotely now doesn't require administrative shares on the remote server (requires membership in the sysadmin server role)
- UPDATE reconstruction has been improved and now covers even more edge cases which results in improved accuracy of auditing trail
- GO commands are inserted every few transactions in SQL scripts
- The following connection options have been added to Connection step of Project wizard and Connection Monitor Manager login form: 'Connection timeout', 'Execution timeout' and 'Encrypt connection'
- Old Table ID mappings information is now displayed in CLI 
- Online transaction logs and available database backups are now identified faster (proportionally to their count)
- The following new switches have been added to CLI: 
     /eut [/exclude_user_tables] - Excludes all user tables from auditing, 
     /ist [/include_system_tables] - Includes system tables in auditing, 
     /edt [/exclude_dropped_tables] - Excludes operations made on dropped tables, 
     /edu [/exclude_dropped_users] - Excludes operations made by dropped users, 
     /eua [/exclude_unknown_applications] - Excludes operations made by unknown applications, 
     /euc [/exclude_unknown_clients] - Excludes operations made by unknown clients,
     /ssa [/server_side_auditing] - Specifies server usage mode
     /pr  [/project] - Specifies path to project file         

Fixes:

- Server-side components can't be installed on Windows Vista/2008 Server/7 with User Account Control (UAC) on
- "Exception occurred while flushing data: Timeout expired" error accompanied by Connection Monitor stoppage is logged into application log
- "SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM." error is shown on attempt to audit detached log files from different databases at the same time 
- User tables aren't selected by default on Tables step of Filter wizard
- SQL Server service shuts down if installation of server-side components fails
- System.UnauthorizedAccessException error is encountered in case default output folder is no longer accessible 
- "QueryDosDevice() failed - Access is denied" error is logged into application log in case SQL Server service is running under built-in 'Network Service' account
- "ExecQuery failed: Unknown error occurred" error is logged into application log on installation of server-side components in case the account SQL Server is running under has no EXECUTE permissions on xp_ApexSqlLog2008 or xp_ApexSqlLogApi2008 extended stored procedures
- Server-side components cannot be uninstalled from local SQL Server 2008 instance under Windows Authentication 
- Available transaction log backups are not shown automatically on Data Sources step of Log Selection wizard 
- "Incorrect DBCC statement" error is encountered on install if selected SQL Server account has insufficient permissions
- Application cannot upgrade server-side components when it fails to check SQL Server account permissions
- Application is unable to read SQL Server 2005 transaction logs on SQL Server 2008
- Filters specified in Filter Field Editor don't work for TEXT fields
- Images stored in BLOB fields are not rendered as such on Row Details tab 
- /users CLI switch is case-sensitive
- Processing progress isn't updated for exports from Main grid
- System.OutOfMemoryException error is encountered when creating REDO/UNDO scripts for very large (>100M) BLOB fields
- Inequality operators (>, <, => and <=) specified in Filter Field Editor work incorrectly for non-char data types
- Backups selection done in Log Selection wizard is not remembered if auditing was canceled 
- Equality operator (=) specified in Filter Field Editor works incorrectly for MONEY data type
- "Invalid pointer" error is encountered when purging login information in Connection Monitor Manager 
- "The requested operation requires elevation" error is encountered when starting application right from installer under Windows 7 Ultimate
- System.Net.Sockets.SocketException error is encountered on attempt to audit transaction log backups or detached transaction logs on remote SQL Server instance
- System.OutOfMemoryException error is encountered when auditing databases with >1M operations
- "External component has thrown an error" error is encountered when auditing SQL Server 2005 databases with >2G BLOB fields

Changes:

- The following CLI switches have been deprecated: 
     /idt [/include_dropped_tables], 
     /est [/exclude_system_tables], 
     /idu [/include_dropped_users], 
     /iua [/include_unknown_applications], 
     /iuc [/include_unknown_clients],
     /ddl [/ddl],
     /ud  [/undo_ddl],
     /mt  [/mapped_tables]

- Server-side components are no longer installed in SQL Server's Binn directory except for extended procedures dll which has to be installed there due to limitations of SQL Server
- When activated for DDL operation Operation Details tab displays list of constituent operations performed on system tables
- Old Table ID Mapping does not support mapping to IDs of system tables anymore
- Server explorer panel has been deprecated 
- Connection wizard has been redesigned and merged into Project wizard
- 'Table' column has been renamed to 'Object' in Main grid
- Regular Help button has been replaced with question mark button in title bar on all dialogs and windows
- Operations CLI switch (/ops [/operations]) now accepts DDL operations
- 'Number of operations to show' Transactions filter option has been removed. Now everything that passes filter is outputted
- The following options have been removed from Descriptions filter:
     Show 'SplitNext' Transactions,
     Show 'Allocate Root' Transactions,
     Show 'Split' Transactions,
     Show 'ShrinkFile' Transactions,
     Show 'MoveIndexPage' Transactions 

Known limitations:

- Sorting, grouping and filtering get automatically disabled in Main grid with corresponding message shown when amount of outputted operations exceeds 100K to maintain acceptable performance
- State of server-side components is incorrectly identified if logged user is member of the db_datareader role in master database
- System.OutOfMemoryException error is likely to happen when exporting tables with large (> 10M) BLOB fields to HTML
- ALTER VIEW DDL operation gets scripted as CREATE VIEW in REDO scripts
- Named local SQL Server instances may be identified as remote which results in performance degradation
- UPDATETEXT and WRITETEXT DML operations get reconstructed only when executed within the same transaction and consecutive to DML operation affecting the same row

--------------------------------------------------------------------------------------------------
 Release:		2008.05.0834
 Date:		December 14, 2009
 Description:	Major feature, major fix release
--------------------------------------------------------------------------------------------------

Enhancements:

- Application is now able to export auditing results to HTML format
- Auditing intermediary files storage can now be configured via the new Default Intermediary Directory option. Intermediary files include transaction log metadata cache as well as application log files
- The following new switches have been added to CLI:
    /intermediary_files_location - specifies location for intermediary files created during auditing 
    /html - specifies the name of the HTML export file
- New "Send client and server-side logs" menu item is added to Help menu. If no email client is installed, the client-side logs folder is opened
- Connection Monitor can now be configured via the new Connection Monitor Manager form available from Tools menu
- BLOBs containing images are now rendered as such in Row History grid for SQL Server 2005 and 2008
- BLOB reading now consumes less memory (up to 50% less)

Fixes:

- Connection Monitor is not started after installation
- Create Undo/Redo Script main grid's popup menu items are disabled for selected row
- Checking "Show system tables" option also checks user tables in Log Filter wizard
- In-row filters aren't applied to main grid rows that were previously checked or unchecked
- Special symbols (e.g. '-', '\', etc.) can be added into SPID filters in Log Filter wizard
- Executing the "Auto Resize Columns" command from the tool button does not do the same thing as executing it from the  main grid's context menu
- Toolbars contain unnecessary whitespace
- Database backups have no associated icon on Select Backups step of Log Selection wizard
- Not all available values are displayed on main grid's in-row filter
- No warning is shown if date input in /to switch is greater than the date in /from switch in CLI
- Column Data Viewer is always empty for UPDATE operations if the client is operating under an operating system with Korean locale
- Application doesn't support paths with Cyrillic characters
- It's impossible to connect to SQL Server with Windows Authentication under Vista with active UAC
- Log Filter wizard always shows transaction logs from last opened database vs. the current database that the user is connected to
- Hiding the in-row filter hides all rows from the main grid
- The /fs switch is incorrectly described in the CLI help file
- System.Exception error is encountered if the account used for auditing doesn't have SELECT permission on the mssqlsystemresource SQL Server 2005/2008 database
- Transaction log backups are incorrectly shown on Select Database Backups step of Log Filter wizard
- Server-side components installed during application are not uninstalled when client is uninstalled
- "Export Checked As" command executed from its corresponding toolbar button or from  the main grid's context menu exports all columns from the main grid instead of exporting the selected/displayed columns only
- Exporting to XML fails if initiated from the Log Filter wizard
- When a machines' hardware ID changes, the server's activation status becomes invalid and re-activating is not possible 
- The application exports column values incorrectly
- When generating REDO scripts, a System.OutOfMemoryException error is sometimes encountered
- "Unknown SQL Server version" error is received when reading SQL Server 2000 backups
- Inaccessible transaction logs and database backups are still shown as data sources in Log Selection wizard
- Chinese characters aren't shown on the main grid
- NULL values are incorrectly exported as empty strings when the selected output is SQL BULK files
- BULK import error is received when running an SQL BULK script with very large BLOBs
- Very large BLOBs may cause application failures when being outputted to file
- The larger result set is populated to the main grid the slower the populating is
- Online transaction log files cannot be accessed sometimes on an x86 OS that has more than 4 GB of RAM
- BLOB exporting consumes more memory than it should
- Clustered indexes with variable-length columns are incorrectly outputted for SQL Server 2005 and 2008
- Variable-length column values are incorrectly outputted for SQL Server 2005 and 2008
- SPID values are incorrectly outputted for SQL Server 2008
- SMALLMONEY values are outputted incorrectly
- The application doesn't output all BLOBs found in data sources
- UPDATE operations are sometimes not reconstructed correctly even when there is enough data to do so
- BLOBs whose data type has been changed are outputted incorrectly
- The application fails when it tries to output an invalid XML found in provided data source
- Online transaction log and database files hosted on Windows 2000 cannot be read
- REDO/UNDO scripts are incorrectly generated for tables with IDENTITY columns
- The application fails when trying to read SQL Server 2000 database backups
- Servers with expired evaluation can't be activated
- REDO/UNDO scripts are incorrectly generated for operations affecting new SQL Server 2005 BLOB types (e.g. varbinary(max), varchar(max), etc.)
- Connection failure is received when application attempts to read a non-existing online file
- Non-UNICODE multi-byte characters are exported incorrectly
- Operations in UNDO scripts generated from the main grid are not scripted in reverse order
- Operations in XML/CSV/HTML exports generated from the main grid aren't sorted the same as in the main grid
- Unspecified error is encountered when connection is lost during analysis 
- "The System cannot find the file specified" error is encountered when installing server-side components on SQL Server 2000 for the first time
- System.AccessViolationException error is encountered when selecting Row History tab for an operation on SQL Server 2000 table with BLOB columns
- "Object reference not set to an instance of an object" error is encountered when exporting results from the main grid grouped by a column
- Uninstalling application doesn't uninstall server-side components from the local server they have been installed on during installing
- Date/Time filters sometimes return nothing instead of appropriate data
- Margins are not saved in Preview Grid form
- Maximize icon is missing in Preview Grid form
- Unnecessary comma is outputted when exporting from the main grid in SQL Script format
- CSV exports have no corresponding note in the header when the application is in evaluation mode
- Operation times are outputted without quotation marks (') when exporting from the main grid in SQL Script format
- Summary form shown on analysis completion sometimes reports total number of rows processed incorrectly
- The /append CLI switch doesn't append analysis results to the specified file
- The /verbose switch isn't described in the CLI help output
- "General network error" error is encountered when selecting row in the main grid if connection with server is lost
- "Uncheck All" command is disabled in the main grid's context menu when checking rows from Find form
- Script path isn't shown on Output Options step of Log Filter wizard on attempt when generating UNDO/REDO script right after SQL BULK files
- Selected custom script editor doesn't open if there're spaces in the path to its executable
- The application queries all database tables disregarding the specified table filter in CLI

Changes:

- Server-side components have been split to two independent sets: server-side components for ApexSQL Log and server-side components for ApexSQL Recover. On upgrade, un-used server-side components are deleted.
    * Split ApexSqlServerXprocs2008.dll into ApexSqlLog2008Xprocs.dll and ApexSqlRecover2008Xprocs.dll
    * Split ApexSqlServerHelper2008.exe into ApexSqlLog2008ServerHelper.exe and ApexSqlRecover2008ServerHelper.exe
    * Split ApexSqlServerHelper2008.sys into ApexSqlLog2008ServerHelper.sys and ApexSqlRecover2008ServerHelper.sys
    * Renamed ApexSqlConnectionMonitor2008.exe to ApexSqlLog2008ConnectionMonitor.exe
- Renamed xp_ApexSqlConnectionMonitor2008* extended procedures to xp_ApexSqlLog2008ConnectionMonitor*
- Renamed sp_ApexSqlConnectionMonitor2008* stored procedures to xp_ApexSqlLog2008ConnectionMonitor*
- All server-side logs for the application's server-side components are consolidated into one log file: ApexSqlLog2008.log
- The following error messages have been replaced with more informative equivalents: 
    "Unknown error code: 128 during activation"
    "ApexSqlServerHelper2008 failed: OpenSCManager() failed: Access is denied. (error code = 5)"
    "Copy file for ApexSqlServerXprocs.dll failed: The system cannot find the path specified. (error code = 3)"
    "Cannot access transaction log file"
    "CreateService() failed: The specified service has been marked for deletion"
    "ApexSqlServerHelper2008 failed: log2::lnhf::GetFileDeviceName: Access is denied."
    "System.OutOfMemoryException"
- All application logs, both client and server-side, are now in UNICODE
- Evaluation period for each server has been changed from 30 to 14 days
- New Activation Error form has been added to the application and will automatically be shown when an activation error occurs. This new form is more informative and simplifies the reporting of activation errors

--------------------------------------------------------------------------------------------------
 Release: 	2008.03.0716
 Date:		July 31, 2009
 Description:	Medium feature, medium fix release
--------------------------------------------------------------------------------------------------

Enhancements:

- Column filtering is now available for file outputs in both GUI and CLI
- Application now reports analysis progress in more details
- The following new switches have been added to CLI: 
    /transform_xsl - applies XSL transformation to XML export
    /export_columns - specifies columns to export
    /argfile - specifies argument file (used to reduce the number of switches specified)
    /console_width - sets output console width
    /force - overwrites existing file with same name
    /out_to - redirects console output to specified file
- All CLI switches now have shorter versions/aliases (e.g. /transactions switch now has /tr alias)
- Main grid performance was improved for large amounts of data (50+K operations) by approximately 70%

Fixes: 

- Log Selection Wizard displays the same backup file multiple times if the backup file was used multiple times by the original database for backup 
- Errors in CLI calls, including typo errors, aren't reported 
- After main grid is refreshed, the first mouse click over the grid doesn't select anything 
- Backup selections are not remembered between sessions in the Log Selection Wizard 
- Progress indicator doesn't move for any of text exports 
- Progress bar is not shown for UNDO script generating in the details pane 
- Backup files existence isn't checked prior to analysis  
- Not all operations are shown in the main grid for SQL Server 2008 transaction logs 
- Uninstaller doesn't remove server-side components from server 
- /D switch doesn't work if it's specified after /B switch and vice versa 
- Unicode symbols are shown incorrectly in the Data viewer dialog
- Exception if user generates script to output folder via CLI without write permissions
- Application does not process databases having names with special characters (e.g. "Master's") 
- Installation of server-side components after auto-updating from previous major version fails
- On the initial use, application is opened with non-default options 
- /backup CLI switch can't find backups in current folder 
- Alt + "hot key" doesn't work in Log Filter Wizard 

Changes:

- /login CLI switch renamed to /user
- /include_unchanged_fields CLI switch renamed to /export_unchanged_fields
- /detached CLI switch alias (/d) renamed to /dt

--------------------------------------------------------------------------------------------------
 Release: 	2008.02.0708
 Date:		June 2, 2009
 Description:	Medium feature, medium fix release
--------------------------------------------------------------------------------------------------

Enhancements: 

- Application can now read BLOBs from transaction logs
- Transaction logs contents can now be outputted directly to file from GUI (UNDO and REDO scripts, XML, CSV, SQL and SQL BULK exports)
- New Column filter step in Log Filter Wizard allows user to select which columns to output to grid
- New Summary step added to Log Filter Wizard to show number of retrieved records
- All grids in Log Filter Wizard now have standard context menus
- Undo and Redo Script tabs now have standard context menus
- HyperBac files can now be used as database backup sources
- XML exports now include export start and finish times
- /export_unchanged_fields switch was added to CLI
- Table filtering performance was significantly improved (especially for rarely updated tables); performance improvement can vary  

Fixes: 

- Not all logged operations are shown when reading SQL Server 2008 transaction logs 
- Application incorrectly recognizes local SQL Server cluster, treating it as remote server, causing performance issues
- Application can't connect to local instances of SQL Server 2008 using "(local)" in server field
- Unknown field names appear in REDO DDL scripts under SQL Server 2005
- Patterns don't work on Tables step of Log Filter Wizard
- SQL Server 2000 databases may contain "Schema" instead of "Owner" in application labels
- Sorting and grouping by empty item are allowed in Sort and Group By forms
- Database connection remains open after analysis is finished in GUI
- Table ID may not be shown in operations grid
- Log Filter may not be saved if it was opened for editing
- Old Activation form may show up at application start-up
- Activating application with Alt+Tab may result in error
- Search progress bar and status bar may show different number of operations
- Column data viewer window is not modal
- Database backups may not be shown in Server Explorer
- Double-click on backup transaction log in Server Explorer may result in online transaction log being selected in Log Selection Wizard
- "Local attribute name cannot be empty" error appears when trying to analyze "<default>" db
- Group By area is shown for all analysis windows by default
- Tables cannot be filtered by checked state on Tables step of Log Filter Wizard
- Row Details tab doesn't show user data types
- REDO and UNDO DDL scripts are empty for any database under SQL Server 2008
- Activation form is shown on attempt to uninstall server-side components from non-existing server
- "Check All" button in Find form does nothing
- Operations' check state can't be changed with Space button in operations grid
- Clear All Column Filters command works incorrectly when activated from context menu
- Collapse/Expand items in context menu of Server Explorer are always enabled
- Changing server in Log Selection Wizard changes selected database picklist item from "<Select Database>" to "<default>"
- Application stops working when exiting using File | Exit
- Log analysis can't be cancelled with Cancel button on progress form
- Filtering by UNKNOWN tables works incorrectly
- Horizontal scroll bar is missing in Log Selection Wizard
- Filtering by dropped tables doesn't work when database does not contain tables
- Operation type (INSERT, UPDATE or DELETE) can be changed in operations grid
- Link for Support Forum program group in Help | ApexSQL Online | Online Support menu is incorrect

Changes: 

- Transaction log reading is now done in the natural order of operations and not based on the end-of-transaction time
- Grid toolbar is hidden by default
- Icons were removed from Transactions filter in Log Filter Wizard 

--------------------------------------------------------------------------------------------------
 Release: 	2008.01.0609
 Date:		November 11, 2008
 Description:	Major feature, medium fix release
--------------------------------------------------------------------------------------------------

Enhancements:

- Added support for reading SQL Server 2008 transaction logs (MAJOR ENHANCEMENT)
- Added support for new SQL Server 2008 types (MAJOR ENHANCEMENT):
    DATE, DATETIME2, DATETIMEOFFSET, TIME, HIERARCHYID, GEOMETRY, GEOGRAPHY
- Added database backups as optional source of auditing data (MAJOR ENHANCEMENT)
- Added support for COLLATE and code pages in auditing and recovery (MAJOR ENHANCEMENT)
- Improved scalability when working with very large transaction log files by an order of magnitude (MAJOR ENHANCEMENT)
- Improved general auditing performance by approximately 25%
- Added support for filtering uncommitted transactions
- Added support for in-row values of XML data type
- Added integrity check for server-side components
- Added tabled IDs to CREATE/DROP TABLE statements
- Added new button to main toolbar to change log filter settings
- Added Summary dialog after log is processed
- Improved statistics logging for queries and global memory
- Improved Table ID mapping dialog for easier to use

Fixes:

- Performance problem when reconstructing updates on tables with clustered indexes.
- A problem with transaction log reading.
- A minor problem with application's finalization.
- A minor problem with logging.
- A problem with MONEY and SMALLMONEY formatting.
- Filtering Using Table Row Data.
- There is no hotkeys for 'Executable' and 'Arguments' edits in Options dialog.
- Quotation marks for path to other editor in Log option are added.
- Current Row Panel can be closed but can't be opened again.
- Row grid is cut off.
- Exception raises if try to open Diff window for Update records.
- "NullReference" Exception encountered when re-opening log result rows as a new view
- Existing Filter file path field loses its focus after entering any character
- Log Selection for <default> DB leads to the empty tree node in the Server explorer
- Cannot connect to local SQL Server 2008 server

Changes:

- Separated toolbar items into Grid, File, and Result
- Moved application log and other temporary application files from "Program Files" to user's own directories
- Removed file naming tags from Options dialog
- Moved all items from Exports context menu to Results menu
- Moved all items from Grid menu to Results menu
- Reorganized controls from Tables step of Log Filter Wizard
- Controls for picking time range in Log Filter Wizard moved to Transactions node
- The functionality of the Recovery Wizard of ApexSQL Log has been moved to a new product, ApexSQL Recover.
- SPID fields are edited with a new dialog
- Description filters in Log Filter Wizard are edited in grid
- Removed navigation buttons from main toolbar
- Removed "Save As", "Reset" and "Defaults" buttons from Log Filter Wizard
- "Operations" node in Log Filter Wizard is renamed to "Transactions"
- Controls on "Transactions" page of Log Filter Wizard are rearranged
- "Current operation" panel is moved to Log form and renamed to "Transaction Information".
- "Open Logs" node in Server Explorer is removed