Anki-Android icon indicating copy to clipboard operation
Anki-Android copied to clipboard

Concurrent publish causes google to report an error

Open mikehardy opened this issue 1 year ago • 3 comments

Checked for duplicates?

  • [X] This issue is not a duplicate

What are the steps to reproduce this bug?

Run two publishes at the same time from different branches, e.g. run the publish workflow on main and on release-2.17 at the same time

Expected behaviour

Both publishes complete successfully

Actual behaviour


> Task :AnkiDroid:publishPlayReleaseApk FAILED
> Task :commitEditForComDotIchi2DotAnki SKIPPED
69 actionable tasks: 65 executed, 4 from cache
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':AnkiDroid:publishPlayReleaseApk'.
> A failure occurred while executing com.github.triplet.gradle.play.tasks.PublishApk$Processor
   > There were multiple failures while executing work items
      > A failure occurred while executing com.github.triplet.gradle.play.tasks.PublishApk$ApkUploader
         > 400 Bad Request
           PUT https://androidpublisher.googleapis.com/upload/androidpublisher/v3/applications/com.ichi2.anki/edits/13359445064748355655/apks?uploadType=resumable&upload_id=ABPtcPq9OMGR47rv3DYcW8meWeLq-TPszNMA-M2GZJyyubVWABCVVrQ_6xPRjsJabJnufI4kufkkodAAvLpl6OZEd8lrV-bzTpND1UnpTBQp-ZDo
           {
             "code": 400,
             "errors": [
               {
                 "domain": "global",
                 "message": "This Edit has been deleted.",
                 "reason": "failedPrecondition"
               }
             ],
             "message": "This Edit has been deleted.",
             "status": "FAILED_PRECONDITION"
           }

Debug info

N/A

(Optional) Anything else you want to share?

Apparently this is a known limitation, and honestly it makes sense. I believe we have just gotten lucky before as I frequently publish an alpha and a beta at the same time

https://github.com/Triple-T/gradle-play-publisher/issues/860

Solution is likely just to tune the concurrency key on the publish workflow so that only one runs at a time, with queueing not canceling

Research

  • [X] I am reporting a bug specific to AnkiDroid (Android app)
  • [X] I have checked the manual and the FAQ and could not find a solution to my issue
  • [X] (Optional) I have confirmed the issue is not resolved in the latest alpha release (instructions)

mikehardy avatar Mar 01 '24 19:03 mikehardy

Will simply avoid this manually at the moment while I get 2.17.2 out

mikehardy avatar Mar 01 '24 19:03 mikehardy

From #15742 - the task of adding the lintVitalFullRelease to the first gradle target in publish script is peeled from there as an idea and added to here as an item to do for this to close. Should be trivial?

mikehardy avatar Mar 01 '24 19:03 mikehardy

Hello 👋, this issue has been opened for more than 3 months with no activity on it. If the issue is still here, please keep in mind that we need community support and help to fix it! Just comment something like still searching for solutions and if you found one, please open a pull request! You have 7 days until this gets closed automatically

github-actions[bot] avatar May 30 '24 19:05 github-actions[bot]

Hello 👋, this issue has been opened for more than 3 months with no activity on it. If the issue is still here, please keep in mind that we need community support and help to fix it! Just comment something like still searching for solutions and if you found one, please open a pull request! You have 7 days until this gets closed automatically

github-actions[bot] avatar Sep 04 '24 20:09 github-actions[bot]

Hello 👋, this issue has been opened for more than 3 months with no activity on it. If the issue is still here, please keep in mind that we need community support and help to fix it! Just comment something like still searching for solutions and if you found one, please open a pull request! You have 7 days until this gets closed automatically

github-actions[bot] avatar Dec 04 '24 14:12 github-actions[bot]