Skip to content

Commit a1d823f

Browse files
iHiDclaude
andauthored
Increase bootcamp code columns from TEXT to MEDIUMTEXT (#8489)
The `code` column on bootcamp_submissions, bootcamp_solutions, and bootcamp_drawings used MySQL TEXT (64KB with utf8mb4), which is too small for some user submissions. Upgrade to MEDIUMTEXT (16MB) to prevent ActiveRecord::ValueTooLong errors. Closes #8483 Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 41c033d commit a1d823f

2 files changed

Lines changed: 13 additions & 4 deletions

File tree

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
class IncreaseBootcampCodeColumnSizes < ActiveRecord::Migration[7.1]
2+
def change
3+
return if Rails.env.production?
4+
5+
change_column :bootcamp_submissions, :code, :text, size: :medium
6+
change_column :bootcamp_solutions, :code, :text, size: :medium
7+
change_column :bootcamp_drawings, :code, :text, size: :medium
8+
end
9+
end

db/schema.rb

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
#
1111
# It's strongly recommended that you check this file into your version control system.
1212

13-
ActiveRecord::Schema[7.1].define(version: 2025_12_11_055432) do
13+
ActiveRecord::Schema[7.1].define(version: 2026_02_09_141203) do
1414
create_table "active_storage_attachments", charset: "utf8mb4", collation: "utf8mb4_unicode_ci", force: :cascade do |t|
1515
t.string "name", null: false
1616
t.string "record_type", null: false
@@ -106,7 +106,7 @@
106106
create_table "bootcamp_drawings", charset: "utf8mb4", collation: "utf8mb4_unicode_ci", force: :cascade do |t|
107107
t.bigint "user_id", null: false
108108
t.string "uuid", null: false
109-
t.text "code", null: false
109+
t.text "code", size: :medium, null: false
110110
t.datetime "created_at", null: false
111111
t.datetime "updated_at", null: false
112112
t.string "title", null: false
@@ -173,7 +173,7 @@
173173
t.bigint "user_id"
174174
t.bigint "exercise_id"
175175
t.string "uuid", null: false
176-
t.text "code", null: false
176+
t.text "code", size: :medium, null: false
177177
t.datetime "completed_at"
178178
t.datetime "created_at", null: false
179179
t.datetime "updated_at", null: false
@@ -190,7 +190,7 @@
190190
t.string "uuid", null: false
191191
t.bigint "solution_id"
192192
t.integer "status", limit: 2, null: false
193-
t.text "code", null: false
193+
t.text "code", size: :medium, null: false
194194
t.text "readonly_ranges", null: false
195195
t.text "test_results", null: false
196196
t.datetime "created_at", null: false

0 commit comments

Comments
 (0)