Uploaded image for project: 'Bitbucket Data Center'
  1. Bitbucket Data Center
  2. BSERV-11395

Please make the Pull Request Commit Backfill Job skip failed / corrupted backfillRemainingRepositories

    XMLWordPrintable

Details

    • Suggestion
    • Resolution: Unresolved
    • None
    • Pull Requests
    • None
    • 13
    • We collect Bitbucket feedback from various sources, and we evaluate what we've collected when planning our product roadmap. To understand how this piece of feedback will be reviewed, see our Implementation of New Features Policy.

    Description

      Currently the Pull Request Commit Backfill Job completely fails, requiring it to run upon a Bitbucket restart if it encounters a bad repository.

      Although there are workarounds to have it skip any failed repositories, it can get cumbersome and it would be good if it could skip these bad repositories.

      Here's the error that shows up when it fails:

      2018-09-12 12:56:34,154 INFO  [Caesium-1-3]  c.a.s.i.p.PullRequestCommitBackfillJob Starting backfill of pull request commits.
      2018-09-12 12:56:35,326 ERROR [Caesium-1-3]  c.a.b.s.g.c.GitCommandExitHandler [/opt/bin/git rev-list --ignore-missing --topo-order --parents --stdin --] The syntax used is incorrect. git exited and printed a usage block
      2018-09-12 12:56:35,339 WARN  [Caesium-1-3]  c.a.s.i.p.PullRequestCommitBackfillJob An exception was encountered while backfilling. The job has failed and will be attempted again on next startup.
      com.atlassian.bitbucket.scm.CommandUsageException: The syntax used for the command is incorrect.
      	at com.atlassian.bitbucket.scm.git.command.GitCommandExitHandler.checkUsage(GitCommandExitHandler.java:63)
      	at com.atlassian.bitbucket.scm.git.command.GitCommandExitHandler.evaluateStdErr(GitCommandExitHandler.java:69)
      	at com.atlassian.bitbucket.scm.git.command.GitCommandExitHandler.onError(GitCommandExitHandler.java:204)
      	at com.atlassian.bitbucket.scm.DefaultCommandExitHandler.onExit(DefaultCommandExitHandler.java:32)
      	at com.atlassian.bitbucket.scm.BaseCommand.callExitHandler(BaseCommand.java:153)
      	at com.atlassian.bitbucket.scm.BaseCommand$CommandFuture.internalGet(BaseCommand.java:287)
      	at com.atlassian.bitbucket.scm.BaseCommand$CommandFuture.get(BaseCommand.java:251)
      	at com.atlassian.bitbucket.scm.BaseCommand.call(BaseCommand.java:87)
      	at com.atlassian.stash.internal.pull.PullRequestCommitBackfillJob.backfillPullRequests(PullRequestCommitBackfillJob.java:192)
      	at com.atlassian.stash.internal.pull.PullRequestCommitBackfillJob.backfillRepository(PullRequestCommitBackfillJob.java:221)
      	at com.atlassian.stash.internal.pull.PullRequestCommitBackfillJob.access$200(PullRequestCommitBackfillJob.java:70)
      	at com.atlassian.stash.internal.pull.PullRequestCommitBackfillJob$1.doInTransactionWithoutResult(PullRequestCommitBackfillJob.java:203)
      	at org.springframework.transaction.support.TransactionCallbackWithoutResult.doInTransaction(TransactionCallbackWithoutResult.java:34)
      	at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:133)
      	at com.atlassian.stash.internal.pull.PullRequestCommitBackfillJob.backfillRemainingRepositories(PullRequestCommitBackfillJob.java:198)
      	at com.atlassian.stash.internal.pull.PullRequestCommitBackfillJob.access$1000(PullRequestCommitBackfillJob.java:70)
      	at com.atlassian.stash.internal.pull.PullRequestCommitBackfillJob$PullRequestCommitBackfillJobRunner.runJobWithLock(PullRequestCommitBackfillJob.java:372)
      	at com.atlassian.stash.internal.pull.PullRequestCommitBackfillJob$PullRequestCommitBackfillJobRunner.runJob(PullRequestCommitBackfillJob.java:349)
      	at com.atlassian.scheduler.core.JobLauncher.runJob(JobLauncher.java:153)
      	at com.atlassian.scheduler.core.JobLauncher.launchAndBuildResponse(JobLauncher.java:118)
      	at com.atlassian.scheduler.core.JobLauncher.launch(JobLauncher.java:97)
      	at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.launchJob(CaesiumSchedulerService.java:443)
      	at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.executeClusteredJob(CaesiumSchedulerService.java:438)
      	at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.executeClusteredJobWithRecoveryGuard(CaesiumSchedulerService.java:462)
      	at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.executeQueuedJob(CaesiumSchedulerService.java:390)
      	at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService$1.consume(CaesiumSchedulerService.java:285)
      	at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService$1.consume(CaesiumSchedulerService.java:282)
      	at com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.executeJob(SchedulerQueueWorker.java:65)
      	at com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.executeNextJob(SchedulerQueueWorker.java:59)
      	at com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.run(SchedulerQueueWorker.java:34)
      	at java.lang.Thread.run(Thread.java:748)
        

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              amarques@atlassian.com Andre Marques (Inactive)
              Votes:
              3 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated: