500 ERROR Something went wrong while trying to get the pullrequest with key

Hi,

Please could we check what might be going wrong with some of our scans? It only seems to affect certain PRs that have one or more changes to GitHub Action yaml configurations.

  • ALM used: GitHub Actions

  • Scanner command used:

    We’re using the Sonar scan Action

          - name: SonarCloud Scan
            if: always()
            uses: SonarSource/sonarqube-scan-action@v5.0.0
            env:
              GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
              SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
              SONAR_USER_HOME: "${{ github.workspace }}/.sonar"
            with:
              args: >
                -Dsonar.projectVersion=${{ steps.determine-pr.outputs.pr_number }}
                -X
    
  • Languages of the repository
    Failure seems to happen when the PR has changes to GitHub Action yaml files, but we’ve not been able to determine the combination of changes that cause the API to 500

  • Error observed:

10:37:20.409 INFO  Scanner configuration file: /home/runner/work/_temp/sonar-scanner-cli-7.0.2.4839-Linux-X64/conf/sonar-scanner.properties
10:37:20.413 INFO  Project root configuration file: /home/runner/work/<redacted>/<redacted>/sonar-project.properties
10:37:20.429 INFO  SonarScanner CLI 7.0.2.4839
10:37:20.431 INFO  Java 17.0.13 Eclipse Adoptium (64-bit)
10:37:20.432 INFO  Linux 6.8.0-1021-azure amd64
10:37:20.438 DEBUG Scanner max available memory: 3 GB
10:37:20.464 DEBUG uname -m returned 'x86_64'
10:37:20.466 DEBUG Using JVM default truststore: /home/runner/work/_temp/sonar-scanner-cli-7.0.2.4839-Linux-X64/jre/lib/security/cacerts
10:37:20.467 DEBUG Create: /home/runner/work/<redacted>/<redacted>/.sonar/cache
10:37:20.467 INFO  User cache: /home/runner/work/<redacted>/<redacted>/.sonar/cache
10:37:20.467 DEBUG Create: /home/runner/work/<redacted>/<redacted>/.sonar/cache/_tmp
10:37:20.557 DEBUG Loading OS trusted SSL certificates...
10:37:20.557 DEBUG This operation might be slow or even get stuck. You can skip it by passing the scanner property 'sonar.scanner.skipSystemTruststore=true'
10:37:20.787 DEBUG Loaded [440] system trusted certificates
10:37:20.959 DEBUG Loaded truststore from '/home/runner/work/_temp/sonar-scanner-cli-7.0.2.4839-Linux-X64/jre/lib/security/cacerts' containing 152 certificates
10:37:21.087 INFO  JRE provisioning: os[linux], arch[x86_64]
10:37:21.110 DEBUG --> GET https://api.sonarcloud.io/analysis/jres?os=linux&arch=x86_64
10:37:21.922 DEBUG <-- 200 https://api.sonarcloud.io/analysis/jres?os=linux&arch=x86_64 (811ms, 471-byte body)
10:37:21.954 DEBUG Executing: /home/runner/work/<redacted>/<redacted>/.sonar/cache/bcb1b7b8ad68c93093f09b591b7cb17161d39891f7d29d33a586f5a328603707/OpenJDK17U-jre_x64_linux_hotspot_17.0.11_9.tar.gz_extracted/jdk-17.0.11+9-jre/bin/java --version
10:37:21.978 DEBUG openjdk 17.0.11 2024-04-16
10:37:21.978 DEBUG OpenJDK Runtime Environment Temurin-17.0.11+9 (build 17.0.11+9)
10:37:21.978 DEBUG OpenJDK 64-Bit Server VM Temurin-17.0.11+9 (build 17.0.11+9, mixed mode, sharing)
10:37:21.982 DEBUG --> GET https://api.sonarcloud.io/analysis/engine
10:37:22.205 DEBUG <-- 200 https://api.sonarcloud.io/analysis/engine (222ms, 290-byte body)
10:37:22.208 INFO  Communicating with SonarQube Cloud
10:37:22.208 DEBUG Work directory: /home/runner/work/<redacted>/<redacted>/.scannerwork
10:37:22.216 DEBUG Executing: /home/runner/work/<redacted>/<redacted>/.sonar/cache/bcb1b7b8ad68c93093f09b591b7cb17161d39891f7d29d33a586f5a328603707/OpenJDK17U-jre_x64_linux_hotspot_17.0.11_9.tar.gz_extracted/jdk-17.0.11+9-jre/bin/java -Dorg.bouncycastle.pkcs12.ignore_useless_passwd=true -jar /home/runner/work/<redacted>/<redacted>/.sonar/cache/4c3f2790c7699f6a0131413c0043f7bad87472607321fa0af2255d5193f3f0df/sonarcloud-scanner-engine-11.5.0.358.jar
10:37:22.482 INFO  Starting SonarScanner Engine...
10:37:22.482 INFO  Java 17.0.11 Eclipse Adoptium (64-bit)
10:37:22.525 DEBUG JVM max available memory: 3 GB
10:37:22.694 DEBUG Sonar User Home: /home/runner/work/<redacted>/<redacted>/.sonar
10:37:22.694 DEBUG Initialize DefaultScannerWsClient
10:37:22.776 DEBUG Loading OS trusted SSL certificates...
10:37:22.777 DEBUG This operation might be slow or even get stuck. You can skip it by passing the scanner property 'sonar.scanner.skipSystemTruststore=true'
10:37:23.025 DEBUG Loaded [440] system trusted certificates
10:37:23.225 DEBUG Loaded truststore from '/home/runner/work/_temp/sonar-scanner-cli-7.0.2.4839-Linux-X64/jre/lib/security/cacerts' containing 152 certificates
10:37:23.390 INFO  Load global settings
10:37:23.403 DEBUG --> GET https://sonarcloud.io/api/settings/values.protobuf
10:37:23.755 DEBUG <-- 200 https://sonarcloud.io/api/settings/values.protobuf (353ms, unknown-length body)
10:37:23.763 INFO  Load global settings (done) | time=373ms
10:37:23.767 INFO  Server id: 1BD809FA-AWHW8ct9-T_TB3XqouNu
10:37:23.768 DEBUG Initialize DownloadPluginsScannerWsClient
10:37:23.770 DEBUG Loading OS trusted SSL certificates...
10:37:23.771 DEBUG This operation might be slow or even get stuck. You can skip it by passing the scanner property 'sonar.scanner.skipSystemTruststore=true'
10:37:23.921 DEBUG Loaded [440] system trusted certificates
10:37:23.951 DEBUG Loaded truststore from '/home/runner/work/_temp/sonar-scanner-cli-7.0.2.4839-Linux-X64/jre/lib/security/cacerts' containing 152 certificates
10:37:23.961 DEBUG Create : /home/runner/work/<redacted>/<redacted>/.sonar/_tmp
10:37:23.962 DEBUG User cache: /home/runner/work/<redacted>/<redacted>/.sonar/cache
10:37:23.970 INFO  Loading required plugins
10:37:23.970 INFO  Load plugins index
10:37:23.970 DEBUG --> GET https://sonarcloud.io/api/plugins/installed
10:37:24.163 DEBUG <-- 200 https://sonarcloud.io/api/plugins/installed (193ms, unknown-length body)
10:37:24.170 INFO  Load plugins index (done) | time=201ms
10:37:24.170 INFO  Load/download plugins
10:37:24.221 INFO  Load/download plugins (done) | time=50ms
10:37:24.222 DEBUG Plugins not loaded because they are optional: [abap, sonarapex, architecture, architecturejavascriptfrontend, architecturejavafrontend, csharpenterprise, cpp, cobol, dbd, dbdjavafrontend, dbdpythonfrontend, flex, goenterprise, web, jcl, javasymbolicexecution, java, javascript, kotlin, php, pli, plsql, python, rpg, ruby, sonarscala, swift, tsql, vbnetenterprise, vb, security, securitycsharpfrontend, securityjsfrontend, securityjavafrontend, securityphpfrontend, securitypythonfrontend, xml, dart]
10:37:24.263 DEBUG Plugins loaded:
10:37:24.263 DEBUG   * Text Code Quality and Security 2.21.0.5225 (textenterprise)
10:37:24.263 DEBUG   * JaCoCo 1.3.0.1538 (jacoco)
10:37:24.264 DEBUG   * IaC Code Quality and Security 1.43.0.14517 (iacenterprise)
10:37:24.264 DEBUG   * IaC Code Quality and Security 1.43.0.14517 (iac)
10:37:24.264 DEBUG --> GET https://sonarcloud.io/api/server/version
10:37:28.162 DEBUG <-- 200 https://sonarcloud.io/api/server/version (3897ms, 11-byte body)
10:37:28.162 DEBUG Updated analysis started with a difference of -50 milliseconds
10:37:28.168 DEBUG Started at Tue Mar 18 10:37:23 UTC 2025
10:37:28.372 DEBUG register org.eclipse.jgit.util.FS$FileStoreAttributes$$Lambda$277/0x00007f788c2e8a38@281ce6bb with shutdown hook
10:37:28.395 INFO  Found an active CI vendor: 'Github Actions'
10:37:28.411 INFO  Load project settings for component key: '<redacted>_<redacted>'
10:37:28.412 DEBUG --> GET https://sonarcloud.io/api/settings/values.protobuf?component=<redacted>_<redacted>
10:37:28.761 DEBUG <-- 200 https://sonarcloud.io/api/settings/values.protobuf?component=<redacted>_<redacted> (350ms, unknown-length body)
10:37:28.763 INFO  Load project settings for component key: '<redacted>_<redacted>' (done) | time=353ms
10:37:28.769 INFO  Process project properties
10:37:28.775 DEBUG Process project properties (done) | time=6ms
10:37:28.777 INFO  Project key: <redacted>_<redacted>
10:37:28.777 INFO  Base dir: /home/runner/work/<redacted>/<redacted>
10:37:28.778 INFO  Working dir: /home/runner/work/<redacted>/<redacted>/.scannerwork
10:37:28.778 DEBUG Project global encoding: UTF-8, default locale: en
10:37:28.779 DEBUG Creating module hierarchy
10:37:28.779 DEBUG   Init module '<redacted>_<redacted>'
10:37:28.782 DEBUG     Base dir: /home/runner/work/<redacted>/<redacted>
10:37:28.782 DEBUG     Working dir: /home/runner/work/<redacted>/<redacted>/.scannerwork
10:37:28.782 DEBUG     Module global encoding: UTF-8, default locale: en
10:37:28.783 INFO  Load project branches
10:37:28.784 DEBUG --> GET https://sonarcloud.io/api/project_branches/list?project=<redacted>_<redacted>
10:37:29.076 DEBUG <-- 200 https://sonarcloud.io/api/project_branches/list?project=<redacted>_<redacted> (293ms, unknown-length body)
10:37:29.079 INFO  Load project branches (done) | time=298ms
10:37:29.082 INFO  Check ALM binding of project '<redacted>_<redacted>'
10:37:29.083 DEBUG --> GET https://sonarcloud.io/api/alm_integration/is_project_bound?project=<redacted>_<redacted>
10:37:29.196 DEBUG <-- 200 https://sonarcloud.io/api/alm_integration/is_project_bound?project=<redacted>_<redacted> (113ms, unknown-length body)
10:37:29.198 INFO  Detected project binding: BOUND
10:37:29.198 INFO  Check ALM binding of project '<redacted>_<redacted>' (done) | time=116ms
10:37:29.200 INFO  Load project pull requests
10:37:29.201 DEBUG --> GET https://sonarcloud.io/api/project_pull_requests/list?project=<redacted>_<redacted>
10:37:30.363 DEBUG <-- 200 https://sonarcloud.io/api/project_pull_requests/list?project=<redacted>_<redacted> (1161ms, unknown-length body)
10:37:30.462 INFO  Load project pull requests (done) | time=1262ms
10:37:30.464 INFO  Load branch configuration
10:37:30.465 INFO  Github event: pull_request
10:37:30.475 INFO  Auto-configuring pull request 56159
10:37:30.477 DEBUG --> GET https://sonarcloud.io/api/alm_integration/show_pullrequest?project=<redacted>_<redacted>&pullrequestKey=56159
10:37:36.452 DEBUG <-- 500 https://sonarcloud.io/api/alm_integration/show_pullrequest?project=<redacted>_<redacted>&pullrequestKey=56159 (5974ms, unknown-length body)
10:37:36.461 ERROR Something went wrong while trying to get the pullrequest with key '56159'
java.lang.IllegalStateException: Unable to load component class org.sonar.scanner.scan.filesystem.InputComponentStore
10:37:36.463 DEBUG Cleanup org.eclipse.jgit.util.FS$FileStoreAttributes$$Lambda$277/0x00007f788c2e8a38@281ce6bb during JVM shutdown
	at org.sonar.core.platform.ComponentContainer$ExtendedDefaultPicoContainer.getComponent(ComponentContainer.java:52)
	at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:632)
	at org.picocontainer.parameters.BasicComponentParameter$1.resolveInstance(BasicComponentParameter.java:118)
	at org.picocontainer.parameters.ComponentParameter$1.resolveInstance(ComponentParameter.java:136)
	at org.picocontainer.injectors.SingleMemberInjector.getParameter(SingleMemberInjector.java:78)
	at org.picocontainer.injectors.ConstructorInjector$CtorAndAdapters.getParameterArguments(ConstructorInjector.java:309)
	at org.picocontainer.injectors.ConstructorInjector$1.run(ConstructorInjector.java:335)
	at org.picocontainer.injectors.AbstractInjector$ThreadLocalCyclicDependencyGuard.observe(AbstractInjector.java:270)
	at org.picocontainer.injectors.ConstructorInjector.getComponentInstance(ConstructorInjector.java:364)
	at org.picocontainer.injectors.AbstractInjectionFactory$LifecycleAdapter.getComponentInstance(AbstractInjectionFactory.java:56)
	at org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64)
	at org.picocontainer.behaviors.Stored.getComponentInstance(Stored.java:91)
	at org.picocontainer.DefaultPicoContainer.instantiateComponentAsIsStartable(DefaultPicoContainer.java:1034)
	at org.picocontainer.DefaultPicoContainer.addAdapterIfStartable(DefaultPicoContainer.java:1026)
	at org.picocontainer.DefaultPicoContainer.startAdapters(DefaultPicoContainer.java:1003)
	at org.picocontainer.DefaultPicoContainer.start(DefaultPicoContainer.java:767)
	at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:122)
	at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:109)
	at org.sonar.scanner.bootstrap.GlobalContainer.doAfterStart(GlobalContainer.java:128)
	at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:123)
	at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:109)
	at org.sonar.scanner.bootstrap.ScannerMain.runScannerEngine(ScannerMain.java:137)
	at org.sonar.scanner.bootstrap.ScannerMain.run(ScannerMain.java:52)
	at org.sonar.scanner.bootstrap.ScannerMain.main(ScannerMain.java:38)
Caused by: java.lang.IllegalStateException: Unable to load component inter<redacted>e org.sonar.scanner.scan.branch.BranchConfiguration
	at org.sonar.core.platform.ComponentContainer$ExtendedDefaultPicoContainer.getComponent(ComponentContainer.java:52)
	at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:632)
	at org.picocontainer.parameters.BasicComponentParameter$1.resolveInstance(BasicComponentParameter.java:118)
	at org.picocontainer.parameters.ComponentParameter$1.resolveInstance(ComponentParameter.java:136)
	at org.picocontainer.injectors.SingleMemberInjector.getParameter(SingleMemberInjector.java:78)
	at org.picocontainer.injectors.ConstructorInjector$CtorAndAdapters.getParameterArguments(ConstructorInjector.java:309)
	at org.picocontainer.injectors.ConstructorInjector$1.run(ConstructorInjector.java:335)
	at org.picocontainer.injectors.AbstractInjector$ThreadLocalCyclicDependencyGuard.observe(AbstractInjector.java:270)
	at org.picocontainer.injectors.ConstructorInjector.getComponentInstance(ConstructorInjector.java:364)
	at org.picocontainer.injectors.AbstractInjectionFactory$LifecycleAdapter.getComponentInstance(AbstractInjectionFactory.java:56)
	at org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64)
	at org.picocontainer.behaviors.Stored.getComponentInstance(Stored.java:91)
	at org.picocontainer.DefaultPicoContainer.getInstance(DefaultPicoContainer.java:699)
	at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:647)
	at org.sonar.core.platform.ComponentContainer$ExtendedDefaultPicoContainer.getComponent(ComponentContainer.java:50)
	... 23 common frames omitted
Caused by: org.sonar.api.utils.MessageException: Something went wrong while trying to get the pullrequest with key '56159'
Caused by: com.sonarsource.scanner.engine.webapi.client.HttpException: Error 500 on https://sonarcloud.io/api/alm_integration/show_pullrequest?project=<redacted>_<redacted>&pullrequestKey=56159 : {"errors":[{"msg":"An unexpected error occurred. Please try again later."}]}
	at com.sonarsource.scanner.engine.webapi.client.BaseResponse.failIfNotSuccessful(BaseResponse.java:22)
	at org.sonar.scanner.http.DefaultScannerWsClient.failIfUnauthorized(DefaultScannerWsClient.java:82)
	at org.sonar.scanner.http.DefaultScannerWsClient.call(DefaultScannerWsClient.java:55)
	at com.sonarsource.branch.pr.PullRequestClient.getPullRequest(PullRequestClient.java:30)
	at com.sonarsource.branch.PrBranchConfigurationBuilder.buildForBoundProject(PrBranchConfigurationBuilder.java:68)
	at com.sonarsource.branch.PrBranchConfigurationBuilder.build(PrBranchConfigurationBuilder.java:56)
	at com.sonarsource.branch.BranchConfigurationLoaderImpl.load(BranchConfigurationLoaderImpl.java:65)
	at org.sonar.scanner.scan.branch.BranchConfigurationProvider.provide(BranchConfigurationProvider.java:33)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.base/java.lang.reflect.Method.invoke(Unknown Source)
	at org.picocontainer.injectors.MethodInjector.invokeMethod(MethodInjector.java:129)
	at org.picocontainer.injectors.MethodInjector.access$000(MethodInjector.java:39)
	at org.picocontainer.injectors.MethodInjector$2.run(MethodInjector.java:113)
	at org.picocontainer.injectors.AbstractInjector$ThreadLocalCyclicDependencyGuard.observe(AbstractInjector.java:270)
	at org.picocontainer.injectors.MethodInjector.decorateComponentInstance(MethodInjector.java:120)
	at org.picocontainer.injectors.CompositeInjector.decorateComponentInstance(CompositeInjector.java:58)
	at org.picocontainer.injectors.Reinjector.reinject(Reinjector.java:142)
	at org.picocontainer.injectors.ProviderAdapter.getComponentInstance(ProviderAdapter.java:96)
	at org.picocontainer.DefaultPicoContainer.getInstance(DefaultPicoContainer.java:699)
	at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:647)
	at org.sonar.core.platform.ComponentContainer$ExtendedDefaultPicoContainer.getComponent(ComponentContainer.java:50)
	at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:632)
	at org.picocontainer.parameters.BasicComponentParameter$1.resolveInstance(BasicComponentParameter.java:118)
	at org.picocontainer.parameters.ComponentParameter$1.resolveInstance(ComponentParameter.java:136)
	at org.picocontainer.injectors.SingleMemberInjector.getParameter(SingleMemberInjector.java:78)
	at org.picocontainer.injectors.ConstructorInjector$CtorAndAdapters.getParameterArguments(ConstructorInjector.java:309)
	at org.picocontainer.injectors.ConstructorInjector$1.run(ConstructorInjector.java:335)
	at org.picocontainer.injectors.AbstractInjector$ThreadLocalCyclicDependencyGuard.observe(AbstractInjector.java:270)
	at org.picocontainer.injectors.ConstructorInjector.getComponentInstance(ConstructorInjector.java:364)
	at org.picocontainer.injectors.AbstractInjectionFactory$LifecycleAdapter.getComponentInstance(AbstractInjectionFactory.java:56)
	at org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64)
	at org.picocontainer.behaviors.Stored.getComponentInstance(Stored.java:91)
	at org.picocontainer.DefaultPicoContainer.getInstance(DefaultPicoContainer.java:699)
	at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:647)
	at org.sonar.core.platform.ComponentContainer$ExtendedDefaultPicoContainer.getComponent(ComponentContainer.java:50)
	at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:632)
	at org.picocontainer.parameters.BasicComponentParameter$1.resolveInstance(BasicComponentParameter.java:118)
	at org.picocontainer.parameters.ComponentParameter$1.resolveInstance(ComponentParameter.java:136)
	at org.picocontainer.injectors.SingleMemberInjector.getParameter(SingleMemberInjector.java:78)
	at org.picocontainer.injectors.ConstructorInjector$CtorAndAdapters.getParameterArguments(ConstructorInjector.java:309)
	at org.picocontainer.injectors.ConstructorInjector$1.run(ConstructorInjector.java:335)
	at org.picocontainer.injectors.AbstractInjector$ThreadLocalCyclicDependencyGuard.observe(AbstractInjector.java:270)
	at org.picocontainer.injectors.ConstructorInjector.getComponentInstance(ConstructorInjector.java:364)
	at org.picocontainer.injectors.AbstractInjectionFactory$LifecycleAdapter.getComponentInstance(AbstractInjectionFactory.java:56)
	at org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64)
	at org.picocontainer.behaviors.Stored.getComponentInstance(Stored.java:91)
	at org.picocontainer.DefaultPicoContainer.instantiateComponentAsIsStartable(DefaultPicoContainer.java:1034)
	at org.picocontainer.DefaultPicoContainer.addAdapterIfStartable(DefaultPicoContainer.java:1026)
	at org.picocontainer.DefaultPicoContainer.startAdapters(DefaultPicoContainer.java:1003)
	at org.picocontainer.DefaultPicoContainer.start(DefaultPicoContainer.java:767)
	at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:122)
	at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:109)
	at org.sonar.scanner.bootstrap.GlobalContainer.doAfterStart(GlobalContainer.java:128)
	at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:123)
	at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:109)
	at org.sonar.scanner.bootstrap.ScannerMain.runScannerEngine(ScannerMain.java:137)
	at org.sonar.scanner.bootstrap.ScannerMain.run(ScannerMain.java:52)
	at org.sonar.scanner.bootstrap.ScannerMain.main(ScannerMain.java:38)

The vast majority of PRs for this project are scanned successfully so we’re not sure whats going on.

Many thanks
Duncan

Hey @DSmith!

I dug into the backend and found that GitHub is returning a 422 error (Unprocessable Content) when querying info for the PR.

I’ll send you the URL that you can try to query to see if it also returns a 422 for you.

Hello @DSmith, so we are waiting 10 times more on the requests that are returning 422, compared to the ones that are returning 200.
These 2 requests were sent a few hours apart, targeting the same PR reported in the logs.

A few things that are worth noticing:

  • the endpoint for getting a pull request does not list 422 as a potential response. This is not unusual, it’s just a variation of a 400 response, similar to 429 for throttling, 413, etc.. They are usually handled by a proxy service and that’s not in the scope of the API specs (otherwise the list would be huge).

  • I don’t see a particularly concerning trend/pattern here, based on the data form the past month.

  • the requests that are rejected with 422 were less than 200 in the past month, which are around 0.004% of the total requests.

That being said, it makes sense to investigate whether the issue originates from us or from GitHub. To achieve that, as GitHub suggests, we should log the content of the response and log the entire request on our side so we can correlate the two. Unfortunately this is not trivial, I’ll open a ticket to follow up with this investigation and to collect all the required data.

In the meantime, can you please clarify what do you mean by:

Failure seems to happen when the PR has changes to GitHub Action yaml files, but we’ve not been able to determine the combination of changes that cause the API to 500

Does this happens only on PRs that are touching just that yaml file?

Hi @cristian.ambrosini,

Thanks for looking into this.

Does this happens only on PRs that are touching just that yaml file?

Yes, this seems to be the only common factor. Specifically it’s Dependabot PRs updating the archive/github-actions-slack action across one or more workflow files. i.e

 -       uses: archive/github-actions-slack@v2.9.0
 +       uses: archive/github-actions-slack@v2.10.1

It also happened on PRs 56968, 56359 and 56665.

Ok thanks for the info. I don’t think I can help further until we have more data, we’ll get back once we improve the logging