Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Pipelines limitation for large PRs?

Daniel
Contributor
April 6, 2023

Is there any limitations with Pipelines handling extremely large PRs?

We had an architectural change that modified ~8,000 files. A PR was created for these changes but the pipeline for PRs is not getting triggered (nothing runs). Our pipelines work fine for other PRs and commits, so I'm wondering if there is just a PR size limitation.

Anyone else run into something like this? And are there any workarounds?

2 answers

1 accepted

0 votes
Answer accepted
Theodora Boudale
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
April 12, 2023

Hi @Daniel,

I can see that you created a support ticket as well for this issue and one of our engineers answered it. I just wanted to share the reply here as well, for any other users who may come across your question with the same issue:

The reason why the pull request pipeline was not triggered is that the Pull Request has a very large message in the description field, which caused the webhooks service not to be able to process that message, preventing the build to be triggered.

The way that the pipeline's service gets notified that it needs to run a new build is through a webhook message. When there's any new commit in the repository or when a pull request is created/updated, a webhook request will be fired against the pipeline's service to start a new build. Since the webhook was not triggered in this case due to the size of the description field of the pull request, the pipeline's service was not notified and no build was triggered for that particular Pull Request.

This limitation is described in the Troubleshoot webhooks documentation, as per the following section:

Webhook payload is limited to 256 KB. Webhooks may silently fail to trigger if their payload is too large.

 

The workaround, if possible, would be to reduce the size of the description field of the Pull Request so the webhooks service can process the message. Testing in my own repository, I was able to get the build triggered when containing up to 2000 lines. However, we understand that this is not an accurate way of measuring the commit message/payload size.

Another option is to manually trigger the pipeline directly for a commit by going to the "Commits" page, opening the desired commit, and clicking on the "Run pipeline" option in the right side panel.

We also have a bug ticket on our public issue tracker related to this bug, which you can check at the following link :

I would suggest adding your vote there, so our engineering team can better understand the impact. Also, if you would like to keep informed about any progress on the fix of that particular bug, make sure to add yourself as a watcher as well so you will receive updates through your email.

Kind regards,
Theodora

0 votes
Aron Gombas _Midori_
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
April 7, 2023

I haven't experienced it myself, what happens when you manually run the pipeline on the source branch of the PR?

(If that runs and the build is green, you may just want merge the PR this time and ignore the problem. I assume these mega-PRs are not made every day by your team.)

Daniel
Contributor
April 7, 2023

Manually running a pipeline on the source branch works fine, so it seems like it's a problem associated with triggering a pipeline when a large PR is created. Maybe it's an undocumented limitation?...

Typically our PRs are in the tens of files. Our PRs trigger automated workflows for our release process, so I guess for this we can just merge and run the release manually.

Like Aron Gombas _Midori_ likes this

Suggest an answer

Log in or Sign up to answer
DEPLOYMENT TYPE
CLOUD
TAGS
AUG Leaders

Atlassian Community Events