Bamboo guardrails
The content of this page applies to Bamboo 10.2. If you're looking for information about a different version, select it from the menu in the top-right corner.
Background
We’re committed to supporting the needs of our largest customers, and this includes continually improving the performance and scalability of our products. The amount of data in your instance can be a factor in performance and stability problems. As your instance grows, so does your risk of performance degradation over time. Often this is a gradual degradation and can go unnoticed until you reach a point where it has a significant impact on your team.
In the table below, we’ve described the performance and stability impacts that we’ve observed and suggested some actions you can take to reduce your risk. The guardrails are based on real-world experiences with some of our largest customers, but won’t necessarily be representative of every organization’s experience.
Ways you can reduce the risk of experiencing serious performance and stability problems may include:
application changes, such as upgrading to a newer application version to get the benefit of performance improvements, or changing the way users are managed.
infrastructure changes, such as increasing memory, CPU, or running a cluster or mirrors.
data cleanup activities to reduce your footprint, such as archiving or breaking up monolith sites.
It’s important to note that these aren’t hard limits, and some of your product instances may already exceed these thresholds. There are a number of factors, including the interplay between different data types, and site load, which will influence whether you experience the potential impacts listed below, and to what degree. As with any type of risk, it’s essential to identify the risk and make a plan, so you can prioritize those actions that will help you reduce the probability of future performance problems.
Definition
Product Guardrails are data type recommendations designed to help you identify potential risks and aid you in making decisions about next steps in your instance optimization journey.
Bamboo guardrails
The following guardrails are provided to help you identify and mitigate scale risks, and make decisions about cleaning up your instance.
Number of environments
Content type | Number of environments |
---|---|
Guardrail | 60,000 deploy environments |
How to find this number | How to find the number of deployment projects and environments from Bamboo database |
Risks |
|
Mitigation options |
|
Build log sizes / ActiveMQ bottlenecks
Content type | Build logs size (per job) |
---|---|
Guardrail | 25Mb or 100000 lines |
How to find this number | While viewing a build log, observe the values of the following sentence immediately above the preview panel:
It is also possible to verify the logs sizes by checking the stored files on the Bamboo server at The Disk space hotspots and cleanup best practices article contains a command that may be used to scan the Bamboo Shared folder for large log files, which can be later matched to their respective builds. |
Risks |
|
Mitigation options |
Linked repositories count
Content type | Number of linked repositories |
---|---|
Guardrail | 18000 |
How to find this number | How to obtain the total count of linked repositories present in Bamboo Data Center |
Risks |
|
Mitigation options |
|
Excessive test cases in the build result
Content type | Excessive test cases in the build result |
---|---|
Guardrail |
|
How to find this number | |
Risks | We've observed these problems when operating above this guardrail: |
Mitigation options |
Size of Git repository
Content type | Size of individual Git repositories |
---|---|
Guardrail | 2.0 GB per Git repository |
How to find this number | |
Risks | When operating above this guardrail, we have observed several issues, including but not limited to:
A less common but more severe side effect involves not just a delay but the disruption of all builds connected to the large repository. This situation arises when the Git operations, triggered by Bamboo to maintain the repository cache or build working directory, time out and are left incomplete. This creates a loop where Bamboo continuously tries to update or rebuild the repository cache (on the Bamboo server/agent) or the build working directory (on the Agent) without success. Learn more about Bamboo Agents and their configuration Delays and interruptions frequently occur due to prolonged Git operations on large repositories. These happen while Bamboo is updating or rebuilding the repository cache (on the Bamboo server/agent) or the build working directory (on the Agent). |
Mitigation options |