Bamboo Data Center Specs scan fails with "The incoming YAML document exceeds the limit: 6291456 code points"

Platform Notice: Data Center - This article applies to Atlassian products on the Data Center platform.

Note that this knowledge base article was created for the Data Center version of the product. Data Center knowledge base articles for non-Data Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Except Fisheye and Crucible

Summary

When scanning a Specs project in Bamboo Data Center, the scan fails and the following error can be seen in the Specs execution logs:

The incoming YAML document exceeds the limit: 6291456 code points.

Environment

The solution has been validated in Bamboo Data Center 9.2.17 but may be applicable to other versions.

Diagnosis

When the Specs scan fails, while reviewing the scan logs available in the Liked Repository page > Specs status > "View Error Logs", the following error is present:

com.atlassian.bamboo.exception.YamlValidationException: Could not parse yaml input: The incoming YAML document exceeds the limit: 6291456 code points.
java.lang.RuntimeException: com.atlassian.bamboo.exception.YamlValidationException: Could not parse yaml input: The incoming YAML document exceeds the limit: 6291456 code points.
	at com.google.common.base.Throwables.propagate(Throwables.java:249)
	at com.atlassian.bamboo.configuration.external.rss.importers.DeploymentProjectImporterProvider.lambda$getEntityImporter$0(DeploymentProjectImporterProvider.java:35)
	at com.atlassian.bamboo.configuration.external.rss.AllTypesSpecsImporter.importBambooYamlsWithImporter(AllTypesSpecsImporter.java:130)
	at com.atlassian.bamboo.configuration.external.rss.AllTypesSpecsImporter.importBambooYamlsOfAllTypes(AllTypesSpecsImporter.java:69)
	at com.atlassian.bamboo.configuration.external.rss.JavaSpecsImportServiceImpl.lambda$processSpecs$2(JavaSpecsImportServiceImpl.java:88)
	at com.atlassian.bamboo.configuration.external.rss.SpecsOptimizeProcessor.processSpecs(SpecsOptimizeProcessor.java:43)
	at com.atlassian.bamboo.configuration.external.rss.JavaSpecsImportServiceImpl.processSpecs(JavaSpecsImportServiceImpl.java:101)
...

Cause

In YAML, a code point limit refers to the maximum number of Unicode code points that can be used in a single string or document. Even if you're using Java Specs with Bamboo, they are internally converted to YAML before Bamboo can process them. By default, Bamboo Data Center sets its limit to parse code points at 6291456, while YAML defaults are usually half that, 3145728.

Hitting this error means that either your Specs code project has reached the code point limit, or that you're running Bamboo Data Center 9.2.4 which is affected by  BAM-22605 - Bamboo specs import fails due to snakeyaml-1.32 codepointlimit bug Closed . For the latter, the error message would state "3145728" as the maximum value.

Solution

If you're running Bamboo Data Center 9.2.4, please upgrade to 9.2.6 or a newer version where the BAM-22605 - Bamboo specs import fails due to snakeyaml-1.32 codepointlimit bug Closed bug has been fixed.

If you're running any other Bamboo Data Center version, you can either adjust your Specs project to have less code points, or configure Bamboo's limit to a higher value by adding the system property below. The default value is 6291456, and we suggest increasing it according to your projects' needs:

-Dbamboo.specs.code.point.limit=NEW_VALUE

In order to apply the system property above to your Bamboo instance, please follow the steps from the article below:

Please note Bamboo must be restarted for the property to be picked up.

Last modified on Mar 17, 2025

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.