Build Parameter being truncated

Completed

We recently had a situation where a build parameter was truncated to 16,000 characters/bytes.

In the database(MySQL InnoDB in AWS RDS), the field teamcity.user_build_parameters.paramvalue for the build_id in question does, indeed, show the value truncated at 16,000 bytes.

The log statement in teamcity-server.log shows the full parameter value with a length of 16,763 characters.

Every part of the composite build I look at in the database, and in the log, show the truncated data.

Only the initial log statement has all of the data.

Our MySQL 'max_allowed_packet' is the default of 4,194,304.

I can't find any relevant warnings or errors from or in MySQL about data being too big, data being truncated, etc.

 

Is there an undocumented limit in TeamCity with regard to how big a Build Parameter can be?

Is there a specific string I can search the logs for, and/or a specific log I should enable DEBUG in order to see when and where the data is being truncated?

 

Edit: Here is a scrubbed snippet of the log of the job being queued and then removed from queue to start the build. I snipped the parameters, but I have verified that the (SNIP) section is not truncated in the log, but is truncated in the database.

----

[2019-11-19 18:28:48,222] INFO - s.buildServer.ACTIVITIES.AUDIT - build_add_to_queue: Build BUILD_PROMOTION{id=######} was added to queue by "'a_user' (A User) {id=###}"
[2019-11-19 18:28:48,239] INFO - tbrains.buildServer.ACTIVITIES - Build added to queue; Queued build {Build promotion {promotion id=######, configuration={id=Some_Build_Id, internal id=bt####}, branch=<default>, queued, custom parameters=
(SNIP)
[2019-11-19 18:28:49,850] INFO - jetbrains.buildServer.SERVER - Composite running build saved to DB: build id=######, promotion id=######
[2019-11-19 18:28:49,856] INFO - tbrains.buildServer.ACTIVITIES - Composite build started; Build Name {id=BuildId, internal id=bt####} #21 - {promotion id=######, branch=<default>, agent="<TeamCity build server>" {id=-1}, triggered by "'a_user' (A User) {id=####}" (##userId='####' type='user'). Started 2019-11-19 18:28:49.813, running}

----

 

3 comments
Comment actions Permalink

Updated with some scrubbed log text.

0
Comment actions Permalink

In case anyone else can't find it in the docs, I have been informed... 

"The limit on the custom build parameters is 16,000 characters, as you are experiencing."

So if you add build parameter values with the Custom Run dialog, there is a limit.

0
Comment actions Permalink

Thanks for sharing this with the community! Trowton is correct, there is currently (2019.1.x at the moment) a 16k character limit on parameters entered in the custom build dialog. I hope to have the documentation updated with this information soon.

0

Please sign in to leave a comment.