Health Check Error: Bad vardefs - link
Overview
The Health Check wizard must be run when upgrading in order to evaluate your instance's ability to move to the target version. During the health check, various types of issues may be detected which can affect your ability to upgrade. This article will cover the "Bad vardefs - link" error reported by the health check.
Symptoms
This error generates an output similar to the following in health check:
This error may accompany the "Bad vardefs - relate field" error in the health check. For more information regarding the "Bad vardefs - relate field" error, please refer to the article Health Check Error: Bad vardefs - relate field.
Resolution
In this example, the vardef link identified in the health check error is referenced in the following files:
./custom/Extension/modules/relationships/relationships/tasks_leadsMetaData.php
./custom/Extension/modules/Tasks/Ext/Vardefs/customcontacts_tasks.php
./custom/Extension/modules/Tasks/Ext/Vardefs/customleads_tasks.php
./custom/Extension/modules/Tasks/Ext/Vardefs/customopportunities_tasks.php
./custom/modules/Tasks/Ext/Vardefs/vardefs.ext.php
./custom/working/modules/Tasks/relationships.php
./custom/Extension/modules/relationships/vardefs/Tasks.php
Upgrading will delete the ./custom/Extension/modules/relationships/relationships/tasks_leadsMetaData.php
file.
Upgrading will remove references to the relationship in the following file(s):
./custom/Extension/modules/Tasks/Ext/Vardefs/customcontacts_tasks.php
./custom/Extension/modules/Tasks/Ext/Vardefs/customleads_tasks.php
./custom/Extension/modules/Tasks/Ext/Vardefs/customopportunities_tasks.php
./custom/modules/Tasks/Ext/Vardefs/vardefs.ext.php
Upgrading will preserve references to the relationship in the following file(s):
./custom/working/modules/Tasks/relationships.php
./custom/Extension/modules/relationships/vardefs/Tasks.php
This health check result is caused by a partially defined relationship in the file system. In many cases, these partially defined relationships are not visible in the user interface of the instance, and users will not be affected by the removal of these files. However, it is also possible that the relationship is only partially defined because portions of it were in use while other parts were intentionally removed. In this case, the removal of these files may cause functionality to be lost upon upgrade. If this occurs, please create a custom relationship after upgrade to restore the relationship functionality.