Turn off Multicast Name Resolution (LLMNR) to speed up Dentrix Treatment Planner

The Dentrix G6 installation went relatively smoothly for the Belmont office of Forever Dental. After a few days, support came in and installed eCentral so we can file electronic claims. That’s when the problems started. Specific Dentrix modules (notably, Treatment Planner and Chart) were running extremely slowly. Treatment Planner would take upwards of five minutes to open a patient chart. This made no sense: it’s a small (but growing!) second practice, and there is no reason Treatment Planner should require so much time.

Our setup is relatively simple:

  • Windows 7 running G6 Server
  • 5 Windows 7 workstations running G6 Clinical or G6 Frontoffice workstation
  • All 6 machines connected to a router and obtaining IP addresses with DHCP. Nothing fancy like static IPs, hosts files, etc.
  • LogMeIn Hamachi set up on all machines, so that we can Remote Desktop into those machines

After 2.5 hours with Dentrix, they stumbled upon a solution: disable link-local multicast name resolution (LLMNR). My theory is that Hamachi adds so many subnets as the network grows, and unless you have static IP addresses mapped to names in the hosts file, LLMNR requires each request to a name to timeout before finally identifying the proper name-to-IP-address mapping.

Yes, it worked, but even as I wrote the above, it felt wrong. So if someone out there knows what is really going on, please leave a comment!

Upgrading from Dentrix 11 to Dentrix G4

Ah, the fun never stops with Dentrix.
As a part of the massive buildout of Complete Care Dental, we decided to upgrade from our aging Dentrix 11 to Dentrix G4 in order to better facilitate more than doubling the number of workstations that access the server.

A beautiful Saturday afternoon rolls around (one we’ve committed indoors to this upgrade).  We met the system requirements, walked through the Ten Installation Tips, and are ready to go.  We put the DVD in, cross our fingers, and press “Install Now”.

After clicking ‘Next’ a few times, we are greeted with this.

It reads “Database Conflict. The version of the database does not match the version of the DENTRIX program files”.

Since we had scheduled this upgrade on a Saturday afternoon, Dentrix Support was closed.

We were likely the first callers when Dentrix Support opened Monday morning.  After walking through the situation, our tech support rep told us that the issue is due to a couple of missing *.idx or *.dat files in the Dentrix/data directory.  We walked through every file that was supposed to be there (approximately 30), and, behold, it turns out that 3 were missing (LCM_Log.dat, LCM_Case.dat, LCM_Def.dat).  We would have to use Dentrix 11’s Selective Setup to install _only_ those three files.  The good news was that these files related to Lab Case Manager, which was never used in the practice.  The bad news was that this might destroy the entire database.  After completing the Selective Setup, we were to run Rebuild to rebuild the entire database, the continue with the upgrade.

We started the entire process again at 6PM, after the last patients left and after we backed up the system.  Selective Setup completed, Rebuild completed, and the data appeared sound.  We then ran G4 installation, and after a tense 20 minutes, it completed successfully.

Or so we thought.  Immediately after completion, I launched Appointment Book on the server.  Crash.  I launched Office Manager.  Success.  I clicked on Appointment Book from Office Manager.  Crash.  I wish I took a screenshot of that error that we got, because it was a scary looking one.

At this point the time read 6:58PM (Central time).  Dentrix Support closes at 7PM.  We called them immediately and thankfully they were open.  We spoke to another tech, and learned that Windows Server 2008 R2 does not by default install .NET Framework 3.5.1, and we had to do this manually.

I ran Server Manager and clicked on Features, then Add Feature.

 I clicked on the + next to .NET Framework 3.5.1 and clicked the checkbox next to .NET Framework 3.5.1.  I specifically did NOT check WCF Activation (as indicated by the Dentrix Support tech).


I clicked Next and finished up the installation.
After completing this, Appointment Book opened successfully.

UPDATE:
Several days after the upgrade, everything seems to be running smoothly.

Backing up Dentrix Image 4.5’s database

This is a followup to the earlier post, Migrating Dentrix Image 4.5’s database to another computer. Please see that post to understand how I got here in the first place.

Now that we have successfully migrated, we want to begin the process of performing nightly backups of this data. As expected, Dentrix does not provide consistent, reliable documentation of how to do this, particularly for older platforms such as this. My goal here is to illustrate what I have done and solicit comments from others out there to understand their approach.
First, our setup.
  • Main Dentrix 11 and all DXImage files are running on Windows 2008 Server
  • DXImage database is running on Windows XP
  • We have a 2-disk RAID NAS in our network
  • We also subscribe to an offsite backup service, CrashPlan
We currently back up Dentrix Image’s database in two ways.
  1. With Dentrix’s internal backup. If you dig deep on the server where your image database is housed, you will see a folder called ViperDataBackup. In our case, this is in \Dentrix\DXImage\MSDE\MSSQL$VIPER\Backup\ViperData . This folder grows with two new files each day:
    ViperData_db_[date].BAK
    ViperData_tlog_[date].TRN
    These files seem to represent nightly backups. We use Cobian Backup on the server to copy all files from this directory to the NAS each night. The main issue, as illustrated below, is that I have no idea how to restore from these files currently.
  2. With our own scripts. DXImage database is running on Microsoft SQL Server Embedded, in a database called VIPER. We created a script that essentially backs up the VIPER database each night to a file, then copies that file to the NAS. The two main lines of this script are:
    osql -S SERVER2\VIPER -E -i SqlFullBackup.sql
    copy /Y /Z /V *.* X:\backup\
    where SqlFullBackup.sql is as follows:
    BACKUP LOG MASTER WITH TRUNCATE_ONLY
    BACKUP LOG MODEL WITH TRUNCATE_ONLY
    BACKUP LOG MSDB WITH TRUNCATE_ONLY
    BACKUP LOG VIPER WITH TRUNCATE_ONLY
    BACKUP DATABASE MASTER TO DISK =’C:\backup\MASTER-nightly-backup.bak’
    BACKUP DATABASE MODEL TO DISK =’C:\backup\MODEL-nightly-backup.bak’
    BACKUP DATABASE MSDB TO DISK =’C:\backup\MSDB-nightly-backup.bak’
    BACKUP DATABASE VIPER TO DISK =’C:\backup\VIPER-nightly-backup.bak’
    We then backup the entire contents of this c:\backup directory to the NAS.
We have not had the opportunity to test the restore procedure for this backup method. However, I feel fairly confident that, by backing up in two methods, we will be covered should disaster strike our poor little DXImage database. I particularly trust the second method, as it does not rely on having to contact Dentrix Image Support at all.