Increasing JIRA Memory
Server Administration
- Finding your Server ID
- Increasing JIRA Memory
- Using the Database Integrity Checker
- Precompiling JSP pages
- Logging and Profiling
- Restoring Data
- Optimizing Performance
- Backing Up Data
- Search Indexing
- Using robots.txt to hide from Search Engines
- Updating your JIRA License Details
- Viewing your System Information
- Monitoring Database Connection Usage
- Viewing JIRA's Instrumentation Statistics
- Generating a Thread Dump
- Finding the JIRA Support Entitlement Number (SEN)
- Performance Testing Scripts
On this page
- Step 1: Diagnosis
- Assess Root Cause
- Determine JIRA usage patterns
- Determine available system memory
- Guidance
- Step 2: Increase Available Memory
- Linux
- Windows (starting from .bat file)
- Windows Service
- Setting Properties for Windows Services via Command Line
- Setting Properties for Windows Services via the Windows Registry
- Step 3: Verify Your Settings
Related content
- How to upgrade the Java version used by Bamboo
- How to upgrade the Java version used by Bamboo
- Unable to download plugins, and getting the error message "This version of Bamboo is unrecognized by the Atlassian Marketplace. It might be a non-standard build or be too new to appear."
- Creating a custom elastic image
- Upgrading Atlassian Bamboo - Video Tutorial
- Installing Bamboo 3.0 fails on Window x64 with java.io.IOException "The system cannot find the path specified"
- Error 'Can't connect to X11 window server' is reported during Server Startup
- Raising a request with Atlassian Support
- Bamboo Crashes Due to Insufficient Disk Space and Truncated bamboo.cfg.xml File
- Working with builds
Java applications like JIRA and Confluence run in a "Java virtual machine" (JVM), instead of directly within an operating system. When started, the Java virtual machine is allocated a certain amount of memory, which it makes available to applications like JIRA. By default, Java virtual machines are allocated 64 MB of memory, no matter how many gigabytes of memory your server may actually have available. 64 MB is inadequate for medium to large JIRA installations, and so this needs to be increased. Seeing OutOfMemoryErrors in the logs is symptomatic of this.
This page addresses how to increase Heap Space memory. Confirm that you're not receiving Perm Gen or GC Overhead errors.
Step 1: Diagnosis
Assess Root Cause
Often, there is a root cause for OutOfMemory Errors that may be better to address than just increasing memory. See JIRA Crashes Due to 'OutOfMemoryError Java heap space' for a discussion.
Determine JIRA usage patterns
To determine the JIRA usage patterns:
Choose > System. Select Troubleshooting and Support > System Info to open the System Info page. Then scroll down the page to view the Java VM Memory Statistics section and look at the memory graph during times of peak usage:
This server has been allocated a maximum of 768 MB and a minimum of 256 MB (typically defined in the
setenv
script which is executed by running the start-jira
script). If you are trying to see whether your settings are being picked up by JIRA, this is where to look. Here, you can see that JIRA has reserved 742 MB, or which 190 MB is actually in use. If this JIRA instance were running out of memory, it would have reserved the maximum available (768 MB), and would be using an amount close to this.
Determine available system memory
On Windows
From the Close Programs Dialogue (Press ctrl-alt-delete), select the Performance tab:
The amount marked Available is the amount in kilobytes you have free to allocate to JIRA. On this server we should allocate at most 214 MB.
On Linux
Run cat /proc/meminfo
to view the memory usage.
Setting the -Xmx above the available amount on the server runs the risk of OutOfMemoryErrors due to lack of physical memory. If that occurs the system will use swap space, which greatly decreases performance.
Guidance
As a rule of thumb, if you have fewer than 5000 issues, JIRA should run well with the default 768 MB. Granting JIRA too much memory can impact performance negatively, so it is best to start with 768 MB and make modest increases as necessary. As another data point, 40,000 works well with 768 MB to 1 GB.
Step 2: Increase Available Memory
Linux
To increase heap space memory in Linux installations:
- In your
<JIRA Installation Directory>/bin
(or<Tomcat Installation Directory>/bin
for JIRA WAR installations), open thesetenv.sh
file. - Find the sections JVM_MINIMUM_MEMORY= and JVM_MAXIMUM_MEMORY=
- See Diagnosis above and enter the appropriate values.
Windows (starting from .bat file)
To Configure System Properties in Windows Installations When Starting from the .bat File:
- In your
<JIRA Installation Directory>/bin
(or<Tomcat Installation Directory>/bin
for JIRA WAR installations), open thesetenv.bat
file. - Find the section set JVM_MINIMUM_MEMORY= and set JVM_MAXIMUM_MEMORY=
- See Diagnosis above and enter the appropriate values.
Windows Service
There are two ways to configure system properties when starting Running JIRA as a Service, either via command line or in the Windows Registry.
Setting Properties for Windows Services via Command Line
Setting Properties for Windows Services via Command Line
- Identify the name of the service that JIRA is installed as in Windows (
Control Panel > Administrative Tools > Services
):
In the above example, the SERVICENAME is:
JIRA120312230938
- Open the command window from
Start > Run > type in 'cmd' > press 'Enter'
cd
to thebin
subdirectory of your JIRA Installation Directory (or thebin
subdirectory of your Tomcat installation directory if your are running the JIRA WAR distribution).
For Example:cd C:\Program Files\Atlassian\JIRA\bin
For JIRA 5.1 or below:
tomcat6w //ES//%SERVICENAME%
For JIRA 5.2 or above:
tomcat7w //ES//%SERVICENAME%
In the above example, it would be
tomcat6w //ES//JIRA120312230938
- Click on the
Java
tab to see the list of current start-up options: - Set the maximum memory allocation here
Setting Properties for Windows Services via the Windows Registry
In some versions of Windows, there is no option to add Java variables to the service. In these cases, you must add the properties by viewing the option list in the registry.
To Set Properties for Windows Services via the Windows Registry,
- Go to
Start > Run
, and run "regedit32.exe".
- Find the Services entry:
32-bit:HKEY_LOCAL_MACHINE > SOFTWARE > Apache Software Foundation > Procrun 2.0 > JIRA
64-bit:HKEY_LOCAL_MACHINE > SOFTWARE > Wow6432Node > Apache Software Foundation > Procrun 2.0 > JIRA
- To change existing properties, especially increasing Xmx memory, double-click the appropriate value.
- To change additional properties, double-click options.
- Modify the memory allocations here.
Step 3: Verify Your Settings
To verify what settings are in place, check the <JIRA Home Directory>/logs/atlassian-jira.log
or catalina.out
file. A section in the startup appears like this:
JVM Input Arguments : -Djava.util.logging.config.file=/usr/local/jira/conf/logging.properties -XX:MaxPermSize=256m -Xms256m -Xmx384m -Djava.awt.headless=true -Datlassian.standalone=JIRA -Dorg.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER=true -Dmail.mime.decodeparameters=true -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/usr/local/jira/endorsed -Dcatalina.base=/usr/local/jira -Dcatalina.home=/usr/local/jira -Djava.io.tmpdir=/usr/local/jira/temp
Look for Xmx (maximum) and Xms (minimum) settings.
This display is also available by Viewing your System Information.
Related content
- How to upgrade the Java version used by Bamboo
- How to upgrade the Java version used by Bamboo
- Unable to download plugins, and getting the error message "This version of Bamboo is unrecognized by the Atlassian Marketplace. It might be a non-standard build or be too new to appear."
- Creating a custom elastic image
- Upgrading Atlassian Bamboo - Video Tutorial
- Installing Bamboo 3.0 fails on Window x64 with java.io.IOException "The system cannot find the path specified"
- Error 'Can't connect to X11 window server' is reported during Server Startup
- Raising a request with Atlassian Support
- Bamboo Crashes Due to Insufficient Disk Space and Truncated bamboo.cfg.xml File
- Working with builds