When the ROOT folder has been removed from the \webapps folder, the .war file will be re-deployed, re-creating the ROOT folder.
The .war file is created during the initial installation which means the ROOT folder will mirror settings (and version) based on initial install. It will also store any custom images/CSS/other files placed in the ROOT folder
You can manually delete the ROOT folder, though this may also occur due to following scenario:
Upgrading to Java July 2021 or later from an older release on Linux/MacOS distributions will delete the ROOT folder on Startup.
If you are facing an issue due to the issue you will need to do the following to stop the ROOT folder from being removed on startup post java upgrade.
Solution
Modify the root.xml (\appserver\conf\catalina\localhost) and remove the docbase attribute .
Please ensure you have a backup of this file prior to changing.
Before change:
<?xml version="1.0" encoding="UTF-8"?>
<Context docBase="C:\Yellowfin Installs\Yellowfin96/yellowfin.war" path=""
privileged="false" reloadable="false" swallowOutput="false" useNaming="true" xmlValidation="false" xmlNamespaceAware="false" xmlBlockExternal="false">
<Manager className="org.apache.catalina.session.PersistentManager" distributable="false" saveOnRestart="false">
<Store className="org.apache.catalina.session.FileStore" />
</Manager>
</Context>
Post change:
<?xml version="1.0" encoding="UTF-8"?>
<Context path=""
privileged="false" reloadable="false" swallowOutput="false" useNaming="true" xmlValidation="false" xmlNamespaceAware="false" xmlBlockExternal="false">
<Manager className="org.apache.catalina.session.PersistentManager" distributable="false" saveOnRestart="false">
<Store className="org.apache.catalina.session.FileStore" />
</Manager>
</Context>
What can I do to get my ROOT folder back?
1. The .war will unpack on startup, reverting to the YF code that was created on initial install
2. If you have backed up the ROOT folder as part of a system backup, please place this back into the \webapps folder after applying fix above.
Note: Yellowfin will backup the ROOT folder as part of any YF upgrade and store it under \<Yellowfin directory\Backup
3. Re-run the last YF upgrade to ensure that your code based (ROOT folder) is then back in sync with your DB version.
If you have any questions or further issues on this, please reach out to the YF Support Team for further assistance.