If you want to ensure that an application always runs on the latest version of Symphony middleware available in the cluster, you should not configure a version in the application profile. The absence of a version is interpreted by Symphony as "run on latest version" in which the latest version is assumed to be the same version as the SD. A version of Symphony is considered to be available if it is the only version in the cluster or, in the case of multiple Symphony versions in the cluster, it was at some time activated during a direct upgrade.
When you configure an application to use the latest version, it is assumed that the registered application profile contains enough application configuration to allow it to be used by the latest version of Symphony, i.e., no change is required to the application profile unless you intend to make use of a feature that was introduced in the newer version of Symphony.
When the SD encounters these types of profiles, it will override the version variable in the profile before passing it to the SSM.
It is recommended to use this feature if you want to remove control from the application over which version of Symphony it runs its workload on when the cluster is upgraded.
Here are some examples of when this feature could be used:
You install a newer version of Symphony on a separate cluster and register an older profile and want workload to run on the new version with no change to the profile.
You have done a direct upgrade on your existing version of Symphony and want application workload to run on the new version with no change to the current profile.
You have done a direct upgrade on your existing version of Symphony and want only specific applications that do not specify the profile version to run workload on the new version with no change to the profile. All other applications will continue to run on the version specified by their respective application profiles.