Skip to content

Transient 400 "Repository Error creating the snippet" failure on snippet creation via API

Summary

Transient failure that affects several snippet tests on snippet creation via API:

API failed (400) with {"message":{"error":"Repository Error creating the snippet"}}

qa/specs/features/browser_ui/3_create/snippet/clone_push_pull_project_snippet_spec.rb - https://ops.gitlab.net/gitlab-org/gitlab-qa/-/jobs/2200352

qa/specs/features/browser_ui/3_create/snippet/add_comment_to_snippet_spec.rb - https://gitlab.com/gitlab-org/gitlab-qa-mirror/-/jobs/852336160

Could also be connected to a recent UI error noted in #248896 (comment 445867427)

Stack trace

  1) Create Version control for project snippets clones, pushes, and pulls a project snippet over HTTP, edits via UI
     Failure/Error:
       Resource::ProjectSnippet.fabricate! do |snippet|
         snippet.file_name = new_file
       end
     
     QA::Resource::ApiFabricator::ResourceFabricationFailedError:
       Fabrication of QA::Resource::ProjectSnippet using the API failed (400) with `{"message":{"error":"Repository Error creating the snippet"}}`.
     # ./qa/resource/api_fabricator.rb:120:in `api_post'
     # ./qa/resource/snippet.rb:41:in `fabricate_via_api!'
     # ./qa/resource/base.rb:46:in `block (2 levels) in fabricate_via_api!'
     # ./qa/resource/base.rb:135:in `log_fabrication'
     # ./qa/resource/base.rb:46:in `block in fabricate_via_api!'
     # ./qa/resource/base.rb:118:in `do_fabricate!'
     # ./qa/resource/base.rb:45:in `fabricate_via_api!'
     # ./qa/resource/base.rb:19:in `fabricate!'
     # ./qa/specs/features/browser_ui/3_create/snippet/clone_push_pull_project_snippet_spec.rb:13:in `block (3 levels) in <module:QA>'
     # ./qa/specs/features/browser_ui/3_create/snippet/clone_push_pull_project_snippet_spec.rb:25:in `block (3 levels) in <module:QA>'
     # ./qa/specs/features/browser_ui/3_create/snippet/clone_push_pull_project_snippet_spec.rb:45:in `block (4 levels) in <module:QA>'
     # ./qa/resource/base.rb:116:in `do_fabricate!'
     # ./qa/resource/base.rb:29:in `fabricate_via_browser_ui!'
     # ./qa/resource/base.rb:21:in `rescue in fabricate!'
     # ./qa/resource/base.rb:18:in `fabricate!'
     # ./qa/specs/features/browser_ui/3_create/snippet/clone_push_pull_project_snippet_spec.rb:44:in `block (3 levels) in <module:QA>'
     # /usr/local/bundle/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:123:in `block in run'
     # /usr/local/bundle/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:110:in `loop'
     # /usr/local/bundle/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:110:in `run'
     # /usr/local/bundle/gems/rspec-retry-0.6.1/lib/rspec_ext/rspec_ext.rb:12:in `run_with_retry'
     # ./spec/spec_helper.rb:70:in `block (2 levels) in <top (required)>'
     # /usr/local/bundle/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:123:in `block in run'
     # /usr/local/bundle/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:110:in `loop'
     # /usr/local/bundle/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:110:in `run'
     # /usr/local/bundle/gems/rspec-retry-0.6.1/lib/rspec_ext/rspec_ext.rb:12:in `run_with_retry'
     # /usr/local/bundle/gems/rspec-retry-0.6.1/lib/rspec/retry.rb:37:in `block (2 levels) in setup'
     # ./qa/specs/runner.rb:71:in `perform'
     # ./qa/scenario/template.rb:10:in `block in perform'
     # ./qa/scenario/template.rb:8:in `tap'
     # ./qa/scenario/template.rb:8:in `perform'
     # ./qa/scenario/template.rb:35:in `perform'
     # ./qa/scenario/template.rb:10:in `block in perform'
     # ./qa/scenario/template.rb:8:in `tap'
     # ./qa/scenario/template.rb:8:in `perform'
     # ./qa/scenario/bootable.rb:28:in `launch!'
     # ------------------
     # --- Caused by: ---
     # NotImplementedError:
     #   NotImplementedError
     #   ./qa/resource/base.rb:41:in `fabricate_via_api!'
Finished in 18 minutes 27 seconds (files took 36.59 seconds to load)
62 examples, 1 failure, 3 pending
Failed examples:
rspec ./qa/specs/features/browser_ui/3_create/snippet/clone_push_pull_project_snippet_spec.rb:43 # Create Version control for project snippets clones, pushes, and pulls a project snippet over HTTP, edits via UI

Screenshot / HTML page

n/a as fabrication

Possible fixes

Edited by Anastasia McDonald