testmycode / testmycode/tmc-server

ArgumentError: string contains null byte when saving submission results

Open
#390 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Ruby
Stars
51
Forks
42
Avg merge
1h 27m
Merged PRs (30d)
1

Description

I've seen these a few time in the logs recently: ArgumentError: string contains null byte

4.2.6/lib/active_record/associations/collection_proxy.rb:970:in `<<'
/home/tmc/srv/hy/lib/test_run_grader.rb:63:in `block in create_test_case_runs'
/home/tmc/srv/hy/lib/test_run_grader.rb:53:in `each'
/home/tmc/srv/hy/lib/test_run_grader.rb:53:in `create_test_case_runs'
/home/tmc/srv/hy/lib/test_run_grader.rb:30:in `grade_results'
/home/tmc/srv/hy/lib/sandbox_results_saver.rb:48:in `block in save_results'
/usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/connection_adapters/abstract/database_statements.rb:213:in `block in transaction'
ArgumentError string contains null byte /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/connection_adapters/postgresql_adapter.rb:602:in `exec_prepared' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/connection_adapters/postgresql_adapter.rb:602:in`block in exec_cache' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/connection_adapters/abstract_adapter.rb:472:in `block in log' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/notifications/instrumenter.rb:20:in`instrument' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/connection_adapters/abstract_adapter.rb:466:in `log' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/connection_adapters/postgresql_adapter.rb:601:in`exec_cache' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/connection_adapters/postgresql_adapter.rb:585:in `execute_and_clear' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/connection_adapters/postgresql/database_statements.rb:160:in`exec_query' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/connection_adapters/postgresql/database_statements.rb:192:in `exec_insert' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/connection_adapters/abstract/database_statements.rb:108:in`insert' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/connection_adapters/abstract/query_cache.rb:14:in `insert' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/relation.rb:64:in`insert' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/persistence.rb:524:in `_create_record' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/counter_cache.rb:139:in`_create_record' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/locking/optimistic.rb:75:in `_create_record' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/attribute_methods/dirty.rb:133:in`_create_record' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/callbacks.rb:306:in `block in _create_record' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:88:in`__run_callbacks__' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:778:in `_run_create_callbacks' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/callbacks.rb:306:in`_create_record' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/timestamp.rb:57:in `_create_record' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/persistence.rb:504:in`create_or_update' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/callbacks.rb:302:in `block in create_or_update' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:117:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:117:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:555:in`block (2 levels) in compile' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:505:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:505:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:92:in `__run_callbacks__' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:778:in `_run_save_callbacks' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/callbacks.rb:302:in`create_or_update' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/persistence.rb:120:in `save' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/validations.rb:37:in`save' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/attribute_methods/dirty.rb:21:in `save' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/transactions.rb:286:in`block (2 levels) in save' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/transactions.rb:351:in `block in with_transaction_returning_status' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/connection_adapters/abstract/database_statements.rb:211:in`transaction' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/transactions.rb:220:in `transaction' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/transactions.rb:348:in`with_transaction_returning_status' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/transactions.rb:286:in `block in save' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/transactions.rb:301:in`rollback_active_record_state!' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/transactions.rb:285:in `save' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/active_record_helper.rb:26:in`block in save' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/transaction.rb:848:in `with_database_metric_name' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent.rb:572:in`with_database_metric_name' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/active_record_helper.rb:25:in `save' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/associations/has_many_association.rb:41:in`insert_record' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/associations/collection_association.rb:563:in `block (2 levels) in concat_records' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/associations/collection_association.rb:408:in`replace_on_target' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/associations/collection_association.rb:403:in `add_to_target' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/associations/collection_association.rb:562:in`block in concat_records' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/associations/collection_association.rb:560:in `each' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/associations/collection_association.rb:560:in`concat_records' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/associations/has_many_association.rb:180:in `concat_records' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/associations/collection_association.rb:168:in`block in concat' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/associations/collection_association.rb:183:in `block in transaction' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/connection_adapters/abstract/database_statements.rb:211:in`transaction' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/transactions.rb:220:in `transaction' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/associations/collection_association.rb:182:in`transaction' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/associations/collection_association.rb:168:in `concat' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/associations/collection_proxy.rb:970:in`<<' /home/tmc/srv/hy/lib/test_run_grader.rb:63:in `block in create_test_case_runs' /home/tmc/srv/hy/lib/test_run_grader.rb:53:in`each' /home/tmc/srv/hy/lib/test_run_grader.rb:53:in `create_test_case_runs' /home/tmc/srv/hy/lib/test_run_grader.rb:30:in`grade_results' /home/tmc/srv/hy/lib/sandbox_results_saver.rb:48:in `block in save_results' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/connection_adapters/abstract/database_statements.rb:213:in`block in transaction' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/connection_adapters/abstract/transaction.rb:184:in `within_new_transaction' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/connection_adapters/abstract/database_statements.rb:213:in`transaction' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/transactions.rb:220:in `transaction' /home/tmc/srv/hy/lib/sandbox_results_saver.rb:8:in`save_results' /home/tmc/srv/hy/app/controllers/results_controller.rb:17:in `create' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_controller/metal/implicit_render.rb:4:in`send_action' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/abstract_controller/base.rb:198:in `process_action' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_controller/metal/rendering.rb:10:in`process_action' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/abstract_controller/callbacks.rb:20:in `block in process_action' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:117:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:117:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:555:in`block (2 levels) in compile' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:505:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:505:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:92:in `__run_callbacks__' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:778:in`_run_process_action_callbacks' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:81:in `run_callbacks' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/abstract_controller/callbacks.rb:19:in`process_action' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_controller/metal/rescue.rb:29:in `process_action' /usr/local/rvm/gems/ruby-2.2.1/gems/logstasher-0.9.0/lib/logstasher/rails_ext/action_controller/metal/instrumentation.rb:34:in`block in process_action' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/notifications.rb:164:in `block in instrument' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/notifications/instrumenter.rb:20:in`instrument' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/notifications.rb:164:in `instrument' /usr/local/rvm/gems/ruby-2.2.1/gems/logstasher-0.9.0/lib/logstasher/rails_ext/action_controller/metal/instrumentation.rb:21:in`process_action' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_controller/metal/params_wrapper.rb:250:in `process_action' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/railties/controller_runtime.rb:18:in`process_action' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/abstract_controller/base.rb:137:in `process' /usr/local/rvm/gems/ruby-2.2.1/gems/actionview-4.2.6/lib/action_view/rendering.rb:30:in`process' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_controller/metal.rb:196:in `dispatch' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_controller/metal/rack_delegation.rb:13:in`dispatch' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_controller/metal.rb:237:in `block in action' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_dispatch/routing/route_set.rb:74:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_dispatch/routing/route_set.rb:74:in `dispatch' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_dispatch/routing/route_set.rb:43:in`serve' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_dispatch/journey/router.rb:43:in `block in serve' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_dispatch/journey/router.rb:30:in`each' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_dispatch/journey/router.rb:30:in `serve' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_dispatch/routing/route_set.rb:817:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/rack/agent_hooks.rb:30:in`traced_call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/rack/browser_monitoring.rb:32:in`traced_call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/rack-1.6.4/lib/rack/etag.rb:24:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/rack-1.6.4/lib/rack/conditionalget.rb:38:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/rack-1.6.4/lib/rack/head.rb:13:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_dispatch/middleware/params_parser.rb:27:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_dispatch/middleware/flash.rb:260:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/rack-1.6.4/lib/rack/session/abstract/id.rb:225:in`context' /usr/local/rvm/gems/ruby-2.2.1/gems/rack-1.6.4/lib/rack/session/abstract/id.rb:220:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_dispatch/middleware/cookies.rb:560:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/query_cache.rb:36:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/activerecord-4.2.6/lib/active_record/connection_adapters/abstract/connection_pool.rb:653:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_dispatch/middleware/callbacks.rb:29:in `block in call' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:88:in`__run_callbacks__' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:778:in `_run_call_callbacks' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/callbacks.rb:81:in`run_callbacks' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_dispatch/middleware/callbacks.rb:27:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_dispatch/middleware/remote_ip.rb:78:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_dispatch/middleware/show_exceptions.rb:30:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/railties-4.2.6/lib/rails/rack/logger.rb:38:in `call_app' /usr/local/rvm/gems/ruby-2.2.1/gems/railties-4.2.6/lib/rails/rack/logger.rb:20:in`block in call' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/tagged_logging.rb:68:in `block in tagged' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/tagged_logging.rb:26:in`tagged' /usr/local/rvm/gems/ruby-2.2.1/gems/activesupport-4.2.6/lib/active_support/tagged_logging.rb:68:in `tagged' /usr/local/rvm/gems/ruby-2.2.1/gems/railties-4.2.6/lib/rails/rack/logger.rb:20:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/request_store-1.3.0/lib/request_store/middleware.rb:9:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/actionpack-4.2.6/lib/action_dispatch/middleware/request_id.rb:21:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/rack-1.6.4/lib/rack/methodoverride.rb:22:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/rack-1.6.4/lib/rack/runtime.rb:18:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/rack-1.6.4/lib/rack/sendfile.rb:113:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/rack-cors-0.4.0/lib/rack/cors.rb:80:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/railties-4.2.6/lib/rails/engine.rb:518:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/railties-4.2.6/lib/rails/application.rb:165:in `call' /usr/local/rvm/gems/ruby-2.2.1/gems/railties-4.2.6/lib/rails/railtie.rb:194:in`public_send' /usr/local/rvm/gems/ruby-2.2.1/gems/railties-4.2.6/lib/rails/railtie.rb:194:in `method_missing' /usr/local/rvm/gems/ruby-2.2.1/gems/newrelic_rpm-3.15.1.316/lib/new_relic/agent/instrumentation/middleware_tracing.rb:96:in`call' /usr/local/rvm/gems/ruby-2.2.1/gems/passenger-5.0.26/src/ruby_supportlib/phusion_passenger/rack/thread_handler_extension.rb:97:in `process_request' /usr/local/rvm/gems/ruby-2.2.1/gems/passenger-5.0.26/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb:160:in`accept_and_process_next_request' /usr/local/rvm/gems/ruby-2.2.1/gems/passenger-5.0.26/src/ruby_supportlib/phusion_passenger/request_handler/thread_handler.rb:113:in `main_loop' /usr/local/rvm/gems/ruby-2.2.1/gems/passenger-5.0.26/src/ruby_supportlib/phusion_passenger/request_handler.rb:416:in`block (3 levels) in start_threads' /usr/local/rvm/gems/ruby-2.2.1/gems/passenger-5.0.26/src/ruby_supportlib/phusion_passenger/utils.rb:113:in `block in create_thread_and_abort_on_exception'

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing lib/test_run_grader.rb, especially create_test_case_runs, through lib/sandbox_results_saver.rb and app/controllers/results_controller.rb. Reproduce a submission result containing a null byte and identify which value reaches PostgreSQL through ActiveRecord. Done means the failing save path is understood and no longer raises this error, with the relevant behavior verified.

Written by the indexing model from the issue text.

Assessment

Tech stack
postgresql, rails, ruby
Domain
backend, databases
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.