500 Error when creating a milestone with long title
Summary
When adding a milestone via the API, the server returns 500 if the title is too long (> 255 characters) Similar to this old bug, but with milestones.
Steps to reproduce
POST to the API with a long title parameter. Example:
POST "/api/v3/projects/999/milestones?private_token=[FILTERED]&title=123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890"
What is the current bug behavior?
Client receives a 500 - Internal Server Error
What is the expected correct behavior?
It should give some type of informative error message. This was discovered while attempting to migrate some data from a third-party issue tracker, and gummed up the process.
Relevant logs and/or screenshots
Started POST "/api/v3/projects/999/milestones?private_token=[FILTERED]&title=123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890123456890" for <REDACTED> at 2017-05-04 11:04:53 -0400
ActiveRecord::StatementInvalid (PG::StringDataRightTruncation: ERROR: value too long for type character varying(255)
: INSERT INTO "milestones" ("title", "state", "project_id", "iid", "title_html", "created_at", "updated_at") VALUES ($1, $2, $3, $4, $5, $6, $7) RETURNING "id"):
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/postgresql_adapter.rb:602:in `exec_prepared'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/postgresql_adapter.rb:602:in `block in exec_cache'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/abstract_adapter.rb:484:in `block in log'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/abstract_adapter.rb:478:in `log'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/postgresql_adapter.rb:601:in `exec_cache'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/postgresql_adapter.rb:585:in `execute_and_clear'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/postgresql/database_statements.rb:160:in `exec_query'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/postgresql/database_statements.rb:192:in `exec_insert'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/abstract/database_statements.rb:108:in `insert'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/abstract/query_cache.rb:14:in `insert'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/relation.rb:64:in `insert'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/persistence.rb:524:in `_create_record'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/counter_cache.rb:139:in `_create_record'
/opt/gitlab/embedded/service/gitlab-rails/config/initializers/ar_monkey_patch.rb:12:in `_create_record'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/attribute_methods/dirty.rb:133:in `_create_record'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/callbacks.rb:306:in `block in _create_record'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:117:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:555:in `block (2 levels) in compile'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:505:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:92:in `__run_callbacks__'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:778:in `_run_create_callbacks'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/callbacks.rb:306:in `_create_record'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/timestamp.rb:57:in `_create_record'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/persistence.rb:504:in `create_or_update'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/callbacks.rb:302:in `block in create_or_update'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:117:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:555:in `block (2 levels) in compile'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:505:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:92:in `__run_callbacks__'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:778:in `_run_save_callbacks'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/callbacks.rb:302:in `create_or_update'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/persistence.rb:120:in `save'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/validations.rb:37:in `save'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/attribute_methods/dirty.rb:21:in `save'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/transactions.rb:286:in `block (2 levels) in save'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/transactions.rb:351:in `block in with_transaction_returning_status'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/abstract/database_statements.rb:213:in `block in transaction'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/abstract/transaction.rb:184:in `within_new_transaction'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/abstract/database_statements.rb:213:in `transaction'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/transactions.rb:220:in `transaction'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/transactions.rb:348:in `with_transaction_returning_status'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/transactions.rb:286:in `block in save'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/transactions.rb:301:in `rollback_active_record_state!'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/transactions.rb:285:in `save'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/state_machines-activerecord-0.4.0/lib/state_machines/integrations/active_record.rb:501:in `block in save'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/state_machines-activerecord-0.4.0/lib/state_machines/integrations/active_record.rb:520:in `block in around_save'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/state_machines-0.4.0/lib/state_machines/transition_collection.rb:150:in `block in run_actions'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/state_machines-0.4.0/lib/state_machines/transition_collection.rb:170:in `catch_exceptions'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/state_machines-0.4.0/lib/state_machines/transition_collection.rb:148:in `run_actions'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/state_machines-0.4.0/lib/state_machines/transition_collection.rb:133:in `run_callbacks'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/state_machines-0.4.0/lib/state_machines/transition_collection.rb:212:in `run_callbacks'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/state_machines-0.4.0/lib/state_machines/transition_collection.rb:63:in `block (2 levels) in perform'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/state_machines-0.4.0/lib/state_machines/transition_collection.rb:63:in `catch'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/state_machines-0.4.0/lib/state_machines/transition_collection.rb:63:in `block in perform'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/state_machines-0.4.0/lib/state_machines/transition_collection.rb:186:in `within_transaction'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/state_machines-0.4.0/lib/state_machines/transition_collection.rb:62:in `perform'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/state_machines-activerecord-0.4.0/lib/state_machines/integrations/active_record.rb:520:in `around_save'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/state_machines-activerecord-0.4.0/lib/state_machines/integrations/active_record.rb:501:in `save'
/opt/gitlab/embedded/service/gitlab-rails/app/services/milestones/create_service.rb:6:in `execute'
/opt/gitlab/embedded/service/gitlab-rails/lib/api/milestones.rb:71:in `block (2 levels) in <class:Milestones>'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/endpoint.rb:59:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/endpoint.rb:59:in `block (2 levels) in generate_api_method'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/notifications.rb:166:in `instrument'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/endpoint.rb:58:in `block in generate_api_method'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/endpoint.rb:262:in `block in run'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/notifications.rb:166:in `instrument'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/endpoint.rb:240:in `run'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/endpoint.rb:309:in `block in build_stack'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/middleware/base.rb:31:in `call!'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/middleware/base.rb:24:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/middleware/base.rb:31:in `call!'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/middleware/base.rb:24:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/rack-oauth2-1.2.3/lib/rack/oauth2/server/resource.rb:20:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/rack-oauth2-1.2.3/lib/rack/oauth2/server/resource/bearer.rb:8:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/middleware/error.rb:34:in `block in call!'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/middleware/error.rb:33:in `catch'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/middleware/error.rb:33:in `call!'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/middleware/base.rb:24:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/rack-1.6.5/lib/rack/head.rb:13:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/endpoint.rb:224:in `call!'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/endpoint.rb:218:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/router/route.rb:72:in `exec'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/router.rb:119:in `process_route'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/router.rb:74:in `block in identity'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/router.rb:93:in `transaction'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/router.rb:72:in `identity'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/router.rb:57:in `block in call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/router.rb:135:in `with_optimization'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/router.rb:56:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/api.rb:119:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/api.rb:45:in `call!'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/grape-0.19.1/lib/grape/api.rb:40:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/routing/mapper.rb:51:in `serve'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/journey/router.rb:43:in `block in serve'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/journey/router.rb:30:in `each'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/journey/router.rb:30:in `serve'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/routing/route_set.rb:817:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/omniauth-1.4.2/lib/omniauth/strategy.rb:186:in `call!'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/omniauth-1.4.2/lib/omniauth/strategy.rb:164:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/multipart.rb:93:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/request_profiler/middleware.rb:14:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/go.rb:16:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/etag_caching/middleware.rb:10:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/warden-1.2.6/lib/warden/manager.rb:35:in `block in call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/warden-1.2.6/lib/warden/manager.rb:34:in `catch'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/warden-1.2.6/lib/warden/manager.rb:34:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/rack-cors-0.4.0/lib/rack/cors.rb:80:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/rack-attack-4.4.1/lib/rack/attack.rb:107:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/rack-1.6.5/lib/rack/etag.rb:24:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/rack-1.6.5/lib/rack/conditionalget.rb:38:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/rack-1.6.5/lib/rack/head.rb:13:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/params_parser.rb:27:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/flash.rb:260:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/rack-1.6.5/lib/rack/session/abstract/id.rb:225:in `context'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/rack-1.6.5/lib/rack/session/abstract/id.rb:220:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/cookies.rb:560:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/query_cache.rb:36:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activerecord-4.2.8/lib/active_record/connection_adapters/abstract/connection_pool.rb:653:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:88:in `__run_callbacks__'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:778:in `_run_call_callbacks'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/callbacks.rb:81:in `run_callbacks'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/callbacks.rb:27:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/remote_ip.rb:78:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/railties-4.2.8/lib/rails/rack/logger.rb:38:in `call_app'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/railties-4.2.8/lib/rails/rack/logger.rb:20:in `block in call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/tagged_logging.rb:68:in `block in tagged'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/tagged_logging.rb:26:in `tagged'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/activesupport-4.2.8/lib/active_support/tagged_logging.rb:68:in `tagged'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/railties-4.2.8/lib/rails/rack/logger.rb:20:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/request_context.rb:18:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/request_store-1.3.1/lib/request_store/middleware.rb:9:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/actionpack-4.2.8/lib/action_dispatch/middleware/request_id.rb:21:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/rack-1.6.5/lib/rack/methodoverride.rb:22:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/rack-1.6.5/lib/rack/runtime.rb:18:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/rack-1.6.5/lib/rack/lock.rb:17:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/rack-1.6.5/lib/rack/sendfile.rb:113:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/sentry-raven-2.4.0/lib/raven/integrations/rack.rb:50:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/railties-4.2.8/lib/rails/engine.rb:518:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/railties-4.2.8/lib/rails/application.rb:165:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/railties-4.2.8/lib/rails/railtie.rb:194:in `public_send'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/railties-4.2.8/lib/rails/railtie.rb:194:in `method_missing'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/rack-1.6.5/lib/rack/urlmap.rb:66:in `block in call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/rack-1.6.5/lib/rack/urlmap.rb:50:in `each'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/rack-1.6.5/lib/rack/urlmap.rb:50:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/unicorn-5.1.0/lib/unicorn/http_server.rb:562:in `process_client'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/unicorn-worker-killer-0.4.4/lib/unicorn/worker_killer.rb:52:in `process_client'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/unicorn-5.1.0/lib/unicorn/http_server.rb:658:in `worker_loop'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/unicorn-5.1.0/lib/unicorn/http_server.rb:508:in `spawn_missing_workers'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/unicorn-5.1.0/lib/unicorn/http_server.rb:132:in `start'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/unicorn-5.1.0/bin/unicorn:126:in `<top (required)>'
/opt/gitlab/embedded/bin/unicorn:22:in `load'
/opt/gitlab/embedded/bin/unicorn:22:in `<top (required)>'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.13.7/lib/bundler/cli/exec.rb:74:in `load'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.13.7/lib/bundler/cli/exec.rb:74:in `kernel_load'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.13.7/lib/bundler/cli/exec.rb:27:in `run'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.13.7/lib/bundler/cli.rb:332:in `exec'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.13.7/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.13.7/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.13.7/lib/bundler/vendor/thor/lib/thor.rb:359:in `dispatch'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.13.7/lib/bundler/cli.rb:20:in `dispatch'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.13.7/lib/bundler/vendor/thor/lib/thor/base.rb:440:in `start'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.13.7/lib/bundler/cli.rb:11:in `start'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.13.7/exe/bundle:34:in `block in <top (required)>'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.13.7/lib/bundler/friendly_errors.rb:100:in `with_friendly_errors'
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.13.7/exe/bundle:26:in `<top (required)>'
/opt/gitlab/embedded/bin/bundle:22:in `load'
/opt/gitlab/embedded/bin/bundle:22:in `<main>'
Output of checks
Results of GitLab environment info
System information System: CentOS 6.8 Current User: git Using RVM: no Ruby Version: 2.3.3p222 Gem Version: 2.6.6 Bundler Version:1.13.7 Rake Version: 10.5.0 Redis Version: 3.2.5 Git Version: 2.11.1 Sidekiq Version:4.2.7
GitLab information Version: 9.1.1 Revision: d3123f6 Directory: /opt/gitlab/embedded/service/gitlab-rails DB Adapter: postgresql URL: https://gitlab.exactearth.com HTTP Clone URL: https://gitlab.exactearth.com/some-group/some-project.git SSH Clone URL: git@gitlab.exactearth.com:some-group/some-project.git Using LDAP: yes Using Omniauth: no
GitLab Shell Version: 5.0.2 Repository storage paths:
- default: /var/opt/gitlab/git-data/repositories Hooks: /opt/gitlab/embedded/service/gitlab-shell/hooks Git: /opt/gitlab/embedded/bin/git
Results of GitLab application Check
Checking GitLab Shell ...GitLab Shell version >= 5.0.2 ? ... OK (5.0.2) Repo base directory exists? default... yes Repo storage directories are symlinks? default... no Repo paths owned by git:git? default... yes Repo paths access is drwxrws---? default... yes hooks directories in repos are links: ... 7/4 ... ok 8/6 ... ok 7/7 ... ok 7/8 ... ok 7/9 ... ok 7/10 ... ok 7/11 ... ok 4/12 ... ok 7/13 ... ok 7/14 ... ok 7/16 ... ok 7/18 ... ok 7/19 ... ok 7/20 ... ok 7/21 ... ok 7/22 ... ok 7/23 ... ok 7/24 ... ok 7/25 ... ok 7/26 ... ok 7/27 ... ok 7/28 ... ok 7/29 ... ok 8/30 ... ok 7/31 ... ok 7/32 ... ok 7/33 ... ok 7/34 ... ok 7/35 ... ok 7/36 ... ok 7/37 ... ok 7/38 ... ok 7/39 ... ok 7/40 ... ok 7/41 ... ok 7/42 ... ok 7/43 ... ok 7/44 ... ok 7/45 ... ok 7/46 ... ok 7/47 ... ok 7/48 ... ok 7/49 ... ok 7/50 ... ok 7/51 ... ok 7/52 ... ok 7/53 ... ok 7/54 ... ok 7/55 ... ok 7/56 ... ok 7/57 ... ok 7/58 ... ok 7/59 ... ok 7/61 ... repository is empty 7/62 ... ok 7/63 ... ok 7/64 ... ok 7/65 ... ok 7/66 ... ok 7/67 ... repository is empty 7/68 ... ok 7/69 ... ok 7/70 ... ok 7/71 ... ok 7/72 ... ok 7/73 ... ok 7/74 ... ok 7/75 ... ok 7/76 ... ok 7/77 ... ok 7/78 ... ok 7/79 ... ok 7/80 ... ok 7/81 ... ok 7/82 ... ok 7/83 ... ok 7/84 ... ok 7/85 ... ok 7/86 ... ok 7/87 ... ok 7/88 ... ok 4/89 ... ok 7/90 ... ok 7/91 ... ok 5/92 ... ok 5/93 ... ok 7/94 ... ok 7/95 ... ok 7/96 ... ok 7/97 ... ok 7/98 ... ok 7/99 ... ok 7/100 ... ok 8/101 ... ok 7/102 ... ok 7/103 ... ok 8/104 ... ok 8/105 ... ok 8/106 ... ok 8/107 ... ok 8/108 ... ok 8/109 ... ok 8/110 ... ok 8/111 ... ok 3/112 ... ok 5/113 ... ok 5/115 ... ok 7/116 ... ok 5/117 ... ok 7/118 ... ok 7/119 ... ok 7/121 ... ok 8/126 ... ok 8/127 ... ok 7/128 ... ok 3/129 ... ok 7/130 ... ok 7/131 ... ok 7/132 ... ok 7/133 ... ok 7/134 ... ok 7/135 ... ok 7/136 ... ok 7/137 ... ok 7/138 ... ok 7/139 ... ok 7/140 ... ok 7/141 ... ok 7/142 ... ok 7/143 ... ok 7/144 ... repository is empty 7/145 ... ok 7/146 ... ok 7/147 ... ok 7/148 ... ok 7/149 ... ok 7/150 ... ok 7/152 ... ok 7/153 ... ok 7/155 ... ok 7/156 ... repository is empty 7/158 ... ok 7/159 ... ok 7/160 ... repository is empty 7/161 ... ok 7/162 ... ok 7/163 ... ok 7/165 ... ok 7/167 ... ok 7/168 ... ok 7/169 ... ok 7/170 ... ok 7/171 ... ok 7/173 ... ok 7/174 ... ok 7/175 ... ok 7/176 ... ok 7/177 ... ok 7/178 ... ok 7/179 ... ok 7/180 ... ok 7/181 ... ok 7/183 ... ok 7/184 ... ok 7/185 ... ok 7/186 ... ok 7/187 ... ok 3/188 ... repository is empty 7/189 ... ok 3/190 ... ok 5/191 ... ok 7/192 ... ok 3/193 ... repository is empty 7/194 ... ok 7/195 ... ok 4/196 ... repository is empty 7/198 ... ok 7/199 ... ok 7/200 ... ok 7/201 ... repository is empty 7/202 ... ok 5/203 ... ok 5/205 ... repository is empty Running /opt/gitlab/embedded/service/gitlab-shell/bin/check Check GitLab API access: OK Access to /var/opt/gitlab/.ssh/authorized_keys: OK Send ping to redis server: OK gitlab-shell self-check successful
Checking GitLab Shell ... Finished
Checking Sidekiq ...
Running? ... yes Number of Sidekiq processes ... 1
Checking Sidekiq ... Finished
Checking Reply by email ...
Reply by email is disabled in config/gitlab.yml
Checking Reply by email ... Finished
Checking LDAP ...
Server: ldapmain LDAP authentication... Success LDAP users with access to your GitLab server (only showing the first 100 results) <Usernames REDACTED: WTF do you think this is OK to ask for?>
Checking LDAP ... Finished
Checking GitLab ...
Git configured with autocrlf=input? ... yes Database config exists? ... yes All migrations up? ... yes Database contains orphaned GroupMembers? ... no GitLab config exists? ... yes GitLab config outdated? ... no Log directory writable? ... yes Tmp directory writable? ... yes Uploads directory setup correctly? ... yes Init script exists? ... skipped (omnibus-gitlab has no init script) Init script up-to-date? ... skipped (omnibus-gitlab has no init script) projects have namespace: ... 7/4 ... yes 8/6 ... yes 7/7 ... yes 7/8 ... yes 7/9 ... yes 7/10 ... yes 7/11 ... yes 4/12 ... yes 7/13 ... yes 7/14 ... yes 7/16 ... yes 7/18 ... yes 7/19 ... yes 7/20 ... yes 7/21 ... yes 7/22 ... yes 7/23 ... yes 7/24 ... yes 7/25 ... yes 7/26 ... yes 7/27 ... yes 7/28 ... yes 7/29 ... yes 8/30 ... yes 7/31 ... yes 7/32 ... yes 7/33 ... yes 7/34 ... yes 7/35 ... yes 7/36 ... yes 7/37 ... yes 7/38 ... yes 7/39 ... yes 7/40 ... yes 7/41 ... yes 7/42 ... yes 7/43 ... yes 7/44 ... yes 7/45 ... yes 7/46 ... yes 7/47 ... yes 7/48 ... yes 7/49 ... yes 7/50 ... yes 7/51 ... yes 7/52 ... yes 7/53 ... yes 7/54 ... yes 7/55 ... yes 7/56 ... yes 7/57 ... yes 7/58 ... yes 7/59 ... yes 7/61 ... yes 7/62 ... yes 7/63 ... yes 7/64 ... yes 7/65 ... yes 7/66 ... yes 7/67 ... yes 7/68 ... yes 7/69 ... yes 7/70 ... yes 7/71 ... yes 7/72 ... yes 7/73 ... yes 7/74 ... yes 7/75 ... yes 7/76 ... yes 7/77 ... yes 7/78 ... yes 7/79 ... yes 7/80 ... yes 7/81 ... yes 7/82 ... yes 7/83 ... yes 7/84 ... yes 7/85 ... yes 7/86 ... yes 7/87 ... yes 7/88 ... yes 4/89 ... yes 7/90 ... yes 7/91 ... yes 5/92 ... yes 5/93 ... yes 7/94 ... yes 7/95 ... yes 7/96 ... yes 7/97 ... yes 7/98 ... yes 7/99 ... yes 7/100 ... yes 8/101 ... yes 7/102 ... yes 7/103 ... yes 8/104 ... yes 8/105 ... yes 8/106 ... yes 8/107 ... yes 8/108 ... yes 8/109 ... yes 8/110 ... yes 8/111 ... yes 3/112 ... yes 5/113 ... yes 5/115 ... yes 7/116 ... yes 5/117 ... yes 7/118 ... yes 7/119 ... yes 7/121 ... yes 8/126 ... yes 8/127 ... yes 7/128 ... yes 3/129 ... yes 7/130 ... yes 7/131 ... yes 7/132 ... yes 7/133 ... yes 7/134 ... yes 7/135 ... yes 7/136 ... yes 7/137 ... yes 7/138 ... yes 7/139 ... yes 7/140 ... yes 7/141 ... yes 7/142 ... yes 7/143 ... yes 7/144 ... yes 7/145 ... yes 7/146 ... yes 7/147 ... yes 7/148 ... yes 7/149 ... yes 7/150 ... yes 7/152 ... yes 7/153 ... yes 7/155 ... yes 7/156 ... yes 7/158 ... yes 7/159 ... yes 7/160 ... yes 7/161 ... yes 7/162 ... yes 7/163 ... yes 7/165 ... yes 7/167 ... yes 7/168 ... yes 7/169 ... yes 7/170 ... yes 7/171 ... yes 7/173 ... yes 7/174 ... yes 7/175 ... yes 7/176 ... yes 7/177 ... yes 7/178 ... yes 7/179 ... yes 7/180 ... yes 7/181 ... yes 7/183 ... yes 7/184 ... yes 7/185 ... yes 7/186 ... yes 7/187 ... yes 3/188 ... yes 7/189 ... yes 3/190 ... yes 5/191 ... yes 7/192 ... yes 3/193 ... yes 7/194 ... yes 7/195 ... yes 4/196 ... yes 7/198 ... yes 7/199 ... yes 7/200 ... yes 7/201 ... yes 7/202 ... yes 5/203 ... yes 5/205 ... yes Redis version >= 2.8.0? ... yes Ruby version >= 2.1.0 ? ... yes (2.3.3) Your git bin path is "/opt/gitlab/embedded/bin/git" Git version >= 2.7.3 ? ... yes (2.11.1) Active users: 28
Checking GitLab ... Finished