What is the best method to do an Upgrade and why?

Hi there,

We’re doing an upgrade to one of our major client here. So, just thought of knowing what you guies think about upgrade.

I voted a though i dont think that you could swear by it on too many occasions. You’ll most likely have to make some decisions and changes to get the upgrade complete…


I also voted the first option, which applies to most of the cases. I agree with Nikolas that there is nothing to swear by in the Migration Tool Kit, but it’s better than nothing. In a few cases the third option might apply, expecially when migrating from a very early version, heavily customized, to the latest, but the customer might decide that, since he has to pay for doing everything from scratchs, it might make sense to choose a wholly different software. So be careful.

Second and fourth options don’t make any sense to me, sorry. [:)]

  1. most of the time, this is the best way.

  2. This is the best way to destroy the data in the database. (a File=>Database=>Delete is even better,especially if you don’t have a backup!)

  3. If the change in version is too big or the customization is too complicated or badly programmed. This is the best way.

  4. If all is working for years without any problem, you don’t need any new functionality, performance is ok, this could be the best way. If it ain’t broken,don’t fix it!

BTW : I voted 1.

  1. This is the best choice for a generic answer.

  2. This may be a valid option in some situations. Such as a client that is coming from an older version, or a client whose business has undergone changes since the original implementation. The business model (and processes) around which the original implementation was based may no longer be valid.

My pick is (1).
I have suggested a reimplementation on extreme cases where it was badly designed and far too complicated to bring back closer to standard NAV.


Thanks to all of you for your valuable thoughts.

Even we’re following Method 1 i.e. the Upgrade Toolkit method to do the upgrade. Inspite of having a very powerful workstation on which we’re performing the upgrade, the performance of the process is very very poor.

For every major step in the upgrade toolkit like Testing the database, Transfer data, Replace objects etc it takes day/days together to complete the step. So I just wanted to know from you guies whether the method I’m following is appropriate or not.

Yes, performance is a problem if you’re upgrading large and old databases. However, IMHO, you should always use option 1 or 3.

Anything else you will not be able to get support from Microsoft and the people on NAV forums will question your modification more than solving your problem.

Just adding to the post above.

Option 2 never works… And option 4 is pretty good until something goes wrong…

You can increase performance removing all the indexes/SIFT that are not used, do the upgrade and then restore them.

H Krikii…

After a series of discussions over the performance of the upgrade, we made a few changes in our upgrade.

a) Instead of one 530 GB partition which included three physical disks, we implemented RAID 10 with three separate partitions.

b) We disabled the SIFT Levels and Keys before carrying out the steps.

c) Modified the Update Window functions to reduce the Update frequency of the progress bar.

d) Enabled the Item Ledger Entry No., Expected Cost Key to improve the performance of UpdateValueEntry trigger in the Temp Item Ledger Entry Codeunit (104048).

Any other suggestions are duly welcome.

vote for option 1

IF you have multiple companies, use mutiple servers so each server does 1 or multiple companies. (E.g. If 1 company takes 300GB, you can put that on one server and the other companies on another.

You might take some risk if you have a good backup: instead of using RAID10, use RAID0. You have even more disks and RAID0 is faster then RAID10. You just have to hope that during the upgrade no disk dies.