Skip to content

Repo-updater can fall into infinite retry loop

Created by: eseliger

  • Sourcegraph version: master
  • Platform information: macOS 10.15.4, Chrome 81

Steps to reproduce:

  1. Try to create a changeset
  2. It has to have a large error message (>2704 bytes)
  3. See repo-updater fall into an infinite retry loop

Expected behavior:

  • No error on larger error messages
  • IF infinite retry loop can't be avoided, it should be ensured that other jobs don't starve because of it (Currently the case), potential fix could be to put jobs at the end of the queue once a start is attempted

Actual behavior:

errors because error message is too long for the index:

pq: index row size 3416 exceeds btree version 4 maximum 2704 for index "changeset_jobs_error"

fell into an infinite retry loop and the other jobs starved