Upgrading to a New Version



Preparations


Review the applicable release notes using one or more of the links above.

If you are using IIS to host the VC/m browser interface and you have configured Content Expiration there to improve performance by making the web server tell the users' Internet Explorer browsers to cache static files locally for a speciified minimum period (e.g. 1 day), disable this configuration far enough in advance of installing the VC/m upgrade so as to ensure that users' browsers will always fetch static files fresh from the web server. Once the upgrade has completed you can reinstate the original setting if desired. If you do not take these steps your users must clear their IE temporary file cache before starting to use VC/m again after the upgrade. Otherwise they may encounter mismatches between client-side and server-side code.

Installing the Upgrade


  1. Advise users to stop using VC/m.
  2. Make sure you have a recent backup of your VC/m software and repository. This consists of:
    • The database where your ^%vc* globals are located.
    • Your %vc* routines (for Caché and Ensemble systems these are generally in the same database; for GT.M they are held in individual .m files).
    • Your current VC/m software kit, located in the directory pointed to by the global node ^%vcvc("programFiles").
    • The directory published by the web server that hosts your VC/m browser interface (may be the same directory as above, or may be located on a different server).
    • The database(s) storing your code repository or repositories. Sites typically have only one, and it is commonly the same database as contains the ^%vc* globals (and on Caché etc. the %vc* routines). Look under Setup\Physical Addresses for any rows that provide L-format storage.
  3. Use these instructions to update the ^%vcvc("programFiles") directory.
  4. Use these instructions to update the %vc* routines. Make sure you opt to overwrite existing routines and recompile them.
  5. Use these instructions to apply the upgrade to the database.
  6. If you use a separate web server to host the VC/m browser interface, copy the files from the ^%vcvc("programFiles") subtree onto the web server, updating the existing files. If the web server is on a different operating system from the VC/m server make sure that the file transfer mechanism you use will perform text file line-ending conversions (e.g. from LF to CRLF).
  7. If you use Beyond Compare, stop the Beyond Compare server by running D Stop^%vc830, then restart it by running D StartUp^%vc830.
  8. If you use the VC/m task server on ECP-connected nodes, perform the following sub-steps:
    • Export the %vc* routines from your central VC/m node
    • On each task server node in turn:
      • Locate the task server process, e.g. by running D THIS^%SS in its home namespace, typically called VCM-LOCAL
      • Signal the process to stop by running D fast0^%vczn
      • Re-check the process list until the task server has disappeared
      • Import the new set of %vc* routines, making sure you overwrite existing ones and recompile them.
      • If your task server node is hosted on a different operating system than your main VC/m node (e.g. Linux vs. Windows), D Drivers^%vcins
      • Restart the task server by running D fast1^%vczn
  9. If you are using Caché or Ensemble and any of the namespaces where you have integrated VC/m with Studio and Portal are on nodes other than the node hosting the central VC/m database, perform these sub-steps:
    • Make sure the nodes' local copies of %vc* routines have been updated (only necessary as a separate step on nodes that do not use task server, because task server nodes will have had their %vc* routines updated above).
    • Verify whether the nodes see the same VC/m files as were updated above. This is likely to be the case if ^%vcvc("programFiles") in the node's VCM-LOCAL namespace points to the same network-shared filesystem location as it does when viewed from the VCM namespace on the central VC/m node. If the connected nodes see a local copy of the VC/m files you must update this local copy with the set from the new release before proceeding to the next step.
    • Then D Cache5^%vcins() and default the prompt (Y).

VC/m is now upgraded and ready for use. Depending on your exact web server and Internet Explorer browser configurations it may be necessary for users to clear their IE temporary file cache before using the VC/m interface for the first time.