ActiveModel::RangeError: 4294967295 is out of range for ActiveModel::Type::Integer with limit 2 bytes
Sentry error: https://new-sentry.gitlab.net/organizations/gitlab/issues/738240
We are missing validation for exit_code
: https://gitlab.com/gitlab-org/gitlab/blob/161dc75fe23155856a31af81fc51c9d17d6db9e0/db/structure.sql#L1030.
ActiveModel::RangeError: 4294967295 is out of range for ActiveModel::Type::Integer with limit 2 bytes
from activemodel (7.0.8.1) lib/active_model/type/integer.rb:52:in `ensure_in_range'
from activemodel (7.0.8.1) lib/active_model/type/integer.rb:28:in `serialize'
from activemodel (7.0.8.1) lib/active_model/attribute.rb:56:in `value_for_database'
from activerecord (7.0.8.1) lib/arel/collectors/substitute_binds.rb:19:in `add_bind'
from activerecord (7.0.8.1) lib/arel/visitors/to_sql.rb:743:in `visit_ActiveModel_Attribute'
from activerecord (7.0.8.1) lib/arel/visitors/visitor.rb:30:in `visit'
from activerecord (7.0.8.1) lib/arel/visitors/to_sql.rb:635:in `visit_Arel_Nodes_Assignment'
from activerecord (7.0.8.1) lib/arel/visitors/visitor.rb:30:in `visit'
from activerecord (7.0.8.1) lib/arel/visitors/to_sql.rb:827:in `block in inject_join'
from activerecord (7.0.8.1) lib/arel/visitors/to_sql.rb:825:in `each'
from activerecord (7.0.8.1) lib/arel/visitors/to_sql.rb:825:in `each_with_index'
from activerecord (7.0.8.1) lib/arel/visitors/to_sql.rb:825:in `inject_join'
from activerecord (7.0.8.1) lib/arel/visitors/to_sql.rb:179:in `collect_nodes_for'
from activerecord (7.0.8.1) lib/arel/visitors/to_sql.rb:44:in `visit_Arel_Nodes_UpdateStatement'
from activerecord (7.0.8.1) lib/arel/visitors/visitor.rb:30:in `visit'
from activerecord (7.0.8.1) lib/arel/visitors/visitor.rb:11:in `accept'
from activerecord (7.0.8.1) lib/arel/visitors/to_sql.rb:18:in `compile'
from activerecord (7.0.8.1) lib/active_record/connection_adapters/abstract/database_statements.rb:37:in `to_sql_and_binds'
from activerecord (7.0.8.1) lib/active_record/connection_adapters/abstract/database_statements.rb:174:in `update'
from activerecord (7.0.8.1) lib/active_record/connection_adapters/abstract/query_cache.rb:22:in `update'
from lib/gitlab/database/load_balancing/connection_proxy.rb:127:in `public_send'
from lib/gitlab/database/load_balancing/connection_proxy.rb:127:in `block in write_using_load_balancer'
from lib/gitlab/database/load_balancing/load_balancer.rb:141:in `block in read_write'
from lib/gitlab/database/load_balancing/load_balancer.rb:235:in `retry_with_backoff'
from lib/gitlab/database/load_balancing/load_balancer.rb:130:in `read_write'
from lib/gitlab/database/load_balancing/connection_proxy.rb:126:in `write_using_load_balancer'
from lib/gitlab/database/load_balancing/connection_proxy.rb:61:in `block (2 levels) in <class:ConnectionProxy>'
from activerecord (7.0.8.1) lib/active_record/persistence.rb:513:in `_update_record'
from activerecord (7.0.8.1) lib/active_record/persistence.rb:1060:in `_update_row'
from activerecord (7.0.8.1) lib/active_record/locking/optimistic.rb:93:in `_update_row'
from activerecord (7.0.8.1) lib/active_record/persistence.rb:1082:in `_update_record'
from activerecord (7.0.8.1) lib/active_record/attribute_methods/dirty.rb:216:in `_update_record'
from activerecord (7.0.8.1) lib/active_record/callbacks.rb:463:in `block in _update_record'
from activesupport (7.0.8.1) lib/active_support/callbacks.rb:99:in `run_callbacks'
from activesupport (7.0.8.1) lib/active_support/callbacks.rb:929:in `_run_update_callbacks'
from activerecord (7.0.8.1) lib/active_record/callbacks.rb:463:in `_update_record'
from activerecord (7.0.8.1) lib/active_record/timestamp.rb:121:in `_update_record'
from activerecord (7.0.8.1) lib/active_record/persistence.rb:1069:in `create_or_update'
from activerecord (7.0.8.1) lib/active_record/callbacks.rb:455:in `block in create_or_update'
from activesupport (7.0.8.1) lib/active_support/callbacks.rb:107:in `run_callbacks'
from activesupport (7.0.8.1) lib/active_support/callbacks.rb:929:in `_run_save_callbacks'
from activerecord (7.0.8.1) lib/active_record/callbacks.rb:455:in `create_or_update'
from activerecord (7.0.8.1) lib/active_record/timestamp.rb:126:in `create_or_update'
from activerecord (7.0.8.1) lib/active_record/persistence.rb:615:in `save'
from activerecord (7.0.8.1) lib/active_record/validations.rb:47:in `save'
from activerecord (7.0.8.1) lib/active_record/transactions.rb:298:in `block in save'
from activerecord (7.0.8.1) lib/active_record/transactions.rb:354:in `block in with_transaction_returning_status'
from activerecord (7.0.8.1) lib/active_record/connection_adapters/abstract/database_statements.rb:314:in `transaction'
from lib/gitlab/database/load_balancing/connection_proxy.rb:127:in `public_send'
from lib/gitlab/database/load_balancing/connection_proxy.rb:127:in `block in write_using_load_balancer'
from lib/gitlab/database/load_balancing/load_balancer.rb:141:in `block in read_write'
from lib/gitlab/database/load_balancing/load_balancer.rb:235:in `retry_with_backoff'
from lib/gitlab/database/load_balancing/load_balancer.rb:130:in `read_write'
from lib/gitlab/database/load_balancing/connection_proxy.rb:126:in `write_using_load_balancer'
from lib/gitlab/database/load_balancing/connection_proxy.rb:78:in `transaction'
from activerecord (7.0.8.1) lib/active_record/transactions.rb:350:in `with_transaction_returning_status'
from activerecord (7.0.8.1) lib/active_record/transactions.rb:298:in `save'
from activerecord (7.0.8.1) lib/active_record/suppressor.rb:50:in `save'
from activerecord (7.0.8.1) lib/active_record/autosave_association.rb:455:in `save_has_one_association'
from activerecord (7.0.8.1) lib/active_record/autosave_association.rb:198:in `block in add_autosave_association_callbacks'
from activerecord (7.0.8.1) lib/active_record/autosave_association.rb:166:in `instance_eval'
from activerecord (7.0.8.1) lib/active_record/autosave_association.rb:166:in `block in define_non_cyclic_method'
from activesupport (7.0.8.1) lib/active_support/callbacks.rb:400:in `block in make_lambda'
from activesupport (7.0.8.1) lib/active_support/callbacks.rb:236:in `block in halting_and_conditional'
from activesupport (7.0.8.1) lib/active_support/callbacks.rb:599:in `block in invoke_after'
from activesupport (7.0.8.1) lib/active_support/callbacks.rb:599:in `each'
from activesupport (7.0.8.1) lib/active_support/callbacks.rb:599:in `invoke_after'
from activesupport (7.0.8.1) lib/active_support/callbacks.rb:108:in `run_callbacks'
from activesupport (7.0.8.1) lib/active_support/callbacks.rb:929:in `_run_update_callbacks'
from activerecord (7.0.8.1) lib/active_record/callbacks.rb:463:in `_update_record'
from activerecord (7.0.8.1) lib/active_record/timestamp.rb:121:in `_update_record'
from activerecord (7.0.8.1) lib/active_record/persistence.rb:1069:in `create_or_update'
from activerecord (7.0.8.1) lib/active_record/callbacks.rb:455:in `block in create_or_update'
from activesupport (7.0.8.1) lib/active_support/callbacks.rb:118:in `block in run_callbacks'
from activerecord (7.0.8.1) lib/active_record/autosave_association.rb:370:in `around_save_collection_association'
from activesupport (7.0.8.1) lib/active_support/callbacks.rb:127:in `block in run_callbacks'
from activesupport (7.0.8.1) lib/active_support/callbacks.rb:138:in `run_callbacks'
from activesupport (7.0.8.1) lib/active_support/callbacks.rb:929:in `_run_save_callbacks'
from activerecord (7.0.8.1) lib/active_record/callbacks.rb:455:in `create_or_update'
from activerecord (7.0.8.1) lib/active_record/timestamp.rb:126:in `create_or_update'
from activerecord (7.0.8.1) lib/active_record/persistence.rb:615:in `save'
from activerecord (7.0.8.1) lib/active_record/validations.rb:47:in `save'
from activerecord (7.0.8.1) lib/active_record/transactions.rb:298:in `block in save'
from activerecord (7.0.8.1) lib/active_record/transactions.rb:354:in `block in with_transaction_returning_status'
from activerecord (7.0.8.1) lib/active_record/connection_adapters/abstract/database_statements.rb:314:in `transaction'
from lib/gitlab/database/load_balancing/connection_proxy.rb:127:in `public_send'
from lib/gitlab/database/load_balancing/connection_proxy.rb:127:in `block in write_using_load_balancer'
from lib/gitlab/database/load_balancing/load_balancer.rb:141:in `block in read_write'
from lib/gitlab/database/load_balancing/load_balancer.rb:235:in `retry_with_backoff'
from lib/gitlab/database/load_balancing/load_balancer.rb:130:in `read_write'
from lib/gitlab/database/load_balancing/connection_proxy.rb:126:in `write_using_load_balancer'
from lib/gitlab/database/load_balancing/connection_proxy.rb:78:in `transaction'
from activerecord (7.0.8.1) lib/active_record/transactions.rb:350:in `with_transaction_returning_status'
from activerecord (7.0.8.1) lib/active_record/transactions.rb:298:in `save'
from activerecord (7.0.8.1) lib/active_record/suppressor.rb:50:in `save'
from state_machines-activerecord (0.8.0) lib/state_machines/integrations/active_record.rb:511:in `block in save'
from state_machines-activerecord (0.8.0) lib/state_machines/integrations/active_record.rb:530:in `block in around_save'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:150:in `block in run_actions'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:170:in `catch_exceptions'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:148:in `run_actions'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:133:in `run_callbacks'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:224:in `run_callbacks'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:128:in `block in run_callbacks'
from state_machines (0.5.0) lib/state_machines/transition.rb:371:in `before'
from state_machines (0.5.0) lib/state_machines/transition.rb:190:in `block in run_callbacks'
from state_machines (0.5.0) lib/state_machines/transition.rb:292:in `block in pausable'
from state_machines (0.5.0) lib/state_machines/transition.rb:292:in `catch'
from state_machines (0.5.0) lib/state_machines/transition.rb:292:in `pausable'
from state_machines (0.5.0) lib/state_machines/transition.rb:190:in `run_callbacks'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:127:in `run_callbacks'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:212:in `run_callbacks'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:63:in `block (2 levels) in perform'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:63:in `catch'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:63:in `block in perform'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:182:in `block in within_transaction'
from state_machines (0.5.0) lib/state_machines/transition.rb:171:in `block in within_transaction'
from state_machines (0.5.0) lib/state_machines/machine.rb:1868:in `block in within_transaction'
from state_machines-activerecord (0.8.0) lib/state_machines/integrations/active_record.rb:557:in `block in transaction'
from app/models/concerns/cross_database_modification.rb:92:in `block in transaction'
from activerecord (7.0.8.1) lib/active_record/connection_adapters/abstract/transaction.rb:319:in `block in within_new_transaction'
from activesupport (7.0.8.1) lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
from activesupport (7.0.8.1) lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
from activesupport (7.0.8.1) lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
from activesupport (7.0.8.1) lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
from activerecord (7.0.8.1) lib/active_record/connection_adapters/abstract/transaction.rb:317:in `within_new_transaction'
from activerecord (7.0.8.1) lib/active_record/connection_adapters/abstract/database_statements.rb:316:in `transaction'
from lib/gitlab/database/load_balancing/connection_proxy.rb:127:in `public_send'
from lib/gitlab/database/load_balancing/connection_proxy.rb:127:in `block in write_using_load_balancer'
from lib/gitlab/database/load_balancing/load_balancer.rb:141:in `block in read_write'
from lib/gitlab/database/load_balancing/load_balancer.rb:235:in `retry_with_backoff'
from lib/gitlab/database/load_balancing/load_balancer.rb:130:in `read_write'
from lib/gitlab/database/load_balancing/connection_proxy.rb:126:in `write_using_load_balancer'
from lib/gitlab/database/load_balancing/connection_proxy.rb:78:in `transaction'
from activerecord (7.0.8.1) lib/active_record/transactions.rb:209:in `transaction'
from lib/gitlab/database.rb:359:in `block in transaction'
from activesupport (7.0.8.1) lib/active_support/notifications.rb:206:in `block in instrument'
from activesupport (7.0.8.1) lib/active_support/notifications/instrumenter.rb:24:in `instrument'
from activesupport (7.0.8.1) lib/active_support/notifications.rb:206:in `instrument'
from lib/gitlab/database.rb:358:in `transaction'
from app/models/concerns/cross_database_modification.rb:83:in `transaction'
from state_machines-activerecord (0.8.0) lib/state_machines/integrations/active_record.rb:556:in `transaction'
from state_machines (0.5.0) lib/state_machines/machine.rb:1868:in `within_transaction'
from state_machines (0.5.0) lib/state_machines/transition.rb:170:in `within_transaction'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:181:in `within_transaction'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:62:in `perform'
from state_machines-activerecord (0.8.0) lib/state_machines/integrations/active_record.rb:530:in `around_save'
from state_machines-activerecord (0.8.0) lib/state_machines/integrations/active_record.rb:511:in `save'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:154:in `block (2 levels) in run_actions'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:154:in `each'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:154:in `block in run_actions'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:170:in `catch_exceptions'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:148:in `run_actions'
from state_machines (0.5.0) lib/state_machines/transition_collection.rb:60:in `perform'
from state_machines (0.5.0) lib/state_machines/transition.rb:163:in `perform'
from state_machines (0.5.0) lib/state_machines/event.rb:155:in `fire'
from state_machines (0.5.0) lib/state_machines/event.rb:219:in `block in add_actions'
from state_machines (0.5.0) lib/state_machines/machine.rb:729:in `block (2 levels) in define_helper'
from state_machines (0.5.0) lib/state_machines/event.rb:224:in `block in add_actions'
from state_machines (0.5.0) lib/state_machines/machine.rb:729:in `block (2 levels) in define_helper'
from app/models/ci/build.rb:1034:in `drop_with_exit_code!'
from app/services/ci/update_build_state_service.rb:108:in `update_build_state!'
from app/services/ci/update_build_state_service.rb:49:in `process_build_state!'
from app/services/ci/update_build_state_service.rb:29:in `block in execute'
from app/services/ci/update_build_state_service.rb:211:in `block in in_build_trace_lock'