Release Notes

v 1.14.7159.31284 Aug 08 2019

Module Description
Check Updated definitions and added several new ones.
General Support for database names with special characters.
Script Improved database connection management

v 1.14.7143.19426 Jul 23 2019

Module Description
Optimize Errors running individual checks won't cause the entire analysis to fail (although errors such as failure to connect will still cause it to abort).
General Improved the handling of timeouts.
Optimize Suggest converting unique indexes to clustered if no primary key or identity columns are found.
Optimize Resolved a bug where included columns could be scripted for clustered indexes.
Optimize Resolved a bug where suggested indexes are considered when checking for duplicate indexes.
Optimize Check for orphaned distributed transactions and provide KILL SQL.
Optimize Suggest converting identity columns found on heaps to be clustered primary keys.
Optimize A summary of the analysis results is displayed before the results themselves. Users wanting to ignore the summary can turn this off via the Optimize page on the Settings dialog.

v 1.14.7114.19663 Jun 24 2019

Module Description
Optimize Removed the clustered / non-clustered usage comparison check.
Optimize Fixed a bug with duplicate columns names when comparing indexes.
Optimize Performance improvements.
Optimize Removed 'Ease of Use' checks from the default options.
Optimize Halved the number of threads used when running a check.
Optimize Index naming convention issues are now flagged as Low Priority rather than Best Practice.
Optimize Resolved a bug when decimal \ numeric is used as an identity column.

v 1.14.7061.23535 May 2019

Module Description
Optimize Resolved an issue with checking TF 1117 & 1118.

v 1.14.7061.20468 May 2019

Module Description
Optimize Resolved an issue with divide by zero.

v 1.14.7055.25997 Apr 2019

Module Description
General Internet proxy support for license management.
Compare The System Information comparison now compares Linux OS info.
Optimize Advise functionality has been renamed to Optimize.
Check Health Check functionality has been separated out into it's own tab.
Optimize A bug in the checking of SQL Error Logs has been fixed.
Optimize If failed login attempts are found, far more useful information it output about the failed attempts.
Optimize Supporting articles have been added for all checks that were previously missing them.
Optimize New check to see if DBCC CHECKDB has been run recently.
Optimize New check on database recovery model.
Optimize New check for identity columns reaching their maximum.
Optimize New check for empty file groups.
Optimize New check to detect disabled check constraints.
Optimize New check to detect disabled foreign key constraints.
Optimize New check to detect if the Query Store isn't enabled, has failed or is close to failing.
Optimize New check to detect if transaction log hasn't been backed up (if in FULL recovery model).
Optimize New check to detect if 'sa' user hasn't been renamed.
Optimize Updated UI for choosing the checks to run, with clearer top-level categorisation (performance, security, stability, data integrity and ease of use).
Optimize New settings pages for controlling what checks are run and for customising parameters for various checks (e.g. how recent a transaction log backup should have been).
Optimize New check to detect data and log files on the same volume.
General Server tag tree widths are now consistent throughout the application.
Check Health Checks now handle errors due to Availability Groups better, no longer showing them as outright errors.
Optimize The internet-based content panel on the bottom right of the results page will not be displayed if no internet connection is detected.
General The server search field has been moved to a consistent location (above the tag tree) and will support regular expressions for more powerful searching.
General The application will display a "What's Changed" button on the main title bar after an update, giving quick access to the recent change list.
Optimize When choosing to ignore a finding, it's now possible to permanently ignore that finding on that server, so it won't come up again (although it can be found again by turning on the filter option to display ignored findings).
Optimize Trial length now extended to 14 days.

v 1.13.6992.30226 Feb 2019

Module Description
Compare Compare results now default to grid view, rather than the summary graphs.
General Registration prompt removed from application.

v 1.13.6988.34256 Feb 2019

Module Description
Script Executing scripts with lots of batches (i.e. GO statements) is now much faster (25 times faster in some cases).
Script If a SQL connection is lost or closed while a query is executing, the UI correctly detects this and displays it.
Script Progress area below results area now shows count of batches and which batch is currently executing.
Script The results area will update as results are returned, so it's clear that long-running queries are progressing.
Script The messages tab will always be selected if any errors occurred.
Script SQL validation (Ctrl+F5) is much improved and will detect more errors.

v 1.13.6961.39706 Jan 2019

Module Description
Advise Bug fix where instance properties were not captured if a certain combination of options was selected.

v 1.13.6927.21366 Dec 2018

Module Description
General A small painting bug on the main Ribbon has been fixed.
Advise A bug that stopped queries running in Advise, if a query was stopped and quickly restarted, has been fixed.
Compare Compare will no longer flag errors due to non-readable AG nodes as differences.

v 1.13.6922.30844 Dec 2018

Module Description
Compare Added right-click 'Take Snapshot' option to servers table on Compare view.
Compare The UI for loading comparison snapshots has been re-written so it's much clearer what you can do with them.
Advise A bug in Advise that meant database file sizes weren't always checked has been fixed.
Advise TempDB is now shown as a separate node in the Advise results view, under the instance node, so all Temp DB issues can easily be seen together.
Advise Quote characters can be escaped in Health Check scripts by using a backslash character.

v 1.12.6900.20402 Nov 2018

Module Description
Advise Resolved an issue with an incorrect script for addressing low free space.
Advise Fixed a bug with sizing small databases.
Estate Tag tree on Estate view now has check boxes for bulk-selecting servers by tag.
Advise Primary keys are never highlighted as unused indexes.
Advise Added PageCount to index information dialog.
General Fixed bug with About dialog failing to load.
Script Bug fix when refreshing the list of database names in Script.
Script The Compare tab now has a new 'Snapshot' button to allow immediately capturing a snapshot to file for later viewing.

v 1.12.6863.24060 Oct 2018

Module Description
Script Fixed a bug where the Run button didn't work.

v 1.12.6862.30751 Oct 2018

Module Description
Advise Fixed a bug where Advise results didn't resize or appear correctly.
Advise Fixed a bug with incorrectly displayed tempdb file counts.
General The settings dialog has been updated to clearly indicate which settings relate to the application and which relate to the profile.
Estate Updated health checks to support SQL Server 2019.
Estate New health checks for suspect pages, auto_close, unsent mail, DBCC checks, QueryStore, untrusted FKs / Constraints 8 AG delays.
Estate Updated connection test dialog to indicate progress and allow restarting the tests.
General Added F5 support throughout the application, so F5 will start an Advise analysis, start a Compare check etc.
Estate Added a Launch menu to the Estate view, with options to launch Remote Desktop and SSMS for the highlighted server.
Advise A bug handling URL clicks in Advise results has been fixed, so the linked page will now be opened in the default browser.
General Browser proxy settings are used when checking for app updates etc.
General Product update dialog, shown when a new update is available, shows changes in all versions between the current version and the new one, so if multiple versions behind, all missed changes are shown.
General Estate view shows an Aireforge logo watermark in bottom right.
Estate Update of health check definitions.

v 1.12 Oct 2018

Module Description
General Added support for SQL Server 2019.
Advise Check index names against pre-defined and custom naming conventions.
Advise Advise "unused index" warnings now include information about when the table was created, or the server was last restarted (whichever is more recent).

v 1.11 Aug 2018

Module Description
Advise Improvements to Advise UI.
Estate Display SQL build number, edition and OS name in Estate overview.
Advise Improved non-clustered index check. Suggest converting a non-clustered primary key before an identity column.
Advise Index property dialog now shows seeks, scans, lookup and fragmentation information.
Advise Check virtual log file (VLF) count.
Advise Check for suspected bad pages.
Advise Flag unused tables (no rows or reads since the instance was started).
Advise Ignore unused indexes or missing clustered indexes on empty tables.
Advise Bug fix: When checking auto update / create statistics settings.
General Bug fix: Application freezes when sending mail in offline mode.
Advise Bug fix: Ignore hypothetical indexes when checking for duplicates.
Advise Improvements to indexes being used more than clustered indexes.
General Updated application & CLI icons to dog icon.

v 1.10 Apr 2018

Module Description
Compare Resolved an issue with comparing SQL Agent Jobs.
Script Fixed a bug connection couldn't be established responding with a success.
Advise Improved the profiler check. Now shows the login, host and a script to kill the connection.
Advise Support for filtered indexes.
Advise Fixed a bug when checking for disabled indexes.
Compare Improved user and login checks, reducing noise for all systems and only comparing user sid if the instance is in an availability group cluster.
Advise Fix a bug with failed logins check.
General Suport for FIPS enabled systems.
Advise Updated suggested maximum memory.
Advise Bug with the Advise SQL version check has been fixed.
General Updated "in progress" UI.
Advise Several performance improvements and big fixes.
General Support for snapshot databases.
Script Performance improvements.
Advise Tuned the suggested memory for smaller systems.
Estate New Feature: Estate Health Checks (Custom and predefined).
Advise New UI for the Advise results, showing a lot more information and providing new ways to sort and filter the results.
Advise Significant performance improvements for Advise.
Compare Bug fixed where system default comparisons don't get automatically deleted.
Advise Max memory for editions is now based on buffer pool + in-memory + columnstore for supported versions.
Advise SQL suggested by the Advise module now has a button to copy the script directly into the Script module.
Estate Improved connection test now works from the ticked servers on the Estate view, rather than the highlighted ones.
Advise New check: I/O bottlenecks detected.
Advise New check: Database File Initialization Disabled.
Advise New option to ignore a specific update (not available in community edition).
Advise Check that use Backup Checksum Check as Default is enabled.
Advise Check that use Backup Compression as Default is enabled.
Advise Check that Optimize for Ad-hoc Workload is enabled.
Advise Check that remote Dedicated Admin Connections are allowed.
Advise Check that Index create memory is set to default (self-configuring).
Advise Check for instance fill factors that are not default (not 0).
Advise Fixed a bug when comparing space of data files in filegroups.
Advise Taken out painting of split pane dividers while resizing.

v 1.1 Aug 2017

Module Description
General Improvements to almost every screen and dialog.
Advise Added partial support for column store indexes.
Advise Ignore fragmented indexes now based on pages rather than rows. Defaults to Microsoft recommended value of 1,000 pages.
Advise Warn if database owner does not exist & suggest fix.
Advise Added suggested fix SQL when (auto close enabled, auto shrink enabled, auto create/update statistics disabled, page verify not CHECKSUM).
Advise Warn if auto update statistics is disabled.
Advise Warn if data files are larger than 10GB and have more than 90% unused.
Advise Changed cost threshold for parallelism check to alert if < 15 but still suggest 30.
Advise Changed the suggested size for new tempdb files to total space / existing files * number of suggested files.
Advise Added fix SQL for old compatibility modes and disclaimer about breaking changes.
General Professional Edition is now unlimited for Compare and Script.
General Improved error handling surrounding the licencing.
Script Fixed bug when displaying varbinary.
Script Script is now Free (limited to 200 servers but contact us if you need more).
Compare Compare is now Free (limited to 200 servers but contact us if you need more).
Advise Fixed a bug with indexes in filegroups other than primary.
Advise Improvements to auto growth check.
Compare Updated comparisons definition.
Advise Fixed an issue with memory optimized filegroups.
CLI Security fix for the CLI module
Advise Fixed a bug when checking backup histories.
Script Fixed a bug when running batch queries in Script.
General Fixed a bug when discovering SQL Server 2017 servers.
General Now installs to program files rather than program files (x86).
Advise Improvements and bug fix for database file auto growth suggestions.
Advise Database auto growth flags if less than 5% percent growth or MB but still recommend 10%.
Script Script module introduced. This new tab allows running SQL against multiple servers at once, with various options on how the results are combined (or not).
General User interface rewritten to allow themes to be applied. Current theme can be selected via the User Interface page in the Settings dialog.
Advise Advise results now have an Explain link next to them, taking you to a page in the Aireforge knowledge-base, giving more details on the warning.
Advise Resolved a bug with auto growth checks for database files < 256MB.

v 1.0 Mar 2017

Module Description
Advise Intermittent painting issue resolved on the results screen.
Advise Advise now checks for low physical memory availability.
Compare Removed size from database files, leaving size_mb.
Advise Resolved an issue with getting physical index stats on 2008 & R2.
Advise Improvements to resolve painting issues and improve the performance.
Advise Advise checks for old backup information that should be cleared down.
General Resolved non-HTTPS font issue with changelog page.
General It's now possible to quickly add servers to the Estate from a free-text list of addresses, using the new Import -> Text option.
General External changes to profiles and comparisons are now detected, and the user is given the opportunity to load the changed files.
Advise Advise now checks for sys.configuration records where the value_in_use differs from the value.
Tune Renamed Tune to Advise.
Tune Resolved a performance issue with Tune whilst obtaining index fragmentation information.
Tune Fixed a bug where filestream files were counted as log files.
Tune We no longer check growth settings for filestream data files.
Tune Fixed a database check for 2012 and before.
Tune Fixed a bug with DROP USER scripts.
Tune Fixed a bug with incorrect MAXDOP recommendations.
Tune Ability to analyze instances.
Tune Ability to analyze databases.
General Automatic version checking now delayed slightly after app start up, so it won't happen before the first form is shown.
General When adding a SQL Server instance on the local host, it will automatically test all connection protocols.
General Changed all web links to HTTPS.
Tune In-memory tables now ignored completely (until we decide how to handle them correctly).
General Server tags can now be coloured (e.g. red for Production, green for Test, etc.).
General The Delete button on the login dialog will now correctly delete the selected profile.
Compare Added support for SQL Server 2017.
General Fixed a website problem with the host comparison updates.
Tune The View SQL dialog now has a Copy to clipboard button to copy the entire script.
Tune The Tune UI has been redesigned to present new instance and database tuning options, which check things like memory settings and data files.
Tune A bug where Tune recommended making an index unique when it shouldn't have, has been fixed.
General The License Key will no longer be shown on the Licensing dialog.
General Error handling around blank temporary files.

v 0.9 Jan 2016

Module Description
Tune The first functionality in the Tune module is now available! You can use it to analyze table schema and indexes!
Tune Index tune will no longer suggest using a disabled index over an existing non-disabled one.
Tune Index tune will suggest dropping disabled indexes.
Tune Index tune will suggest dropping and recreating indexes with additional included columns, to make other indexes redundant.
Tune Schema tune will no longer suggest renaming bit columns.
Tune There's a new Custom button on the Tune tab, allowing more control over the tune analysis.
Tune Tune analysis will now scale the number of threads used according to the number of cores on the PC, rather than using a fixed number of threads.
Estate Drag and drop in the tag configuration dialog works again.
Estate New profiles will automatically have four tags created by default, so new users have something to start from.
Estate The Delete key will delete the selected servers (with a confirmation question first).
Estate A new "Add Server..." option is now available on the right-click of the tag tree.
Estate When adding an Azure SQL database, the network protocol option now disables named pipes and shared memory as TCP/IP is the only option.
Estate When adding a new server, it's now possible to set the time-out and SSL encryption settings.
Estate When adding a new server and specifying an overriding connection string, the connection string is validated when the OK is pressed.
Estate When adding a new server, it's possible to set a colour against it. This colour is then shown everywhere that server is.
Estate A display bug, where renaming a tag didn't update the tags column in the Estate view, has been fixed.
Compare Selecting a comparison category from the results summary will now correctly update the category filter combo box.
Compare Bugs in both hiding comparison results and suppressing comparison warnings are fixed.
Compare Comparisons will now scale the number of threads used according to the number of cores on the PC, rather than using a fixed number of threads.
Compare A new "Repeat" button on the comparison results tab allows re-running the comparison again with all the same details.
Compare If a comparison fails, two new buttons are shown to allow retrying the comparison or running again but with just the servers that were successful.
Compare Comparison tabs are added in order now, so Comparison 2 is to the right of Comparison 1 etc.
Compare The button to load a past snapshot now has a drop down, listing recently saved snapshots.
Compare Comparison file updates are now downloaded from the Aireforge web server, so comparison updates no longer require product releases.
Compare Custom comparisons can be configured to ensure a value is in or outside of a specific range.
Compare Custom comparisons can be configured to ensure a value is equal or near another value in the same result set (e.g. to ensure a configuration value_in_use is the same as the value).
Compare New right-click menu on comparisons table on the Compare tab, allowing easy editing and creation of comparisons.
Compare When editing a comparison, a new "Test" button allows direct running of the query against a server and uses the result set to populate the columns table.
Compare A bug that prevented the mouse wheel working on the comparison results combo box filter is fixed.
General Buttons for connecting to Aireforge Server have been removed.
General Buttons for Twitter and LinkedIn have been added to the Help tab.
General Log file naming has been changed to include the date and time in the file name itself.
General The login window has a checkbox to make it automatically log in with the same profile each time.
General New checkbox on the Settings dialog to disable automatic version checking, for use in environments without internet access.
General Application updates are downloaded in the application itself, prompting for a restart when complete.
General A bug that caused an exception when closing the app has been fixed.