Skip to content

PostReceive throws TypeError

Sentry: https://sentry.gitlab.net/gitlab/devgitlaborg/issues/795304/

Today we noticed no pipelines were created for the v11.1.3 Helm Chart after the tag push (https://dev.gitlab.org/gitlab/charts/components/images/-/tags) because PostReceive died with this exception:

TypeError: type mismatch: Array given
  from gitlab/ci/pipeline/expression/lexeme/matches.rb:20:in `index'
  from gitlab/ci/pipeline/expression/lexeme/matches.rb:20:in `evaluate'
  from gitlab/ci/pipeline/expression/statement.rb:22:in `evaluate'
  from gitlab/ci/pipeline/expression/statement.rb:26:in `truthful?'
  from gitlab/ci/build/policy/variables.rb:20:in `any?'
  from gitlab/ci/build/policy/variables.rb:20:in `satisfied_by?'
  from gitlab/ci/pipeline/seed/build.rb:25:in `block (2 levels) in included?'
  from gitlab/ci/pipeline/seed/build.rb:25:in `none?'
  from gitlab/ci/pipeline/seed/build.rb:25:in `block in included?'
  from gitlab/utils/strong_memoize.rb:30:in `strong_memoize'
  from gitlab/ci/pipeline/seed/build.rb:23:in `included?'
  from gitlab/ci/pipeline/seed/stage.rb:31:in `select'
  from gitlab/ci/pipeline/seed/stage.rb:31:in `block in seeds'
  from gitlab/utils/strong_memoize.rb:30:in `strong_memoize'
  from gitlab/ci/pipeline/seed/stage.rb:30:in `seeds'
  from gitlab/ci/pipeline/seed/stage.rb:36:in `included?'
  from ci/pipeline.rb:502:in `select'
  from ci/pipeline.rb:502:in `block in stage_seeds'
  from gitlab/utils/strong_memoize.rb:30:in `strong_memoize'
  from ci/pipeline.rb:497:in `stage_seeds'
  from gitlab/metrics/instrumentation.rb:161:in `block in stage_seeds'
  from gitlab/metrics/method_call.rb:36:in `measure'
  from gitlab/metrics/instrumentation.rb:161:in `stage_seeds'
  from gitlab/ci/pipeline/chain/populate.rb:28:in `perform!'
  from gitlab/ci/pipeline/chain/sequence.rb:19:in `block in build!'
  from gitlab/ci/pipeline/chain/sequence.rb:16:in `each'
  from gitlab/ci/pipeline/chain/sequence.rb:16:in `build!'
{  
   "severity":"WARN",
   "time":"2019-06-10T10:56:31.397Z",
   "class":"PostReceive",
   "args":[  
      "project-1016",
      "key-452",
      "0000000000000000000000000000000000000000 638ffd2c263f57be8a601ea570875765ddaf55a5 refs/tags/v11.11.3\n",
      {  

      }
   ],
   "retry":3,
   "queue":"post_receive",
   "jid":"2244390702e33f8f4ce39241",
   "created_at":"2019-06-10T10:54:53.364Z",
   "correlation_id":"56b59671-f3bc-4538-b5f6-882a1cc6bf9b",
   "enqueued_at":"2019-06-10T10:56:30.256Z",
   "error_message":"Sidekiq::JobRetry::Skip",
   "error_class":"TypeError",
   "failed_at":"2019-06-10T10:54:53.583Z",
   "retry_count":1,
   "retried_at":"2019-06-10T10:55:22.168Z",
   "pid":25175,
   "message":"PostReceive JID-2244390702e33f8f4ce39241: fail: 1.041 sec",
   "job_status":"fail",
   "duration":1.041,
   "completed_at":"2019-06-10T10:56:31.397Z",
   "error":{  

   },
   "error_backtrace":[  
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/job_retry.rb:127:in `rescue in local'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/job_retry.rb:108:in `local'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:136:in `block (5 levels) in dispatch'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/rails.rb:43:in `block in call'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/activesupport-5.1.7/lib/active_support/execution_wrapper.rb:85:in `wrap'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/activesupport-5.1.7/lib/active_support/reloader.rb:68:in `block in wrap'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/activesupport-5.1.7/lib/active_support/execution_wrapper.rb:85:in `wrap'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/activesupport-5.1.7/lib/active_support/reloader.rb:67:in `wrap'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/rails.rb:42:in `call'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:132:in `block (4 levels) in dispatch'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:250:in `stats'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:127:in `block (3 levels) in dispatch'",
      "/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/sidekiq_logging/structured_logger.rb:16:in `call'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:126:in `block (2 levels) in dispatch'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/job_retry.rb:74:in `global'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:125:in `block in dispatch'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/logging.rb:48:in `with_context'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/logging.rb:42:in `with_job_hash_context'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:124:in `dispatch'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:163:in `process'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:83:in `process_one'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/processor.rb:71:in `run'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/util.rb:16:in `watchdog'",
      "/opt/gitlab/embedded/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.7/lib/sidekiq/util.rb:25:in `block in safe_thread'"
   ]
}
Edited by Stan Hu