In case of errors or other problems when installing and running LabKey Server, first review installation basics and options linked on the Install LabKey
Running a server in "devmode" provides enhanced logging, enables the MiniProfiler
, and provides resource reloading without the need to restart or rebuild the server. To run the server in devmode (using Tomcat 7):
- Open a command prompt.
- Go to the %CATALINA_HOME%\bin directory, for example:
C:\Program Files (x86)\LabKey Server\apache-tomcat-7.0.xx\bin
- Execute the tomcat7w.exe program:
- The command will open a program window. Click the Java tab.
- In the Java Option box, scroll to the bottom of the properties. Add the following property at the bottom of the list:
- Close the program window and restart the server.
- To confirm that the server is running in devmode:
- Go to (Admin) > Site > Admin Console.
- Click Admin Console Links.
- Under Diagnostics, click System Properties.
- Locate the devmode property, and confirm that its value is 'true'.
Which Version of LabKey Server Is Running?
- Find your version number at (Admin) > Site > Admin Console.
- Click Module Information.
- Click the (Expand) icon for the Core module. The Version is the version number for your installation of LabKey Server.
Before installing LabKey Server, you should shut down all other running applications. If you have problems during the installation, try additionally shutting down any virus scanning application, internet security applications, or other applications that run in the background.
Compatible Component Versions
Confirm that you are using the supported versions of the required components, as detailed in the Supported Technologies Roadmap
. It is possible to have multiple versions of some software, like Java, installed at the same time. Check that other applications, such as Tomcat, are configured to use the correct versions.
You can only install one instance of PostgreSQL on your computer at a time.
- If you already have PostgreSQL installed for another purpose, LabKey can use your installed instance; however, you will need to install LabKey manually.
- The Windows Graphical Installer will attempt to install a new instance of PostgreSQL for you.
- If you have previously installed PostgreSQL (whether as part of prior LabKey server installation or not), first manually uninstall the program. You may also need to manually delete the PostgreSQL data directory.
- You may also need to remove references to Cygwin from your Windows system path before installing LabKey, due to conflicts with the PostgreSQL installer. The PostgreSQL installer also conflicts with some antivirus or firewall software programs. (see http://wiki.postgresql.org/wiki/Running_%26_Installing_PostgreSQL_On_Native_Windows for more information).
- If you are upgrading an existing LabKey server installation using the Windows Graphical Installer, have tried the above and still have problems installing PostgreSQL, you may need to manually stop a running LabKey_pgsql-## service.
Non-English Versions of Windows
If you are running a non-English version of Windows, please use the manual install process
, not the Windows Graphical Installer.
Tomcat Failure to Start
If installation fails to start tomcat (such as with an error like "The specified service already exists."), you may need to manually stop or delete a failing Tomcat service.
To stop the service on Windows, open Control Panel > Administrative Tools > Services
. Select the relevant service, such as LabKey Server Apache Tomcat 7.0
and click Stop
To delete, from the command line (may need to run as administrator):
Java 8 Upgrade Note
When you upgrade to Java 8, be sure to remove the setting of MaxPermSize. If your CATALINA_OPTS or other configuration files include something like "-XX:MaxPermSize=256M" you may have errors when starting your server.
Connection Pool Size
If your server becomes unresponsive, it could be due to the depletion of available connections to the database. Watch for a Connection Pool Size
of 8, which is the Tomcat connection pool default size and insufficient for a production server. To see the connection pool size for the LabKey data source, select (Admin) > Site > Admin Console
and check the setting of Connection Pool Size
on the Server Information
panel. The connection pool size for every data source is also logged at server startup.
To set the connection pool size, edit your labkey.xml configuration file and change the appropriate setting for your LabKey data source to at least 20. Depending on the number of simultaneous users and the complexity of their requests, your deployment may require a larger connection pool size. The setting name depends on your Tomcat version:
- Tomcat 7: the setting to change is called "maxActive".
- Tomcat 8 and 9: the setting to change is called "maxTotal".
You should also consider changing this setting for external data sources to match the usage you expect.
The Tomcat data source connection pool settings changed significantly in Tomcat 8, so you must change your data source settings when you upgrade from Tomcat 7 to Tomcat 8/9
. The most important change is to replace your "maxActive" setting (used with Tomcat 7) with "maxTotal" (Tomcat 8/9). Review the Database Connection Pooling section of the Tomcat Migration Guide
for more information. See External Schemas and Data Sources
for details and data source configuration examples.
Restart Installation from Scratch
If you have encountered prior failed installations, don't have any stored data you need to keep, and want to clean up and start completely from scratch, the following process may be useful:
- Delete the Tomcat service (if it seems to be causing the failure):
- From the command line (may need to run as administrator):
- Uninstall PostgresSQL using their installer.
- Control Panel > Programs and Features
- Select PostgreSQL program (PostgreSQL9.2 or similar).
- Click Uninstall.
- Delete the entire LabKey installation directory:
C:\Program Files\LabKey Server
- Run the LabKey Installer again.
You can search for problems resolved through community support in the LabKey Installation Forum
If you don't see your issue listed there, you can post a new question. If the install seems successful, it is often helpful to submit debugging logs
If the install failed to complete, please include the install.log and install-debug.log from your selected LabKey install directory (Note: you may wish to sanitize the logs of any database login information you provided to the installer).
PostgreSQL logs its installation process separately. If the installer indicates that PostgreSQL installation/upgrage failed, please locate and include the PostgreSQL install logs as well.