canvas_sync 0.17.19 → 0.17.23.beta4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +45 -1
  3. data/lib/canvas_sync/concerns/sync_mapping.rb +114 -0
  4. data/lib/canvas_sync/generators/install_generator.rb +1 -0
  5. data/lib/canvas_sync/generators/templates/migrations/create_grading_period_groups.rb +22 -0
  6. data/lib/canvas_sync/generators/templates/migrations/create_grading_periods.rb +22 -0
  7. data/lib/canvas_sync/generators/templates/migrations/create_user_observers.rb +17 -0
  8. data/lib/canvas_sync/generators/templates/models/grading_period.rb +8 -0
  9. data/lib/canvas_sync/generators/templates/models/grading_period_group.rb +9 -0
  10. data/lib/canvas_sync/generators/templates/models/user_observer.rb +11 -0
  11. data/lib/canvas_sync/importers/bulk_importer.rb +23 -18
  12. data/lib/canvas_sync/job_batches/chain_builder.rb +1 -1
  13. data/lib/canvas_sync/jobs/report_checker.rb +37 -4
  14. data/lib/canvas_sync/jobs/report_starter.rb +2 -2
  15. data/lib/canvas_sync/processors/assignment_groups_processor.rb +1 -7
  16. data/lib/canvas_sync/processors/assignments_processor.rb +1 -7
  17. data/lib/canvas_sync/processors/context_module_items_processor.rb +1 -7
  18. data/lib/canvas_sync/processors/context_modules_processor.rb +1 -7
  19. data/lib/canvas_sync/processors/model_mappings.yml +68 -0
  20. data/lib/canvas_sync/processors/normal_processor.rb +3 -3
  21. data/lib/canvas_sync/processors/provisioning_report_processor.rb +21 -63
  22. data/lib/canvas_sync/processors/report_processor.rb +14 -9
  23. data/lib/canvas_sync/processors/submissions_processor.rb +1 -7
  24. data/lib/canvas_sync/record.rb +4 -0
  25. data/lib/canvas_sync/version.rb +1 -1
  26. data/lib/canvas_sync.rb +4 -1
  27. data/spec/canvas_sync/processors/provisioning_report_processor_spec.rb +40 -0
  28. data/spec/dummy/app/models/grading_period.rb +14 -0
  29. data/spec/dummy/app/models/grading_period_group.rb +15 -0
  30. data/spec/dummy/app/models/user_observer.rb +17 -0
  31. data/spec/dummy/db/migrate/20210907233329_create_user_observers.rb +23 -0
  32. data/spec/dummy/db/migrate/20210907233330_create_grading_periods.rb +28 -0
  33. data/spec/dummy/db/migrate/20210907233331_create_grading_period_groups.rb +28 -0
  34. data/spec/dummy/db/schema.rb +42 -1
  35. data/spec/dummy/log/development.log +1167 -0
  36. data/spec/dummy/log/test.log +6693 -0
  37. data/spec/support/fixtures/reports/grading_period_groups.csv +2 -0
  38. data/spec/support/fixtures/reports/grading_periods.csv +3 -0
  39. data/spec/support/fixtures/reports/user_observers.csv +3 -0
  40. metadata +33 -18
@@ -0,0 +1,17 @@
1
+ # #
2
+ # AUTO GENERATED MODEL
3
+ # This model was auto generated by the CanvasSync Gem.
4
+ # You can customize it as needed, but make sure you test
5
+ # any changes you make to the auto generated methods.
6
+ #
7
+
8
+
9
+ class UserObserver < ApplicationRecord
10
+ include CanvasSync::Record
11
+ include CanvasSync::Concerns::ApiSyncable
12
+
13
+ validates :canvas_id, uniqueness: true, presence: true
14
+
15
+ belongs_to :observing_user, primary_key: :canvas_id, foreign_key: :observing_user_id, class_name: 'User', optional: true
16
+ belongs_to :observed_user, primary_key: :canvas_id, foreign_key: :observed_user_id, class_name: 'User', optional: true
17
+ end
@@ -0,0 +1,23 @@
1
+ # #
2
+ # AUTO GENERATED MIGRATION
3
+ # This migration was auto generated by the CanvasSync Gem.
4
+ # You can add new columns to this table, but removing or
5
+ # re-naming ones created here may break Canvas Syncing.
6
+ #
7
+
8
+
9
+ class CreateUserObservers < ActiveRecord::Migration[5.1]
10
+ def change
11
+ create_table :user_observers do |t|
12
+ t.bigint :observing_user_id
13
+ t.bigint :observed_user_id
14
+ t.string :workflow_state
15
+
16
+ t.timestamps
17
+ end
18
+
19
+ add_index :user_observers, [:observed_user_id, :observing_user_id], unique: true
20
+ add_index :user_observers, :observing_user_id
21
+ add_index :user_observers, :observed_user_id
22
+ end
23
+ end
@@ -0,0 +1,28 @@
1
+ # #
2
+ # AUTO GENERATED MIGRATION
3
+ # This migration was auto generated by the CanvasSync Gem.
4
+ # You can add new columns to this table, but removing or
5
+ # re-naming ones created here may break Canvas Syncing.
6
+ #
7
+
8
+
9
+ class CreateGradingPeriods < ActiveRecord::Migration[5.1]
10
+ def change
11
+ create_table :grading_periods do |t|
12
+ t.bigint :canvas_id, null: false
13
+ t.string :title
14
+ t.float :weight
15
+ t.datetime :start_date
16
+ t.datetime :end_date
17
+ t.datetime :close_date
18
+ t.bigint :canvas_grading_period_group_id
19
+
20
+ t.string :workflow_state
21
+
22
+ t.timestamps
23
+ end
24
+
25
+ add_index :grading_periods, :canvas_id, unique: true
26
+ add_index :grading_periods, :canvas_grading_period_group_id
27
+ end
28
+ end
@@ -0,0 +1,28 @@
1
+ # #
2
+ # AUTO GENERATED MIGRATION
3
+ # This migration was auto generated by the CanvasSync Gem.
4
+ # You can add new columns to this table, but removing or
5
+ # re-naming ones created here may break Canvas Syncing.
6
+ #
7
+
8
+
9
+ class CreateGradingPeriodGroups < ActiveRecord::Migration[5.1]
10
+ def change
11
+ create_table :grading_period_groups do |t|
12
+ t.bigint :canvas_id, null: false
13
+ t.bigint :canvas_course_id
14
+ t.bigint :canvas_account_id
15
+ t.string :title
16
+ t.boolean :weighted
17
+ t.boolean :display_totals_for_all_grading_periods
18
+
19
+ t.string :workflow_state
20
+
21
+ t.timestamps
22
+ end
23
+
24
+ add_index :grading_period_groups, :canvas_id, unique: true
25
+ add_index :grading_period_groups, :canvas_course_id
26
+ add_index :grading_period_groups, :canvas_account_id
27
+ end
28
+ end
@@ -10,7 +10,7 @@
10
10
  #
11
11
  # It's strongly recommended that you check this file into your version control system.
12
12
 
13
- ActiveRecord::Schema.define(version: 2020_10_30_210836) do
13
+ ActiveRecord::Schema.define(version: 2021_09_07_233331) do
14
14
 
15
15
  # These are extensions that must be enabled in order to support this database
16
16
  enable_extension "plpgsql"
@@ -173,6 +173,36 @@ ActiveRecord::Schema.define(version: 2020_10_30_210836) do
173
173
  t.index ["canvas_user_id"], name: "index_enrollments_on_canvas_user_id"
174
174
  end
175
175
 
176
+ create_table "grading_period_groups", force: :cascade do |t|
177
+ t.bigint "canvas_id", null: false
178
+ t.bigint "canvas_course_id"
179
+ t.bigint "canvas_account_id"
180
+ t.string "title"
181
+ t.boolean "weighted"
182
+ t.boolean "display_totals_for_all_grading_periods"
183
+ t.string "workflow_state"
184
+ t.datetime "created_at", null: false
185
+ t.datetime "updated_at", null: false
186
+ t.index ["canvas_account_id"], name: "index_grading_period_groups_on_canvas_account_id"
187
+ t.index ["canvas_course_id"], name: "index_grading_period_groups_on_canvas_course_id"
188
+ t.index ["canvas_id"], name: "index_grading_period_groups_on_canvas_id", unique: true
189
+ end
190
+
191
+ create_table "grading_periods", force: :cascade do |t|
192
+ t.bigint "canvas_id", null: false
193
+ t.string "title"
194
+ t.float "weight"
195
+ t.datetime "start_date"
196
+ t.datetime "end_date"
197
+ t.datetime "close_date"
198
+ t.bigint "canvas_grading_period_group_id"
199
+ t.string "workflow_state"
200
+ t.datetime "created_at", null: false
201
+ t.datetime "updated_at", null: false
202
+ t.index ["canvas_grading_period_group_id"], name: "index_grading_periods_on_canvas_grading_period_group_id"
203
+ t.index ["canvas_id"], name: "index_grading_periods_on_canvas_id", unique: true
204
+ end
205
+
176
206
  create_table "group_memberships", force: :cascade do |t|
177
207
  t.bigint "canvas_id", null: false
178
208
  t.bigint "canvas_user_id", null: false
@@ -275,6 +305,17 @@ ActiveRecord::Schema.define(version: 2020_10_30_210836) do
275
305
  t.index ["canvas_id"], name: "index_terms_on_canvas_id", unique: true
276
306
  end
277
307
 
308
+ create_table "user_observers", force: :cascade do |t|
309
+ t.bigint "observing_user_id"
310
+ t.bigint "observed_user_id"
311
+ t.string "workflow_state"
312
+ t.datetime "created_at", null: false
313
+ t.datetime "updated_at", null: false
314
+ t.index ["observed_user_id", "observing_user_id"], name: "index_user_observers_on_observed_user_id_and_observing_user_id", unique: true
315
+ t.index ["observed_user_id"], name: "index_user_observers_on_observed_user_id"
316
+ t.index ["observing_user_id"], name: "index_user_observers_on_observing_user_id"
317
+ end
318
+
278
319
  create_table "users", force: :cascade do |t|
279
320
  t.bigint "canvas_id", null: false
280
321
  t.string "sis_id"
@@ -0,0 +1,1167 @@
1
+  (0.8ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
2
+  (0.5ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
3
+  (0.2ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
4
+  (0.1ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
5
+  (0.2ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
6
+  (0.2ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
7
+  (54.8ms) DROP DATABASE IF EXISTS "canvas_sync_development"
8
+  (50.9ms) DROP DATABASE IF EXISTS "canvas_sync_test"
9
+  (108.5ms) CREATE DATABASE "canvas_sync_development" ENCODING = 'unicode'
10
+  (114.3ms) CREATE DATABASE "canvas_sync_test" ENCODING = 'unicode'
11
+  (17.6ms) CREATE TABLE "schema_migrations" ("version" character varying NOT NULL PRIMARY KEY)
12
+  (9.4ms) CREATE TABLE "ar_internal_metadata" ("key" character varying NOT NULL PRIMARY KEY, "value" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
13
+  (0.4ms) SELECT pg_try_advisory_lock(1438354376499275445)
14
+  (0.5ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
15
+ Migrating to CreateCanvasSyncJobLog (20170915210836)
16
+  (0.2ms) BEGIN
17
+  (9.9ms) CREATE TABLE "canvas_sync_job_logs" ("id" serial NOT NULL PRIMARY KEY, "started_at" timestamp, "completed_at" timestamp, "exception" character varying, "backtrace" text, "job_class" character varying, "status" character varying, "metadata" text, "job_arguments" text, "created_at" timestamp, "updated_at" timestamp)
18
+ ActiveRecord::SchemaMigration Create (0.8ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20170915210836"]]
19
+  (1.8ms) COMMIT
20
+ Migrating to AddJobIdToCanvasSyncJobLogs (20180725155729)
21
+  (0.4ms) BEGIN
22
+  (0.5ms) ALTER TABLE "canvas_sync_job_logs" ADD "job_id" character varying
23
+  (4.7ms) CREATE INDEX "index_canvas_sync_job_logs_on_job_id" ON "canvas_sync_job_logs" ("job_id")
24
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20180725155729"]]
25
+  (1.4ms) COMMIT
26
+ Migrating to CreateUsers (20190702203620)
27
+  (0.3ms) BEGIN
28
+  (10.8ms) CREATE TABLE "users" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "email" character varying, "first_name" character varying, "last_name" character varying, "workflow_state" character varying, "login_id" character varying, "name" character varying, "sortable_name" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
29
+  (4.6ms) CREATE UNIQUE INDEX "index_users_on_canvas_id" ON "users" ("canvas_id")
30
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203620"]]
31
+  (1.6ms) COMMIT
32
+ Migrating to CreateCourses (20190702203621)
33
+  (0.4ms) BEGIN
34
+  (10.8ms) CREATE TABLE "courses" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "course_code" character varying, "name" character varying, "workflow_state" character varying, "canvas_account_id" integer, "canvas_term_id" integer, "start_at" timestamp, "end_at" timestamp, "grading_standard_id" bigint, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
35
+  (4.4ms) CREATE UNIQUE INDEX "index_courses_on_canvas_id" ON "courses" ("canvas_id")
36
+ ActiveRecord::SchemaMigration Create (0.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203621"]]
37
+  (1.6ms) COMMIT
38
+ Migrating to CreateAccounts (20190702203622)
39
+  (0.4ms) BEGIN
40
+  (10.9ms) CREATE TABLE "accounts" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_parent_account_id" bigint, "sis_parent_account_id" character varying, "name" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
41
+  (4.6ms) CREATE UNIQUE INDEX "index_accounts_on_canvas_id" ON "accounts" ("canvas_id")
42
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203622"]]
43
+  (1.4ms) COMMIT
44
+ Migrating to CreateTerms (20190702203623)
45
+  (0.3ms) BEGIN
46
+  (9.7ms) CREATE TABLE "terms" ("id" bigserial primary key, "canvas_id" integer NOT NULL, "name" character varying, "start_at" timestamp, "end_at" timestamp, "workflow_state" character varying, "grading_period_group_id" integer, "sis_id" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
47
+  (3.9ms) CREATE UNIQUE INDEX "index_terms_on_canvas_id" ON "terms" ("canvas_id")
48
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203623"]]
49
+  (1.4ms) COMMIT
50
+ Migrating to CreateEnrollments (20190702203624)
51
+  (0.2ms) BEGIN
52
+  (8.0ms) CREATE TABLE "enrollments" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "course_sis_id" character varying, "canvas_user_id" bigint, "user_sis_id" character varying, "role" character varying, "canvas_role_id" integer, "canvas_section_id" bigint, "workflow_state" character varying, "base_role_type" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
53
+  (3.7ms) CREATE UNIQUE INDEX "index_enrollments_on_canvas_id" ON "enrollments" ("canvas_id")
54
+  (4.3ms) CREATE INDEX "index_enrollments_on_canvas_course_id" ON "enrollments" ("canvas_course_id")
55
+  (4.2ms) CREATE INDEX "index_enrollments_on_canvas_user_id" ON "enrollments" ("canvas_user_id")
56
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203624"]]
57
+  (1.2ms) COMMIT
58
+ Migrating to CreateSections (20190702203625)
59
+  (0.1ms) BEGIN
60
+  (9.2ms) CREATE TABLE "sections" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_course_id" bigint, "canvas_nonxlist_course_id" bigint, "name" character varying, "workflow_state" character varying, "start_at" timestamp, "end_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
61
+  (4.8ms) CREATE UNIQUE INDEX "index_sections_on_canvas_id" ON "sections" ("canvas_id")
62
+  (4.6ms) CREATE INDEX "index_sections_on_canvas_course_id" ON "sections" ("canvas_course_id")
63
+ ActiveRecord::SchemaMigration Create (0.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203625"]]
64
+  (1.4ms) COMMIT
65
+ Migrating to CreateAssignments (20190702203626)
66
+  (0.4ms) BEGIN
67
+  (12.3ms) CREATE TABLE "assignments" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "title" character varying, "description" text, "due_at" timestamp, "unlock_at" timestamp, "lock_at" timestamp, "points_possible" float, "min_score" float, "max_score" float, "mastery_score" float, "grading_type" character varying, "submission_types" character varying, "workflow_state" character varying, "canvas_context_id" integer, "canvas_context_type" character varying, "canvas_assignment_group_id" integer, "canvas_grading_scheme_id" integer, "canvas_grading_standard_id" integer, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
68
+  (4.7ms) CREATE UNIQUE INDEX "index_assignments_on_canvas_id" ON "assignments" ("canvas_id")
69
+  (4.9ms) CREATE INDEX "index_assignments_on_canvas_context_id_and_canvas_context_type" ON "assignments" ("canvas_context_id", "canvas_context_type")
70
+ ActiveRecord::SchemaMigration Create (0.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203626"]]
71
+  (1.7ms) COMMIT
72
+ Migrating to CreateSubmissions (20190702203627)
73
+  (0.4ms) BEGIN
74
+  (12.3ms) CREATE TABLE "submissions" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "canvas_assignment_id" bigint, "canvas_user_id" bigint, "submitted_at" timestamp, "due_at" timestamp, "graded_at" timestamp, "score" float, "points_possible" float, "excused" boolean, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
75
+  (4.8ms) CREATE UNIQUE INDEX "index_submissions_on_canvas_id" ON "submissions" ("canvas_id")
76
+  (4.8ms) CREATE INDEX "index_submissions_on_canvas_assignment_id" ON "submissions" ("canvas_assignment_id")
77
+  (4.8ms) CREATE INDEX "index_submissions_on_canvas_course_id" ON "submissions" ("canvas_course_id")
78
+  (4.6ms) CREATE INDEX "index_submissions_on_canvas_user_id" ON "submissions" ("canvas_user_id")
79
+ ActiveRecord::SchemaMigration Create (0.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203627"]]
80
+  (1.5ms) COMMIT
81
+ Migrating to CreateAssignmentGroups (20190702203630)
82
+  (0.4ms) BEGIN
83
+  (11.3ms) CREATE TABLE "assignment_groups" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "name" character varying, "rules" text, "position" integer, "group_weight" float, "workflow_state" character varying, "canvas_created_at" timestamp, "canvas_updated_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
84
+  (4.2ms) CREATE UNIQUE INDEX "index_assignment_groups_on_canvas_id" ON "assignment_groups" ("canvas_id")
85
+  (4.5ms) CREATE INDEX "index_assignment_groups_on_canvas_course_id" ON "assignment_groups" ("canvas_course_id")
86
+ ActiveRecord::SchemaMigration Create (0.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203630"]]
87
+  (1.6ms) COMMIT
88
+ Migrating to CreateContextModules (20190702203631)
89
+  (0.4ms) BEGIN
90
+  (11.0ms) CREATE TABLE "context_modules" ("id" bigserial primary key, "canvas_id" bigint, "canvas_context_id" bigint, "canvas_context_type" character varying, "position" integer, "name" character varying, "workflow_state" character varying, "deleted_at" timestamp, "unlock_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
91
+  (5.0ms) CREATE UNIQUE INDEX "index_context_modules_on_canvas_id" ON "context_modules" ("canvas_id")
92
+  (4.9ms) CREATE INDEX "index_context_modules_on_context" ON "context_modules" ("canvas_context_id", "canvas_context_type")
93
+ ActiveRecord::SchemaMigration Create (0.6ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203631"]]
94
+  (1.7ms) COMMIT
95
+ Migrating to CreateContextModuleItems (20190702203632)
96
+  (0.4ms) BEGIN
97
+  (11.2ms) CREATE TABLE "context_module_items" ("id" bigserial primary key, "canvas_id" bigint, "canvas_context_module_id" bigint, "position" integer, "canvas_content_id" bigint, "canvas_content_type" character varying, "canvas_assignment_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
98
+  (4.0ms) CREATE UNIQUE INDEX "index_context_module_items_on_canvas_id" ON "context_module_items" ("canvas_id")
99
+  (3.8ms) CREATE INDEX "index_context_module_items_on_canvas_context_module_id" ON "context_module_items" ("canvas_context_module_id")
100
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203632"]]
101
+  (1.5ms) COMMIT
102
+ Migrating to AddForkCountToCanvasSyncJobLogs (20190916154829)
103
+  (0.3ms) BEGIN
104
+  (0.5ms) ALTER TABLE "canvas_sync_job_logs" ADD "fork_count" integer
105
+ ActiveRecord::SchemaMigration Create (0.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190916154829"]]
106
+  (1.2ms) COMMIT
107
+ Migrating to CreateRoles (20190927204545)
108
+  (0.2ms) BEGIN
109
+  (8.0ms) CREATE TABLE "roles" ("id" bigserial primary key, "canvas_id" integer NOT NULL, "label" character varying, "base_role_type" character varying, "canvas_account_id" integer, "workflow_state" character varying, "permissions" json, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
110
+  (3.5ms) CREATE UNIQUE INDEX "index_roles_on_canvas_id" ON "roles" ("canvas_id")
111
+  (3.9ms) CREATE INDEX "index_roles_on_canvas_account_id" ON "roles" ("canvas_account_id")
112
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190927204545"]]
113
+  (1.2ms) COMMIT
114
+ Migrating to CreateAdmins (20190927204546)
115
+  (0.3ms) BEGIN
116
+  (8.8ms) CREATE TABLE "admins" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "role_name" character varying, "canvas_account_id" bigint, "canvas_role_id" bigint, "canvas_user_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
117
+  (4.0ms) CREATE UNIQUE INDEX "index_admins_on_canvas_id" ON "admins" ("canvas_id")
118
+  (3.5ms) CREATE INDEX "index_admins_on_canvas_role_id" ON "admins" ("canvas_role_id")
119
+  (7.0ms) CREATE INDEX "index_admins_on_canvas_user_id" ON "admins" ("canvas_user_id")
120
+  (3.8ms) CREATE INDEX "index_admins_on_canvas_account_id" ON "admins" ("canvas_account_id")
121
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190927204546"]]
122
+  (1.2ms) COMMIT
123
+ Migrating to CreateGroups (20200415171620)
124
+  (0.1ms) BEGIN
125
+  (8.2ms) CREATE TABLE "groups" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_group_category_id" bigint, "group_category_sis_id" character varying, "canvas_account_id" bigint, "canvas_course_id" bigint, "name" character varying, "workflow_state" character varying, "context_id" bigint, "context_type" character varying, "max_membership" integer, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
126
+  (3.8ms) CREATE UNIQUE INDEX "index_groups_on_canvas_id" ON "groups" ("canvas_id")
127
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20200415171620"]]
128
+  (1.2ms) COMMIT
129
+ Migrating to CreateGroupMemberships (20200416214248)
130
+  (0.3ms) BEGIN
131
+  (8.1ms) CREATE TABLE "group_memberships" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_user_id" bigint NOT NULL, "canvas_group_id" bigint NOT NULL, "group_sis_id" character varying, "user_sis_id" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
132
+  (3.8ms) CREATE UNIQUE INDEX "index_group_memberships_on_canvas_id" ON "group_memberships" ("canvas_id")
133
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20200416214248"]]
134
+  (1.2ms) COMMIT
135
+ Migrating to CreatePseudonyms (20201016181346)
136
+  (0.2ms) BEGIN
137
+  (8.2ms) CREATE TABLE "pseudonyms" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_user_id" bigint, "sis_id" character varying, "unique_id" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
138
+  (3.7ms) CREATE UNIQUE INDEX "index_pseudonyms_on_canvas_id" ON "pseudonyms" ("canvas_id")
139
+  (3.6ms) CREATE INDEX "index_pseudonyms_on_canvas_user_id" ON "pseudonyms" ("canvas_user_id")
140
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201016181346"]]
141
+  (1.4ms) COMMIT
142
+ Migrating to CreateCanvasSyncSyncBatches (20201018210836)
143
+  (0.2ms) BEGIN
144
+  (8.3ms) CREATE TABLE "canvas_sync_sync_batches" ("id" serial NOT NULL PRIMARY KEY, "started_at" timestamp, "completed_at" timestamp, "status" character varying, "created_at" timestamp, "updated_at" timestamp)
145
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201018210836"]]
146
+  (1.1ms) COMMIT
147
+ Migrating to AddFullSyncToCanvasSyncSyncBatch (20201030210836)
148
+  (0.2ms) BEGIN
149
+  (0.3ms) ALTER TABLE "canvas_sync_sync_batches" ADD "full_sync" boolean DEFAULT FALSE
150
+  (0.2ms) ALTER TABLE "canvas_sync_sync_batches" ADD "batch_genre" character varying
151
+  (0.2ms) ALTER TABLE "canvas_sync_sync_batches" ADD "batch_bid" character varying
152
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201030210836"]]
153
+  (1.1ms) COMMIT
154
+ ActiveRecord::InternalMetadata Load (0.3ms) SELECT "ar_internal_metadata".* FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 LIMIT $2 [["key", "environment"], ["LIMIT", 1]]
155
+  (0.2ms) BEGIN
156
+ ActiveRecord::InternalMetadata Create (0.4ms) INSERT INTO "ar_internal_metadata" ("key", "value", "created_at", "updated_at") VALUES ($1, $2, $3, $4) RETURNING "key" [["key", "environment"], ["value", "development"], ["created_at", "2021-09-07 23:25:24.331448"], ["updated_at", "2021-09-07 23:25:24.331448"]]
157
+  (1.2ms) COMMIT
158
+  (0.2ms) SELECT pg_advisory_unlock(1438354376499275445)
159
+  (0.3ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
160
+  (0.4ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
161
+  (0.3ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
162
+  (0.2ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
163
+  (0.2ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
164
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
165
+  (0.2ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
166
+  (48.2ms) DROP DATABASE IF EXISTS "canvas_sync_development"
167
+  (52.5ms) DROP DATABASE IF EXISTS "canvas_sync_test"
168
+  (143.1ms) CREATE DATABASE "canvas_sync_development" ENCODING = 'unicode'
169
+  (116.4ms) CREATE DATABASE "canvas_sync_test" ENCODING = 'unicode'
170
+  (18.0ms) CREATE TABLE "schema_migrations" ("version" character varying NOT NULL PRIMARY KEY)
171
+  (9.4ms) CREATE TABLE "ar_internal_metadata" ("key" character varying NOT NULL PRIMARY KEY, "value" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
172
+  (0.2ms) SELECT pg_try_advisory_lock(1438354376499275445)
173
+  (0.3ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
174
+ Migrating to CreateCanvasSyncJobLog (20170915210836)
175
+  (0.2ms) BEGIN
176
+  (8.6ms) CREATE TABLE "canvas_sync_job_logs" ("id" serial NOT NULL PRIMARY KEY, "started_at" timestamp, "completed_at" timestamp, "exception" character varying, "backtrace" text, "job_class" character varying, "status" character varying, "metadata" text, "job_arguments" text, "created_at" timestamp, "updated_at" timestamp)
177
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20170915210836"]]
178
+  (1.1ms) COMMIT
179
+ Migrating to AddJobIdToCanvasSyncJobLogs (20180725155729)
180
+  (0.2ms) BEGIN
181
+  (0.3ms) ALTER TABLE "canvas_sync_job_logs" ADD "job_id" character varying
182
+  (3.7ms) CREATE INDEX "index_canvas_sync_job_logs_on_job_id" ON "canvas_sync_job_logs" ("job_id")
183
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20180725155729"]]
184
+  (1.4ms) COMMIT
185
+ Migrating to CreateUsers (20190702203620)
186
+  (0.2ms) BEGIN
187
+  (8.2ms) CREATE TABLE "users" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "email" character varying, "first_name" character varying, "last_name" character varying, "workflow_state" character varying, "login_id" character varying, "name" character varying, "sortable_name" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
188
+  (4.9ms) CREATE UNIQUE INDEX "index_users_on_canvas_id" ON "users" ("canvas_id")
189
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203620"]]
190
+  (1.5ms) COMMIT
191
+ Migrating to CreateCourses (20190702203621)
192
+  (0.4ms) BEGIN
193
+  (11.0ms) CREATE TABLE "courses" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "course_code" character varying, "name" character varying, "workflow_state" character varying, "canvas_account_id" integer, "canvas_term_id" integer, "start_at" timestamp, "end_at" timestamp, "grading_standard_id" bigint, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
194
+  (4.1ms) CREATE UNIQUE INDEX "index_courses_on_canvas_id" ON "courses" ("canvas_id")
195
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203621"]]
196
+  (1.7ms) COMMIT
197
+ Migrating to CreateAccounts (20190702203622)
198
+  (0.3ms) BEGIN
199
+  (10.5ms) CREATE TABLE "accounts" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_parent_account_id" bigint, "sis_parent_account_id" character varying, "name" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
200
+  (4.4ms) CREATE UNIQUE INDEX "index_accounts_on_canvas_id" ON "accounts" ("canvas_id")
201
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203622"]]
202
+  (1.4ms) COMMIT
203
+ Migrating to CreateTerms (20190702203623)
204
+  (0.3ms) BEGIN
205
+  (10.6ms) CREATE TABLE "terms" ("id" bigserial primary key, "canvas_id" integer NOT NULL, "name" character varying, "start_at" timestamp, "end_at" timestamp, "workflow_state" character varying, "grading_period_group_id" integer, "sis_id" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
206
+  (4.6ms) CREATE UNIQUE INDEX "index_terms_on_canvas_id" ON "terms" ("canvas_id")
207
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203623"]]
208
+  (1.5ms) COMMIT
209
+ Migrating to CreateEnrollments (20190702203624)
210
+  (0.4ms) BEGIN
211
+  (10.4ms) CREATE TABLE "enrollments" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "course_sis_id" character varying, "canvas_user_id" bigint, "user_sis_id" character varying, "role" character varying, "canvas_role_id" integer, "canvas_section_id" bigint, "workflow_state" character varying, "base_role_type" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
212
+  (4.3ms) CREATE UNIQUE INDEX "index_enrollments_on_canvas_id" ON "enrollments" ("canvas_id")
213
+  (4.2ms) CREATE INDEX "index_enrollments_on_canvas_course_id" ON "enrollments" ("canvas_course_id")
214
+  (4.2ms) CREATE INDEX "index_enrollments_on_canvas_user_id" ON "enrollments" ("canvas_user_id")
215
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203624"]]
216
+  (1.6ms) COMMIT
217
+ Migrating to CreateSections (20190702203625)
218
+  (0.4ms) BEGIN
219
+  (10.6ms) CREATE TABLE "sections" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_course_id" bigint, "canvas_nonxlist_course_id" bigint, "name" character varying, "workflow_state" character varying, "start_at" timestamp, "end_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
220
+  (4.6ms) CREATE UNIQUE INDEX "index_sections_on_canvas_id" ON "sections" ("canvas_id")
221
+  (4.4ms) CREATE INDEX "index_sections_on_canvas_course_id" ON "sections" ("canvas_course_id")
222
+ ActiveRecord::SchemaMigration Create (0.7ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203625"]]
223
+  (1.6ms) COMMIT
224
+ Migrating to CreateAssignments (20190702203626)
225
+  (0.6ms) BEGIN
226
+  (12.3ms) CREATE TABLE "assignments" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "title" character varying, "description" text, "due_at" timestamp, "unlock_at" timestamp, "lock_at" timestamp, "points_possible" float, "min_score" float, "max_score" float, "mastery_score" float, "grading_type" character varying, "submission_types" character varying, "workflow_state" character varying, "canvas_context_id" integer, "canvas_context_type" character varying, "canvas_assignment_group_id" integer, "canvas_grading_scheme_id" integer, "canvas_grading_standard_id" integer, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
227
+  (4.5ms) CREATE UNIQUE INDEX "index_assignments_on_canvas_id" ON "assignments" ("canvas_id")
228
+  (4.9ms) CREATE INDEX "index_assignments_on_canvas_context_id_and_canvas_context_type" ON "assignments" ("canvas_context_id", "canvas_context_type")
229
+ ActiveRecord::SchemaMigration Create (0.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203626"]]
230
+  (1.7ms) COMMIT
231
+ Migrating to CreateSubmissions (20190702203627)
232
+  (0.4ms) BEGIN
233
+  (10.2ms) CREATE TABLE "submissions" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "canvas_assignment_id" bigint, "canvas_user_id" bigint, "submitted_at" timestamp, "due_at" timestamp, "graded_at" timestamp, "score" float, "points_possible" float, "excused" boolean, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
234
+  (3.9ms) CREATE UNIQUE INDEX "index_submissions_on_canvas_id" ON "submissions" ("canvas_id")
235
+  (4.1ms) CREATE INDEX "index_submissions_on_canvas_assignment_id" ON "submissions" ("canvas_assignment_id")
236
+  (3.6ms) CREATE INDEX "index_submissions_on_canvas_course_id" ON "submissions" ("canvas_course_id")
237
+  (3.6ms) CREATE INDEX "index_submissions_on_canvas_user_id" ON "submissions" ("canvas_user_id")
238
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203627"]]
239
+  (1.3ms) COMMIT
240
+ Migrating to CreateAssignmentGroups (20190702203630)
241
+  (0.2ms) BEGIN
242
+  (8.2ms) CREATE TABLE "assignment_groups" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "name" character varying, "rules" text, "position" integer, "group_weight" float, "workflow_state" character varying, "canvas_created_at" timestamp, "canvas_updated_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
243
+  (3.6ms) CREATE UNIQUE INDEX "index_assignment_groups_on_canvas_id" ON "assignment_groups" ("canvas_id")
244
+  (4.0ms) CREATE INDEX "index_assignment_groups_on_canvas_course_id" ON "assignment_groups" ("canvas_course_id")
245
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203630"]]
246
+  (1.4ms) COMMIT
247
+ Migrating to CreateContextModules (20190702203631)
248
+  (0.2ms) BEGIN
249
+  (9.3ms) CREATE TABLE "context_modules" ("id" bigserial primary key, "canvas_id" bigint, "canvas_context_id" bigint, "canvas_context_type" character varying, "position" integer, "name" character varying, "workflow_state" character varying, "deleted_at" timestamp, "unlock_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
250
+  (3.7ms) CREATE UNIQUE INDEX "index_context_modules_on_canvas_id" ON "context_modules" ("canvas_id")
251
+  (3.6ms) CREATE INDEX "index_context_modules_on_context" ON "context_modules" ("canvas_context_id", "canvas_context_type")
252
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203631"]]
253
+  (1.3ms) COMMIT
254
+ Migrating to CreateContextModuleItems (20190702203632)
255
+  (0.2ms) BEGIN
256
+  (7.9ms) CREATE TABLE "context_module_items" ("id" bigserial primary key, "canvas_id" bigint, "canvas_context_module_id" bigint, "position" integer, "canvas_content_id" bigint, "canvas_content_type" character varying, "canvas_assignment_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
257
+  (3.9ms) CREATE UNIQUE INDEX "index_context_module_items_on_canvas_id" ON "context_module_items" ("canvas_id")
258
+  (3.9ms) CREATE INDEX "index_context_module_items_on_canvas_context_module_id" ON "context_module_items" ("canvas_context_module_id")
259
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203632"]]
260
+  (1.3ms) COMMIT
261
+ Migrating to AddForkCountToCanvasSyncJobLogs (20190916154829)
262
+  (0.2ms) BEGIN
263
+  (0.3ms) ALTER TABLE "canvas_sync_job_logs" ADD "fork_count" integer
264
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190916154829"]]
265
+  (1.2ms) COMMIT
266
+ Migrating to CreateRoles (20190927204545)
267
+  (0.1ms) BEGIN
268
+  (8.1ms) CREATE TABLE "roles" ("id" bigserial primary key, "canvas_id" integer NOT NULL, "label" character varying, "base_role_type" character varying, "canvas_account_id" integer, "workflow_state" character varying, "permissions" json, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
269
+  (3.6ms) CREATE UNIQUE INDEX "index_roles_on_canvas_id" ON "roles" ("canvas_id")
270
+  (4.0ms) CREATE INDEX "index_roles_on_canvas_account_id" ON "roles" ("canvas_account_id")
271
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190927204545"]]
272
+  (1.4ms) COMMIT
273
+ Migrating to CreateAdmins (20190927204546)
274
+  (0.2ms) BEGIN
275
+  (8.4ms) CREATE TABLE "admins" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "role_name" character varying, "canvas_account_id" bigint, "canvas_role_id" bigint, "canvas_user_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
276
+  (3.7ms) CREATE UNIQUE INDEX "index_admins_on_canvas_id" ON "admins" ("canvas_id")
277
+  (3.6ms) CREATE INDEX "index_admins_on_canvas_role_id" ON "admins" ("canvas_role_id")
278
+  (3.4ms) CREATE INDEX "index_admins_on_canvas_user_id" ON "admins" ("canvas_user_id")
279
+  (4.1ms) CREATE INDEX "index_admins_on_canvas_account_id" ON "admins" ("canvas_account_id")
280
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190927204546"]]
281
+  (1.3ms) COMMIT
282
+ Migrating to CreateGroups (20200415171620)
283
+  (0.2ms) BEGIN
284
+  (8.6ms) CREATE TABLE "groups" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_group_category_id" bigint, "group_category_sis_id" character varying, "canvas_account_id" bigint, "canvas_course_id" bigint, "name" character varying, "workflow_state" character varying, "context_id" bigint, "context_type" character varying, "max_membership" integer, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
285
+  (3.4ms) CREATE UNIQUE INDEX "index_groups_on_canvas_id" ON "groups" ("canvas_id")
286
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20200415171620"]]
287
+  (1.3ms) COMMIT
288
+ Migrating to CreateGroupMemberships (20200416214248)
289
+  (0.2ms) BEGIN
290
+  (8.4ms) CREATE TABLE "group_memberships" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_user_id" bigint NOT NULL, "canvas_group_id" bigint NOT NULL, "group_sis_id" character varying, "user_sis_id" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
291
+  (4.2ms) CREATE UNIQUE INDEX "index_group_memberships_on_canvas_id" ON "group_memberships" ("canvas_id")
292
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20200416214248"]]
293
+  (1.6ms) COMMIT
294
+ Migrating to CreatePseudonyms (20201016181346)
295
+  (0.3ms) BEGIN
296
+  (11.3ms) CREATE TABLE "pseudonyms" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_user_id" bigint, "sis_id" character varying, "unique_id" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
297
+  (4.3ms) CREATE UNIQUE INDEX "index_pseudonyms_on_canvas_id" ON "pseudonyms" ("canvas_id")
298
+  (4.3ms) CREATE INDEX "index_pseudonyms_on_canvas_user_id" ON "pseudonyms" ("canvas_user_id")
299
+ ActiveRecord::SchemaMigration Create (0.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201016181346"]]
300
+  (1.8ms) COMMIT
301
+ Migrating to CreateCanvasSyncSyncBatches (20201018210836)
302
+  (0.3ms) BEGIN
303
+  (11.1ms) CREATE TABLE "canvas_sync_sync_batches" ("id" serial NOT NULL PRIMARY KEY, "started_at" timestamp, "completed_at" timestamp, "status" character varying, "created_at" timestamp, "updated_at" timestamp)
304
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201018210836"]]
305
+  (1.4ms) COMMIT
306
+ Migrating to AddFullSyncToCanvasSyncSyncBatch (20201030210836)
307
+  (0.3ms) BEGIN
308
+  (0.7ms) ALTER TABLE "canvas_sync_sync_batches" ADD "full_sync" boolean DEFAULT FALSE
309
+  (0.4ms) ALTER TABLE "canvas_sync_sync_batches" ADD "batch_genre" character varying
310
+  (0.4ms) ALTER TABLE "canvas_sync_sync_batches" ADD "batch_bid" character varying
311
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201030210836"]]
312
+  (1.2ms) COMMIT
313
+ ActiveRecord::InternalMetadata Load (0.5ms) SELECT "ar_internal_metadata".* FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 LIMIT $2 [["key", "environment"], ["LIMIT", 1]]
314
+  (0.2ms) BEGIN
315
+ ActiveRecord::InternalMetadata Create (0.5ms) INSERT INTO "ar_internal_metadata" ("key", "value", "created_at", "updated_at") VALUES ($1, $2, $3, $4) RETURNING "key" [["key", "environment"], ["value", "development"], ["created_at", "2021-09-07 23:28:47.928818"], ["updated_at", "2021-09-07 23:28:47.928818"]]
316
+  (1.1ms) COMMIT
317
+  (0.2ms) SELECT pg_advisory_unlock(1438354376499275445)
318
+  (0.2ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
319
+  (0.5ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
320
+  (0.4ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
321
+  (0.2ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
322
+  (0.2ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
323
+  (0.2ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
324
+  (0.2ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
325
+  (55.8ms) DROP DATABASE IF EXISTS "canvas_sync_development"
326
+  (45.8ms) DROP DATABASE IF EXISTS "canvas_sync_test"
327
+  (122.4ms) CREATE DATABASE "canvas_sync_development" ENCODING = 'unicode'
328
+  (113.3ms) CREATE DATABASE "canvas_sync_test" ENCODING = 'unicode'
329
+  (18.2ms) CREATE TABLE "schema_migrations" ("version" character varying NOT NULL PRIMARY KEY)
330
+  (9.2ms) CREATE TABLE "ar_internal_metadata" ("key" character varying NOT NULL PRIMARY KEY, "value" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
331
+  (0.1ms) SELECT pg_try_advisory_lock(1438354376499275445)
332
+  (0.3ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
333
+ Migrating to CreateCanvasSyncJobLog (20170915210836)
334
+  (0.1ms) BEGIN
335
+  (8.2ms) CREATE TABLE "canvas_sync_job_logs" ("id" serial NOT NULL PRIMARY KEY, "started_at" timestamp, "completed_at" timestamp, "exception" character varying, "backtrace" text, "job_class" character varying, "status" character varying, "metadata" text, "job_arguments" text, "created_at" timestamp, "updated_at" timestamp)
336
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20170915210836"]]
337
+  (1.1ms) COMMIT
338
+ Migrating to AddJobIdToCanvasSyncJobLogs (20180725155729)
339
+  (0.1ms) BEGIN
340
+  (0.3ms) ALTER TABLE "canvas_sync_job_logs" ADD "job_id" character varying
341
+  (3.8ms) CREATE INDEX "index_canvas_sync_job_logs_on_job_id" ON "canvas_sync_job_logs" ("job_id")
342
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20180725155729"]]
343
+  (1.0ms) COMMIT
344
+ Migrating to CreateUsers (20190702203620)
345
+  (0.2ms) BEGIN
346
+  (7.7ms) CREATE TABLE "users" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "email" character varying, "first_name" character varying, "last_name" character varying, "workflow_state" character varying, "login_id" character varying, "name" character varying, "sortable_name" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
347
+  (3.8ms) CREATE UNIQUE INDEX "index_users_on_canvas_id" ON "users" ("canvas_id")
348
+ ActiveRecord::SchemaMigration Create (0.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203620"]]
349
+  (1.3ms) COMMIT
350
+ Migrating to CreateCourses (20190702203621)
351
+  (0.4ms) BEGIN
352
+  (11.3ms) CREATE TABLE "courses" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "course_code" character varying, "name" character varying, "workflow_state" character varying, "canvas_account_id" integer, "canvas_term_id" integer, "start_at" timestamp, "end_at" timestamp, "grading_standard_id" bigint, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
353
+  (4.6ms) CREATE UNIQUE INDEX "index_courses_on_canvas_id" ON "courses" ("canvas_id")
354
+ ActiveRecord::SchemaMigration Create (0.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203621"]]
355
+  (1.6ms) COMMIT
356
+ Migrating to CreateAccounts (20190702203622)
357
+  (0.4ms) BEGIN
358
+  (11.4ms) CREATE TABLE "accounts" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_parent_account_id" bigint, "sis_parent_account_id" character varying, "name" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
359
+  (4.5ms) CREATE UNIQUE INDEX "index_accounts_on_canvas_id" ON "accounts" ("canvas_id")
360
+ ActiveRecord::SchemaMigration Create (0.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203622"]]
361
+  (1.5ms) COMMIT
362
+ Migrating to CreateTerms (20190702203623)
363
+  (0.4ms) BEGIN
364
+  (11.6ms) CREATE TABLE "terms" ("id" bigserial primary key, "canvas_id" integer NOT NULL, "name" character varying, "start_at" timestamp, "end_at" timestamp, "workflow_state" character varying, "grading_period_group_id" integer, "sis_id" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
365
+  (4.7ms) CREATE UNIQUE INDEX "index_terms_on_canvas_id" ON "terms" ("canvas_id")
366
+ ActiveRecord::SchemaMigration Create (0.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203623"]]
367
+  (1.6ms) COMMIT
368
+ Migrating to CreateEnrollments (20190702203624)
369
+  (0.4ms) BEGIN
370
+  (12.3ms) CREATE TABLE "enrollments" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "course_sis_id" character varying, "canvas_user_id" bigint, "user_sis_id" character varying, "role" character varying, "canvas_role_id" integer, "canvas_section_id" bigint, "workflow_state" character varying, "base_role_type" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
371
+  (4.6ms) CREATE UNIQUE INDEX "index_enrollments_on_canvas_id" ON "enrollments" ("canvas_id")
372
+  (7.1ms) CREATE INDEX "index_enrollments_on_canvas_course_id" ON "enrollments" ("canvas_course_id")
373
+  (6.4ms) CREATE INDEX "index_enrollments_on_canvas_user_id" ON "enrollments" ("canvas_user_id")
374
+ ActiveRecord::SchemaMigration Create (0.6ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203624"]]
375
+  (1.6ms) COMMIT
376
+ Migrating to CreateSections (20190702203625)
377
+  (0.4ms) BEGIN
378
+  (12.1ms) CREATE TABLE "sections" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_course_id" bigint, "canvas_nonxlist_course_id" bigint, "name" character varying, "workflow_state" character varying, "start_at" timestamp, "end_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
379
+  (5.0ms) CREATE UNIQUE INDEX "index_sections_on_canvas_id" ON "sections" ("canvas_id")
380
+  (4.6ms) CREATE INDEX "index_sections_on_canvas_course_id" ON "sections" ("canvas_course_id")
381
+ ActiveRecord::SchemaMigration Create (0.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203625"]]
382
+  (1.5ms) COMMIT
383
+ Migrating to CreateAssignments (20190702203626)
384
+  (0.4ms) BEGIN
385
+  (11.9ms) CREATE TABLE "assignments" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "title" character varying, "description" text, "due_at" timestamp, "unlock_at" timestamp, "lock_at" timestamp, "points_possible" float, "min_score" float, "max_score" float, "mastery_score" float, "grading_type" character varying, "submission_types" character varying, "workflow_state" character varying, "canvas_context_id" integer, "canvas_context_type" character varying, "canvas_assignment_group_id" integer, "canvas_grading_scheme_id" integer, "canvas_grading_standard_id" integer, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
386
+  (3.9ms) CREATE UNIQUE INDEX "index_assignments_on_canvas_id" ON "assignments" ("canvas_id")
387
+  (3.8ms) CREATE INDEX "index_assignments_on_canvas_context_id_and_canvas_context_type" ON "assignments" ("canvas_context_id", "canvas_context_type")
388
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203626"]]
389
+  (1.3ms) COMMIT
390
+ Migrating to CreateSubmissions (20190702203627)
391
+  (0.1ms) BEGIN
392
+  (8.9ms) CREATE TABLE "submissions" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "canvas_assignment_id" bigint, "canvas_user_id" bigint, "submitted_at" timestamp, "due_at" timestamp, "graded_at" timestamp, "score" float, "points_possible" float, "excused" boolean, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
393
+  (3.4ms) CREATE UNIQUE INDEX "index_submissions_on_canvas_id" ON "submissions" ("canvas_id")
394
+  (3.3ms) CREATE INDEX "index_submissions_on_canvas_assignment_id" ON "submissions" ("canvas_assignment_id")
395
+  (3.3ms) CREATE INDEX "index_submissions_on_canvas_course_id" ON "submissions" ("canvas_course_id")
396
+  (3.4ms) CREATE INDEX "index_submissions_on_canvas_user_id" ON "submissions" ("canvas_user_id")
397
+ ActiveRecord::SchemaMigration Create (0.1ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203627"]]
398
+  (1.0ms) COMMIT
399
+ Migrating to CreateAssignmentGroups (20190702203630)
400
+  (0.2ms) BEGIN
401
+  (8.1ms) CREATE TABLE "assignment_groups" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "name" character varying, "rules" text, "position" integer, "group_weight" float, "workflow_state" character varying, "canvas_created_at" timestamp, "canvas_updated_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
402
+  (3.3ms) CREATE UNIQUE INDEX "index_assignment_groups_on_canvas_id" ON "assignment_groups" ("canvas_id")
403
+  (3.3ms) CREATE INDEX "index_assignment_groups_on_canvas_course_id" ON "assignment_groups" ("canvas_course_id")
404
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203630"]]
405
+  (1.1ms) COMMIT
406
+ Migrating to CreateContextModules (20190702203631)
407
+  (0.1ms) BEGIN
408
+  (7.6ms) CREATE TABLE "context_modules" ("id" bigserial primary key, "canvas_id" bigint, "canvas_context_id" bigint, "canvas_context_type" character varying, "position" integer, "name" character varying, "workflow_state" character varying, "deleted_at" timestamp, "unlock_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
409
+  (3.5ms) CREATE UNIQUE INDEX "index_context_modules_on_canvas_id" ON "context_modules" ("canvas_id")
410
+  (3.6ms) CREATE INDEX "index_context_modules_on_context" ON "context_modules" ("canvas_context_id", "canvas_context_type")
411
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203631"]]
412
+  (1.1ms) COMMIT
413
+ Migrating to CreateContextModuleItems (20190702203632)
414
+  (0.1ms) BEGIN
415
+  (8.5ms) CREATE TABLE "context_module_items" ("id" bigserial primary key, "canvas_id" bigint, "canvas_context_module_id" bigint, "position" integer, "canvas_content_id" bigint, "canvas_content_type" character varying, "canvas_assignment_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
416
+  (3.7ms) CREATE UNIQUE INDEX "index_context_module_items_on_canvas_id" ON "context_module_items" ("canvas_id")
417
+  (3.3ms) CREATE INDEX "index_context_module_items_on_canvas_context_module_id" ON "context_module_items" ("canvas_context_module_id")
418
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203632"]]
419
+  (1.1ms) COMMIT
420
+ Migrating to AddForkCountToCanvasSyncJobLogs (20190916154829)
421
+  (0.1ms) BEGIN
422
+  (0.2ms) ALTER TABLE "canvas_sync_job_logs" ADD "fork_count" integer
423
+ ActiveRecord::SchemaMigration Create (0.1ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190916154829"]]
424
+  (1.0ms) COMMIT
425
+ Migrating to CreateRoles (20190927204545)
426
+  (0.1ms) BEGIN
427
+  (7.7ms) CREATE TABLE "roles" ("id" bigserial primary key, "canvas_id" integer NOT NULL, "label" character varying, "base_role_type" character varying, "canvas_account_id" integer, "workflow_state" character varying, "permissions" json, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
428
+  (3.2ms) CREATE UNIQUE INDEX "index_roles_on_canvas_id" ON "roles" ("canvas_id")
429
+  (3.3ms) CREATE INDEX "index_roles_on_canvas_account_id" ON "roles" ("canvas_account_id")
430
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190927204545"]]
431
+  (1.0ms) COMMIT
432
+ Migrating to CreateAdmins (20190927204546)
433
+  (0.2ms) BEGIN
434
+  (8.5ms) CREATE TABLE "admins" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "role_name" character varying, "canvas_account_id" bigint, "canvas_role_id" bigint, "canvas_user_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
435
+  (3.5ms) CREATE UNIQUE INDEX "index_admins_on_canvas_id" ON "admins" ("canvas_id")
436
+  (3.3ms) CREATE INDEX "index_admins_on_canvas_role_id" ON "admins" ("canvas_role_id")
437
+  (3.4ms) CREATE INDEX "index_admins_on_canvas_user_id" ON "admins" ("canvas_user_id")
438
+  (7.0ms) CREATE INDEX "index_admins_on_canvas_account_id" ON "admins" ("canvas_account_id")
439
+ ActiveRecord::SchemaMigration Create (0.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190927204546"]]
440
+  (1.4ms) COMMIT
441
+ Migrating to CreateGroups (20200415171620)
442
+  (0.4ms) BEGIN
443
+  (9.8ms) CREATE TABLE "groups" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_group_category_id" bigint, "group_category_sis_id" character varying, "canvas_account_id" bigint, "canvas_course_id" bigint, "name" character varying, "workflow_state" character varying, "context_id" bigint, "context_type" character varying, "max_membership" integer, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
444
+  (3.6ms) CREATE UNIQUE INDEX "index_groups_on_canvas_id" ON "groups" ("canvas_id")
445
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20200415171620"]]
446
+  (1.6ms) COMMIT
447
+ Migrating to CreateGroupMemberships (20200416214248)
448
+  (0.3ms) BEGIN
449
+  (8.5ms) CREATE TABLE "group_memberships" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_user_id" bigint NOT NULL, "canvas_group_id" bigint NOT NULL, "group_sis_id" character varying, "user_sis_id" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
450
+  (3.6ms) CREATE UNIQUE INDEX "index_group_memberships_on_canvas_id" ON "group_memberships" ("canvas_id")
451
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20200416214248"]]
452
+  (1.4ms) COMMIT
453
+ Migrating to CreatePseudonyms (20201016181346)
454
+  (0.2ms) BEGIN
455
+  (8.4ms) CREATE TABLE "pseudonyms" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_user_id" bigint, "sis_id" character varying, "unique_id" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
456
+  (3.9ms) CREATE UNIQUE INDEX "index_pseudonyms_on_canvas_id" ON "pseudonyms" ("canvas_id")
457
+  (3.6ms) CREATE INDEX "index_pseudonyms_on_canvas_user_id" ON "pseudonyms" ("canvas_user_id")
458
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201016181346"]]
459
+  (1.1ms) COMMIT
460
+ Migrating to CreateCanvasSyncSyncBatches (20201018210836)
461
+  (0.2ms) BEGIN
462
+  (9.0ms) CREATE TABLE "canvas_sync_sync_batches" ("id" serial NOT NULL PRIMARY KEY, "started_at" timestamp, "completed_at" timestamp, "status" character varying, "created_at" timestamp, "updated_at" timestamp)
463
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201018210836"]]
464
+  (1.3ms) COMMIT
465
+ Migrating to AddFullSyncToCanvasSyncSyncBatch (20201030210836)
466
+  (0.2ms) BEGIN
467
+  (0.4ms) ALTER TABLE "canvas_sync_sync_batches" ADD "full_sync" boolean DEFAULT FALSE
468
+  (0.2ms) ALTER TABLE "canvas_sync_sync_batches" ADD "batch_genre" character varying
469
+  (0.2ms) ALTER TABLE "canvas_sync_sync_batches" ADD "batch_bid" character varying
470
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201030210836"]]
471
+  (1.2ms) COMMIT
472
+ ActiveRecord::InternalMetadata Load (0.5ms) SELECT "ar_internal_metadata".* FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 LIMIT $2 [["key", "environment"], ["LIMIT", 1]]
473
+  (0.2ms) BEGIN
474
+ ActiveRecord::InternalMetadata Create (0.5ms) INSERT INTO "ar_internal_metadata" ("key", "value", "created_at", "updated_at") VALUES ($1, $2, $3, $4) RETURNING "key" [["key", "environment"], ["value", "development"], ["created_at", "2021-09-07 23:31:02.638661"], ["updated_at", "2021-09-07 23:31:02.638661"]]
475
+  (1.1ms) COMMIT
476
+  (0.3ms) SELECT pg_advisory_unlock(1438354376499275445)
477
+  (0.4ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
478
+  (0.4ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
479
+  (0.3ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
480
+  (0.2ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
481
+  (0.2ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
482
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
483
+  (0.1ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
484
+  (63.5ms) DROP DATABASE IF EXISTS "canvas_sync_development"
485
+  (36.3ms) DROP DATABASE IF EXISTS "canvas_sync_test"
486
+  (114.1ms) CREATE DATABASE "canvas_sync_development" ENCODING = 'unicode'
487
+  (102.9ms) CREATE DATABASE "canvas_sync_test" ENCODING = 'unicode'
488
+  (11.0ms) CREATE TABLE "schema_migrations" ("version" character varying NOT NULL PRIMARY KEY)
489
+  (9.3ms) CREATE TABLE "ar_internal_metadata" ("key" character varying NOT NULL PRIMARY KEY, "value" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
490
+  (0.1ms) SELECT pg_try_advisory_lock(1438354376499275445)
491
+  (0.3ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
492
+ Migrating to CreateCanvasSyncJobLog (20170915210836)
493
+  (0.1ms) BEGIN
494
+  (9.0ms) CREATE TABLE "canvas_sync_job_logs" ("id" serial NOT NULL PRIMARY KEY, "started_at" timestamp, "completed_at" timestamp, "exception" character varying, "backtrace" text, "job_class" character varying, "status" character varying, "metadata" text, "job_arguments" text, "created_at" timestamp, "updated_at" timestamp)
495
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20170915210836"]]
496
+  (1.1ms) COMMIT
497
+ Migrating to AddJobIdToCanvasSyncJobLogs (20180725155729)
498
+  (0.1ms) BEGIN
499
+  (0.2ms) ALTER TABLE "canvas_sync_job_logs" ADD "job_id" character varying
500
+  (3.6ms) CREATE INDEX "index_canvas_sync_job_logs_on_job_id" ON "canvas_sync_job_logs" ("job_id")
501
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20180725155729"]]
502
+  (1.0ms) COMMIT
503
+ Migrating to CreateUsers (20190702203620)
504
+  (0.1ms) BEGIN
505
+  (11.0ms) CREATE TABLE "users" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "email" character varying, "first_name" character varying, "last_name" character varying, "workflow_state" character varying, "login_id" character varying, "name" character varying, "sortable_name" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
506
+  (3.4ms) CREATE UNIQUE INDEX "index_users_on_canvas_id" ON "users" ("canvas_id")
507
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203620"]]
508
+  (1.1ms) COMMIT
509
+ Migrating to CreateCourses (20190702203621)
510
+  (0.1ms) BEGIN
511
+  (7.2ms) CREATE TABLE "courses" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "course_code" character varying, "name" character varying, "workflow_state" character varying, "canvas_account_id" integer, "canvas_term_id" integer, "start_at" timestamp, "end_at" timestamp, "grading_standard_id" bigint, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
512
+  (3.5ms) CREATE UNIQUE INDEX "index_courses_on_canvas_id" ON "courses" ("canvas_id")
513
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203621"]]
514
+  (1.2ms) COMMIT
515
+ Migrating to CreateAccounts (20190702203622)
516
+  (0.3ms) BEGIN
517
+  (7.9ms) CREATE TABLE "accounts" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_parent_account_id" bigint, "sis_parent_account_id" character varying, "name" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
518
+  (3.4ms) CREATE UNIQUE INDEX "index_accounts_on_canvas_id" ON "accounts" ("canvas_id")
519
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203622"]]
520
+  (1.6ms) COMMIT
521
+ Migrating to CreateTerms (20190702203623)
522
+  (0.2ms) BEGIN
523
+  (12.4ms) CREATE TABLE "terms" ("id" bigserial primary key, "canvas_id" integer NOT NULL, "name" character varying, "start_at" timestamp, "end_at" timestamp, "workflow_state" character varying, "grading_period_group_id" integer, "sis_id" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
524
+  (3.7ms) CREATE UNIQUE INDEX "index_terms_on_canvas_id" ON "terms" ("canvas_id")
525
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203623"]]
526
+  (1.3ms) COMMIT
527
+ Migrating to CreateEnrollments (20190702203624)
528
+  (0.2ms) BEGIN
529
+  (9.0ms) CREATE TABLE "enrollments" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "course_sis_id" character varying, "canvas_user_id" bigint, "user_sis_id" character varying, "role" character varying, "canvas_role_id" integer, "canvas_section_id" bigint, "workflow_state" character varying, "base_role_type" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
530
+  (3.8ms) CREATE UNIQUE INDEX "index_enrollments_on_canvas_id" ON "enrollments" ("canvas_id")
531
+  (3.6ms) CREATE INDEX "index_enrollments_on_canvas_course_id" ON "enrollments" ("canvas_course_id")
532
+  (4.2ms) CREATE INDEX "index_enrollments_on_canvas_user_id" ON "enrollments" ("canvas_user_id")
533
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203624"]]
534
+  (1.1ms) COMMIT
535
+ Migrating to CreateSections (20190702203625)
536
+  (0.3ms) BEGIN
537
+  (10.5ms) CREATE TABLE "sections" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_course_id" bigint, "canvas_nonxlist_course_id" bigint, "name" character varying, "workflow_state" character varying, "start_at" timestamp, "end_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
538
+  (3.7ms) CREATE UNIQUE INDEX "index_sections_on_canvas_id" ON "sections" ("canvas_id")
539
+  (3.6ms) CREATE INDEX "index_sections_on_canvas_course_id" ON "sections" ("canvas_course_id")
540
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203625"]]
541
+  (1.1ms) COMMIT
542
+ Migrating to CreateAssignments (20190702203626)
543
+  (0.3ms) BEGIN
544
+  (8.4ms) CREATE TABLE "assignments" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "title" character varying, "description" text, "due_at" timestamp, "unlock_at" timestamp, "lock_at" timestamp, "points_possible" float, "min_score" float, "max_score" float, "mastery_score" float, "grading_type" character varying, "submission_types" character varying, "workflow_state" character varying, "canvas_context_id" integer, "canvas_context_type" character varying, "canvas_assignment_group_id" integer, "canvas_grading_scheme_id" integer, "canvas_grading_standard_id" integer, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
545
+  (4.0ms) CREATE UNIQUE INDEX "index_assignments_on_canvas_id" ON "assignments" ("canvas_id")
546
+  (3.7ms) CREATE INDEX "index_assignments_on_canvas_context_id_and_canvas_context_type" ON "assignments" ("canvas_context_id", "canvas_context_type")
547
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203626"]]
548
+  (1.1ms) COMMIT
549
+ Migrating to CreateSubmissions (20190702203627)
550
+  (0.1ms) BEGIN
551
+  (8.6ms) CREATE TABLE "submissions" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "canvas_assignment_id" bigint, "canvas_user_id" bigint, "submitted_at" timestamp, "due_at" timestamp, "graded_at" timestamp, "score" float, "points_possible" float, "excused" boolean, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
552
+  (3.6ms) CREATE UNIQUE INDEX "index_submissions_on_canvas_id" ON "submissions" ("canvas_id")
553
+  (3.3ms) CREATE INDEX "index_submissions_on_canvas_assignment_id" ON "submissions" ("canvas_assignment_id")
554
+  (3.7ms) CREATE INDEX "index_submissions_on_canvas_course_id" ON "submissions" ("canvas_course_id")
555
+  (3.5ms) CREATE INDEX "index_submissions_on_canvas_user_id" ON "submissions" ("canvas_user_id")
556
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203627"]]
557
+  (1.1ms) COMMIT
558
+ Migrating to CreateAssignmentGroups (20190702203630)
559
+  (0.1ms) BEGIN
560
+  (8.1ms) CREATE TABLE "assignment_groups" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "name" character varying, "rules" text, "position" integer, "group_weight" float, "workflow_state" character varying, "canvas_created_at" timestamp, "canvas_updated_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
561
+  (3.6ms) CREATE UNIQUE INDEX "index_assignment_groups_on_canvas_id" ON "assignment_groups" ("canvas_id")
562
+  (3.5ms) CREATE INDEX "index_assignment_groups_on_canvas_course_id" ON "assignment_groups" ("canvas_course_id")
563
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203630"]]
564
+  (1.1ms) COMMIT
565
+ Migrating to CreateContextModules (20190702203631)
566
+  (0.1ms) BEGIN
567
+  (8.8ms) CREATE TABLE "context_modules" ("id" bigserial primary key, "canvas_id" bigint, "canvas_context_id" bigint, "canvas_context_type" character varying, "position" integer, "name" character varying, "workflow_state" character varying, "deleted_at" timestamp, "unlock_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
568
+  (3.6ms) CREATE UNIQUE INDEX "index_context_modules_on_canvas_id" ON "context_modules" ("canvas_id")
569
+  (3.6ms) CREATE INDEX "index_context_modules_on_context" ON "context_modules" ("canvas_context_id", "canvas_context_type")
570
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203631"]]
571
+  (1.2ms) COMMIT
572
+ Migrating to CreateContextModuleItems (20190702203632)
573
+  (0.2ms) BEGIN
574
+  (7.9ms) CREATE TABLE "context_module_items" ("id" bigserial primary key, "canvas_id" bigint, "canvas_context_module_id" bigint, "position" integer, "canvas_content_id" bigint, "canvas_content_type" character varying, "canvas_assignment_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
575
+  (3.5ms) CREATE UNIQUE INDEX "index_context_module_items_on_canvas_id" ON "context_module_items" ("canvas_id")
576
+  (3.4ms) CREATE INDEX "index_context_module_items_on_canvas_context_module_id" ON "context_module_items" ("canvas_context_module_id")
577
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203632"]]
578
+  (1.2ms) COMMIT
579
+ Migrating to AddForkCountToCanvasSyncJobLogs (20190916154829)
580
+  (0.2ms) BEGIN
581
+  (0.3ms) ALTER TABLE "canvas_sync_job_logs" ADD "fork_count" integer
582
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190916154829"]]
583
+  (0.9ms) COMMIT
584
+ Migrating to CreateRoles (20190927204545)
585
+  (0.1ms) BEGIN
586
+  (7.7ms) CREATE TABLE "roles" ("id" bigserial primary key, "canvas_id" integer NOT NULL, "label" character varying, "base_role_type" character varying, "canvas_account_id" integer, "workflow_state" character varying, "permissions" json, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
587
+  (3.5ms) CREATE UNIQUE INDEX "index_roles_on_canvas_id" ON "roles" ("canvas_id")
588
+  (3.7ms) CREATE INDEX "index_roles_on_canvas_account_id" ON "roles" ("canvas_account_id")
589
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190927204545"]]
590
+  (1.1ms) COMMIT
591
+ Migrating to CreateAdmins (20190927204546)
592
+  (0.1ms) BEGIN
593
+  (7.9ms) CREATE TABLE "admins" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "role_name" character varying, "canvas_account_id" bigint, "canvas_role_id" bigint, "canvas_user_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
594
+  (3.4ms) CREATE UNIQUE INDEX "index_admins_on_canvas_id" ON "admins" ("canvas_id")
595
+  (3.3ms) CREATE INDEX "index_admins_on_canvas_role_id" ON "admins" ("canvas_role_id")
596
+  (3.4ms) CREATE INDEX "index_admins_on_canvas_user_id" ON "admins" ("canvas_user_id")
597
+  (4.0ms) CREATE INDEX "index_admins_on_canvas_account_id" ON "admins" ("canvas_account_id")
598
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190927204546"]]
599
+  (1.2ms) COMMIT
600
+ Migrating to CreateGroups (20200415171620)
601
+  (0.3ms) BEGIN
602
+  (8.9ms) CREATE TABLE "groups" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_group_category_id" bigint, "group_category_sis_id" character varying, "canvas_account_id" bigint, "canvas_course_id" bigint, "name" character varying, "workflow_state" character varying, "context_id" bigint, "context_type" character varying, "max_membership" integer, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
603
+  (3.7ms) CREATE UNIQUE INDEX "index_groups_on_canvas_id" ON "groups" ("canvas_id")
604
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20200415171620"]]
605
+  (1.3ms) COMMIT
606
+ Migrating to CreateGroupMemberships (20200416214248)
607
+  (0.2ms) BEGIN
608
+  (9.0ms) CREATE TABLE "group_memberships" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_user_id" bigint NOT NULL, "canvas_group_id" bigint NOT NULL, "group_sis_id" character varying, "user_sis_id" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
609
+  (3.8ms) CREATE UNIQUE INDEX "index_group_memberships_on_canvas_id" ON "group_memberships" ("canvas_id")
610
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20200416214248"]]
611
+  (1.3ms) COMMIT
612
+ Migrating to CreatePseudonyms (20201016181346)
613
+  (0.2ms) BEGIN
614
+  (8.9ms) CREATE TABLE "pseudonyms" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_user_id" bigint, "sis_id" character varying, "unique_id" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
615
+  (3.8ms) CREATE UNIQUE INDEX "index_pseudonyms_on_canvas_id" ON "pseudonyms" ("canvas_id")
616
+  (5.2ms) CREATE INDEX "index_pseudonyms_on_canvas_user_id" ON "pseudonyms" ("canvas_user_id")
617
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201016181346"]]
618
+  (1.4ms) COMMIT
619
+ Migrating to CreateCanvasSyncSyncBatches (20201018210836)
620
+  (0.3ms) BEGIN
621
+  (9.4ms) CREATE TABLE "canvas_sync_sync_batches" ("id" serial NOT NULL PRIMARY KEY, "started_at" timestamp, "completed_at" timestamp, "status" character varying, "created_at" timestamp, "updated_at" timestamp)
622
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201018210836"]]
623
+  (1.2ms) COMMIT
624
+ Migrating to AddFullSyncToCanvasSyncSyncBatch (20201030210836)
625
+  (0.2ms) BEGIN
626
+  (0.5ms) ALTER TABLE "canvas_sync_sync_batches" ADD "full_sync" boolean DEFAULT FALSE
627
+  (0.3ms) ALTER TABLE "canvas_sync_sync_batches" ADD "batch_genre" character varying
628
+  (0.3ms) ALTER TABLE "canvas_sync_sync_batches" ADD "batch_bid" character varying
629
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201030210836"]]
630
+  (1.1ms) COMMIT
631
+ ActiveRecord::InternalMetadata Load (0.4ms) SELECT "ar_internal_metadata".* FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 LIMIT $2 [["key", "environment"], ["LIMIT", 1]]
632
+  (0.3ms) BEGIN
633
+ ActiveRecord::InternalMetadata Create (0.6ms) INSERT INTO "ar_internal_metadata" ("key", "value", "created_at", "updated_at") VALUES ($1, $2, $3, $4) RETURNING "key" [["key", "environment"], ["value", "development"], ["created_at", "2021-09-07 23:32:02.640160"], ["updated_at", "2021-09-07 23:32:02.640160"]]
634
+  (1.2ms) COMMIT
635
+  (0.3ms) SELECT pg_advisory_unlock(1438354376499275445)
636
+  (0.3ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
637
+  (0.5ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
638
+  (0.3ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
639
+  (0.2ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
640
+  (0.1ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
641
+  (0.2ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
642
+  (0.2ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
643
+  (47.3ms) DROP DATABASE IF EXISTS "canvas_sync_development"
644
+  (46.1ms) DROP DATABASE IF EXISTS "canvas_sync_test"
645
+  (126.0ms) CREATE DATABASE "canvas_sync_development" ENCODING = 'unicode'
646
+  (100.6ms) CREATE DATABASE "canvas_sync_test" ENCODING = 'unicode'
647
+  (13.1ms) CREATE TABLE "schema_migrations" ("version" character varying NOT NULL PRIMARY KEY)
648
+  (8.6ms) CREATE TABLE "ar_internal_metadata" ("key" character varying NOT NULL PRIMARY KEY, "value" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
649
+  (0.1ms) SELECT pg_try_advisory_lock(1438354376499275445)
650
+  (0.3ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
651
+ Migrating to CreateCanvasSyncJobLog (20170915210836)
652
+  (0.1ms) BEGIN
653
+  (8.2ms) CREATE TABLE "canvas_sync_job_logs" ("id" serial NOT NULL PRIMARY KEY, "started_at" timestamp, "completed_at" timestamp, "exception" character varying, "backtrace" text, "job_class" character varying, "status" character varying, "metadata" text, "job_arguments" text, "created_at" timestamp, "updated_at" timestamp)
654
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20170915210836"]]
655
+  (1.2ms) COMMIT
656
+ Migrating to AddJobIdToCanvasSyncJobLogs (20180725155729)
657
+  (0.3ms) BEGIN
658
+  (0.3ms) ALTER TABLE "canvas_sync_job_logs" ADD "job_id" character varying
659
+  (3.5ms) CREATE INDEX "index_canvas_sync_job_logs_on_job_id" ON "canvas_sync_job_logs" ("job_id")
660
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20180725155729"]]
661
+  (1.1ms) COMMIT
662
+ Migrating to CreateUsers (20190702203620)
663
+  (0.1ms) BEGIN
664
+  (7.9ms) CREATE TABLE "users" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "email" character varying, "first_name" character varying, "last_name" character varying, "workflow_state" character varying, "login_id" character varying, "name" character varying, "sortable_name" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
665
+  (3.8ms) CREATE UNIQUE INDEX "index_users_on_canvas_id" ON "users" ("canvas_id")
666
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203620"]]
667
+  (1.2ms) COMMIT
668
+ Migrating to CreateCourses (20190702203621)
669
+  (0.2ms) BEGIN
670
+  (7.9ms) CREATE TABLE "courses" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "course_code" character varying, "name" character varying, "workflow_state" character varying, "canvas_account_id" integer, "canvas_term_id" integer, "start_at" timestamp, "end_at" timestamp, "grading_standard_id" bigint, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
671
+  (3.5ms) CREATE UNIQUE INDEX "index_courses_on_canvas_id" ON "courses" ("canvas_id")
672
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203621"]]
673
+  (1.4ms) COMMIT
674
+ Migrating to CreateAccounts (20190702203622)
675
+  (0.2ms) BEGIN
676
+  (8.0ms) CREATE TABLE "accounts" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_parent_account_id" bigint, "sis_parent_account_id" character varying, "name" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
677
+  (3.9ms) CREATE UNIQUE INDEX "index_accounts_on_canvas_id" ON "accounts" ("canvas_id")
678
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203622"]]
679
+  (1.5ms) COMMIT
680
+ Migrating to CreateTerms (20190702203623)
681
+  (0.2ms) BEGIN
682
+  (9.0ms) CREATE TABLE "terms" ("id" bigserial primary key, "canvas_id" integer NOT NULL, "name" character varying, "start_at" timestamp, "end_at" timestamp, "workflow_state" character varying, "grading_period_group_id" integer, "sis_id" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
683
+  (4.1ms) CREATE UNIQUE INDEX "index_terms_on_canvas_id" ON "terms" ("canvas_id")
684
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203623"]]
685
+  (1.3ms) COMMIT
686
+ Migrating to CreateEnrollments (20190702203624)
687
+  (0.4ms) BEGIN
688
+  (9.9ms) CREATE TABLE "enrollments" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "course_sis_id" character varying, "canvas_user_id" bigint, "user_sis_id" character varying, "role" character varying, "canvas_role_id" integer, "canvas_section_id" bigint, "workflow_state" character varying, "base_role_type" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
689
+  (3.9ms) CREATE UNIQUE INDEX "index_enrollments_on_canvas_id" ON "enrollments" ("canvas_id")
690
+  (4.0ms) CREATE INDEX "index_enrollments_on_canvas_course_id" ON "enrollments" ("canvas_course_id")
691
+  (4.0ms) CREATE INDEX "index_enrollments_on_canvas_user_id" ON "enrollments" ("canvas_user_id")
692
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203624"]]
693
+  (1.4ms) COMMIT
694
+ Migrating to CreateSections (20190702203625)
695
+  (0.2ms) BEGIN
696
+  (9.0ms) CREATE TABLE "sections" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_course_id" bigint, "canvas_nonxlist_course_id" bigint, "name" character varying, "workflow_state" character varying, "start_at" timestamp, "end_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
697
+  (4.2ms) CREATE UNIQUE INDEX "index_sections_on_canvas_id" ON "sections" ("canvas_id")
698
+  (4.1ms) CREATE INDEX "index_sections_on_canvas_course_id" ON "sections" ("canvas_course_id")
699
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203625"]]
700
+  (1.4ms) COMMIT
701
+ Migrating to CreateAssignments (20190702203626)
702
+  (0.3ms) BEGIN
703
+  (9.7ms) CREATE TABLE "assignments" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "title" character varying, "description" text, "due_at" timestamp, "unlock_at" timestamp, "lock_at" timestamp, "points_possible" float, "min_score" float, "max_score" float, "mastery_score" float, "grading_type" character varying, "submission_types" character varying, "workflow_state" character varying, "canvas_context_id" integer, "canvas_context_type" character varying, "canvas_assignment_group_id" integer, "canvas_grading_scheme_id" integer, "canvas_grading_standard_id" integer, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
704
+  (3.9ms) CREATE UNIQUE INDEX "index_assignments_on_canvas_id" ON "assignments" ("canvas_id")
705
+  (4.3ms) CREATE INDEX "index_assignments_on_canvas_context_id_and_canvas_context_type" ON "assignments" ("canvas_context_id", "canvas_context_type")
706
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203626"]]
707
+  (1.3ms) COMMIT
708
+ Migrating to CreateSubmissions (20190702203627)
709
+  (0.3ms) BEGIN
710
+  (9.3ms) CREATE TABLE "submissions" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "canvas_assignment_id" bigint, "canvas_user_id" bigint, "submitted_at" timestamp, "due_at" timestamp, "graded_at" timestamp, "score" float, "points_possible" float, "excused" boolean, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
711
+  (3.8ms) CREATE UNIQUE INDEX "index_submissions_on_canvas_id" ON "submissions" ("canvas_id")
712
+  (4.1ms) CREATE INDEX "index_submissions_on_canvas_assignment_id" ON "submissions" ("canvas_assignment_id")
713
+  (4.4ms) CREATE INDEX "index_submissions_on_canvas_course_id" ON "submissions" ("canvas_course_id")
714
+  (4.3ms) CREATE INDEX "index_submissions_on_canvas_user_id" ON "submissions" ("canvas_user_id")
715
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203627"]]
716
+  (1.3ms) COMMIT
717
+ Migrating to CreateAssignmentGroups (20190702203630)
718
+  (0.2ms) BEGIN
719
+  (9.4ms) CREATE TABLE "assignment_groups" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "name" character varying, "rules" text, "position" integer, "group_weight" float, "workflow_state" character varying, "canvas_created_at" timestamp, "canvas_updated_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
720
+  (4.1ms) CREATE UNIQUE INDEX "index_assignment_groups_on_canvas_id" ON "assignment_groups" ("canvas_id")
721
+  (3.9ms) CREATE INDEX "index_assignment_groups_on_canvas_course_id" ON "assignment_groups" ("canvas_course_id")
722
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203630"]]
723
+  (1.4ms) COMMIT
724
+ Migrating to CreateContextModules (20190702203631)
725
+  (0.3ms) BEGIN
726
+  (9.3ms) CREATE TABLE "context_modules" ("id" bigserial primary key, "canvas_id" bigint, "canvas_context_id" bigint, "canvas_context_type" character varying, "position" integer, "name" character varying, "workflow_state" character varying, "deleted_at" timestamp, "unlock_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
727
+  (3.9ms) CREATE UNIQUE INDEX "index_context_modules_on_canvas_id" ON "context_modules" ("canvas_id")
728
+  (4.0ms) CREATE INDEX "index_context_modules_on_context" ON "context_modules" ("canvas_context_id", "canvas_context_type")
729
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203631"]]
730
+  (1.5ms) COMMIT
731
+ Migrating to CreateContextModuleItems (20190702203632)
732
+  (0.3ms) BEGIN
733
+  (9.3ms) CREATE TABLE "context_module_items" ("id" bigserial primary key, "canvas_id" bigint, "canvas_context_module_id" bigint, "position" integer, "canvas_content_id" bigint, "canvas_content_type" character varying, "canvas_assignment_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
734
+  (4.2ms) CREATE UNIQUE INDEX "index_context_module_items_on_canvas_id" ON "context_module_items" ("canvas_id")
735
+  (3.9ms) CREATE INDEX "index_context_module_items_on_canvas_context_module_id" ON "context_module_items" ("canvas_context_module_id")
736
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203632"]]
737
+  (1.4ms) COMMIT
738
+ Migrating to AddForkCountToCanvasSyncJobLogs (20190916154829)
739
+  (0.2ms) BEGIN
740
+  (0.4ms) ALTER TABLE "canvas_sync_job_logs" ADD "fork_count" integer
741
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190916154829"]]
742
+  (1.2ms) COMMIT
743
+ Migrating to CreateRoles (20190927204545)
744
+  (0.2ms) BEGIN
745
+  (9.2ms) CREATE TABLE "roles" ("id" bigserial primary key, "canvas_id" integer NOT NULL, "label" character varying, "base_role_type" character varying, "canvas_account_id" integer, "workflow_state" character varying, "permissions" json, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
746
+  (4.1ms) CREATE UNIQUE INDEX "index_roles_on_canvas_id" ON "roles" ("canvas_id")
747
+  (3.9ms) CREATE INDEX "index_roles_on_canvas_account_id" ON "roles" ("canvas_account_id")
748
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190927204545"]]
749
+  (1.4ms) COMMIT
750
+ Migrating to CreateAdmins (20190927204546)
751
+  (0.3ms) BEGIN
752
+  (9.7ms) CREATE TABLE "admins" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "role_name" character varying, "canvas_account_id" bigint, "canvas_role_id" bigint, "canvas_user_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
753
+  (4.0ms) CREATE UNIQUE INDEX "index_admins_on_canvas_id" ON "admins" ("canvas_id")
754
+  (4.6ms) CREATE INDEX "index_admins_on_canvas_role_id" ON "admins" ("canvas_role_id")
755
+  (4.2ms) CREATE INDEX "index_admins_on_canvas_user_id" ON "admins" ("canvas_user_id")
756
+  (4.0ms) CREATE INDEX "index_admins_on_canvas_account_id" ON "admins" ("canvas_account_id")
757
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190927204546"]]
758
+  (1.4ms) COMMIT
759
+ Migrating to CreateGroups (20200415171620)
760
+  (0.3ms) BEGIN
761
+  (9.3ms) CREATE TABLE "groups" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_group_category_id" bigint, "group_category_sis_id" character varying, "canvas_account_id" bigint, "canvas_course_id" bigint, "name" character varying, "workflow_state" character varying, "context_id" bigint, "context_type" character varying, "max_membership" integer, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
762
+  (3.9ms) CREATE UNIQUE INDEX "index_groups_on_canvas_id" ON "groups" ("canvas_id")
763
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20200415171620"]]
764
+  (1.4ms) COMMIT
765
+ Migrating to CreateGroupMemberships (20200416214248)
766
+  (0.2ms) BEGIN
767
+  (8.9ms) CREATE TABLE "group_memberships" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_user_id" bigint NOT NULL, "canvas_group_id" bigint NOT NULL, "group_sis_id" character varying, "user_sis_id" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
768
+  (3.9ms) CREATE UNIQUE INDEX "index_group_memberships_on_canvas_id" ON "group_memberships" ("canvas_id")
769
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20200416214248"]]
770
+  (1.4ms) COMMIT
771
+ Migrating to CreatePseudonyms (20201016181346)
772
+  (0.3ms) BEGIN
773
+  (9.5ms) CREATE TABLE "pseudonyms" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_user_id" bigint, "sis_id" character varying, "unique_id" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
774
+  (4.4ms) CREATE UNIQUE INDEX "index_pseudonyms_on_canvas_id" ON "pseudonyms" ("canvas_id")
775
+  (5.1ms) CREATE INDEX "index_pseudonyms_on_canvas_user_id" ON "pseudonyms" ("canvas_user_id")
776
+ ActiveRecord::SchemaMigration Create (0.6ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201016181346"]]
777
+  (2.0ms) COMMIT
778
+ Migrating to CreateCanvasSyncSyncBatches (20201018210836)
779
+  (0.5ms) BEGIN
780
+  (13.4ms) CREATE TABLE "canvas_sync_sync_batches" ("id" serial NOT NULL PRIMARY KEY, "started_at" timestamp, "completed_at" timestamp, "status" character varying, "created_at" timestamp, "updated_at" timestamp)
781
+ ActiveRecord::SchemaMigration Create (1.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201018210836"]]
782
+  (2.1ms) COMMIT
783
+ Migrating to AddFullSyncToCanvasSyncSyncBatch (20201030210836)
784
+  (0.5ms) BEGIN
785
+  (0.6ms) ALTER TABLE "canvas_sync_sync_batches" ADD "full_sync" boolean DEFAULT FALSE
786
+  (0.5ms) ALTER TABLE "canvas_sync_sync_batches" ADD "batch_genre" character varying
787
+  (0.5ms) ALTER TABLE "canvas_sync_sync_batches" ADD "batch_bid" character varying
788
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201030210836"]]
789
+  (1.2ms) COMMIT
790
+ Migrating to CreateUserObservers (20210907233329)
791
+  (0.2ms) BEGIN
792
+  (9.9ms) CREATE TABLE "user_observers" ("id" bigserial primary key, "observing_user_id" bigint, "observed_user_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
793
+  (3.7ms) CREATE UNIQUE INDEX "index_user_observers_on_observed_user_id_and_observing_user_id" ON "user_observers" ("observed_user_id", "observing_user_id")
794
+  (3.6ms) CREATE INDEX "index_user_observers_on_observing_user_id" ON "user_observers" ("observing_user_id")
795
+  (3.8ms) CREATE INDEX "index_user_observers_on_observed_user_id" ON "user_observers" ("observed_user_id")
796
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20210907233329"]]
797
+  (2.0ms) COMMIT
798
+ Migrating to CreateGradingPeriods (20210907233330)
799
+  (0.3ms) BEGIN
800
+  (9.5ms) CREATE TABLE "grading_periods" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "title" character varying, "weight" float, "start_date" timestamp, "end_date" timestamp, "close_date" timestamp, "canvas_grading_period_group_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
801
+  (3.7ms) CREATE UNIQUE INDEX "index_grading_periods_on_canvas_id" ON "grading_periods" ("canvas_id")
802
+  (3.9ms) CREATE INDEX "index_grading_periods_on_canvas_grading_period_group_id" ON "grading_periods" ("canvas_grading_period_group_id")
803
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20210907233330"]]
804
+  (1.4ms) COMMIT
805
+ Migrating to CreateGradingPeriodGroups (20210907233331)
806
+  (0.3ms) BEGIN
807
+  (9.2ms) CREATE TABLE "grading_period_groups" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "canvas_account_id" bigint, "title" character varying, "weighted" boolean, "display_totals_for_all_grading_periods" boolean, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
808
+  (3.9ms) CREATE UNIQUE INDEX "index_grading_period_groups_on_canvas_id" ON "grading_period_groups" ("canvas_id")
809
+  (3.8ms) CREATE INDEX "index_grading_period_groups_on_canvas_course_id" ON "grading_period_groups" ("canvas_course_id")
810
+  (3.6ms) CREATE INDEX "index_grading_period_groups_on_canvas_account_id" ON "grading_period_groups" ("canvas_account_id")
811
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20210907233331"]]
812
+  (1.5ms) COMMIT
813
+ ActiveRecord::InternalMetadata Load (0.4ms) SELECT "ar_internal_metadata".* FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 LIMIT $2 [["key", "environment"], ["LIMIT", 1]]
814
+  (0.2ms) BEGIN
815
+ ActiveRecord::InternalMetadata Create (0.6ms) INSERT INTO "ar_internal_metadata" ("key", "value", "created_at", "updated_at") VALUES ($1, $2, $3, $4) RETURNING "key" [["key", "environment"], ["value", "development"], ["created_at", "2021-09-07 23:33:44.270929"], ["updated_at", "2021-09-07 23:33:44.270929"]]
816
+  (1.1ms) COMMIT
817
+  (0.3ms) SELECT pg_advisory_unlock(1438354376499275445)
818
+  (0.3ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
819
+  (0.5ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
820
+  (0.3ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
821
+  (0.2ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
822
+  (0.2ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
823
+  (0.2ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
824
+  (0.2ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
825
+  (60.9ms) DROP DATABASE IF EXISTS "canvas_sync_development"
826
+  (38.0ms) DROP DATABASE IF EXISTS "canvas_sync_test"
827
+  (137.2ms) CREATE DATABASE "canvas_sync_development" ENCODING = 'unicode'
828
+  (108.4ms) CREATE DATABASE "canvas_sync_test" ENCODING = 'unicode'
829
+  (18.6ms) CREATE TABLE "schema_migrations" ("version" character varying NOT NULL PRIMARY KEY)
830
+  (9.3ms) CREATE TABLE "ar_internal_metadata" ("key" character varying NOT NULL PRIMARY KEY, "value" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
831
+  (0.2ms) SELECT pg_try_advisory_lock(1438354376499275445)
832
+  (0.3ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
833
+ Migrating to CreateCanvasSyncJobLog (20170915210836)
834
+  (0.1ms) BEGIN
835
+  (8.5ms) CREATE TABLE "canvas_sync_job_logs" ("id" serial NOT NULL PRIMARY KEY, "started_at" timestamp, "completed_at" timestamp, "exception" character varying, "backtrace" text, "job_class" character varying, "status" character varying, "metadata" text, "job_arguments" text, "created_at" timestamp, "updated_at" timestamp)
836
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20170915210836"]]
837
+  (1.4ms) COMMIT
838
+ Migrating to AddJobIdToCanvasSyncJobLogs (20180725155729)
839
+  (0.2ms) BEGIN
840
+  (0.2ms) ALTER TABLE "canvas_sync_job_logs" ADD "job_id" character varying
841
+  (3.5ms) CREATE INDEX "index_canvas_sync_job_logs_on_job_id" ON "canvas_sync_job_logs" ("job_id")
842
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20180725155729"]]
843
+  (1.0ms) COMMIT
844
+ Migrating to CreateUsers (20190702203620)
845
+  (0.1ms) BEGIN
846
+  (8.3ms) CREATE TABLE "users" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "email" character varying, "first_name" character varying, "last_name" character varying, "workflow_state" character varying, "login_id" character varying, "name" character varying, "sortable_name" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
847
+  (3.9ms) CREATE UNIQUE INDEX "index_users_on_canvas_id" ON "users" ("canvas_id")
848
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203620"]]
849
+  (1.5ms) COMMIT
850
+ Migrating to CreateCourses (20190702203621)
851
+  (0.3ms) BEGIN
852
+  (10.6ms) CREATE TABLE "courses" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "course_code" character varying, "name" character varying, "workflow_state" character varying, "canvas_account_id" integer, "canvas_term_id" integer, "start_at" timestamp, "end_at" timestamp, "grading_standard_id" bigint, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
853
+  (4.3ms) CREATE UNIQUE INDEX "index_courses_on_canvas_id" ON "courses" ("canvas_id")
854
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203621"]]
855
+  (1.4ms) COMMIT
856
+ Migrating to CreateAccounts (20190702203622)
857
+  (0.4ms) BEGIN
858
+  (10.6ms) CREATE TABLE "accounts" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_parent_account_id" bigint, "sis_parent_account_id" character varying, "name" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
859
+  (4.5ms) CREATE UNIQUE INDEX "index_accounts_on_canvas_id" ON "accounts" ("canvas_id")
860
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203622"]]
861
+  (1.4ms) COMMIT
862
+ Migrating to CreateTerms (20190702203623)
863
+  (0.4ms) BEGIN
864
+  (10.4ms) CREATE TABLE "terms" ("id" bigserial primary key, "canvas_id" integer NOT NULL, "name" character varying, "start_at" timestamp, "end_at" timestamp, "workflow_state" character varying, "grading_period_group_id" integer, "sis_id" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
865
+  (5.1ms) CREATE UNIQUE INDEX "index_terms_on_canvas_id" ON "terms" ("canvas_id")
866
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203623"]]
867
+  (1.2ms) COMMIT
868
+ Migrating to CreateEnrollments (20190702203624)
869
+  (0.4ms) BEGIN
870
+  (10.4ms) CREATE TABLE "enrollments" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "course_sis_id" character varying, "canvas_user_id" bigint, "user_sis_id" character varying, "role" character varying, "canvas_role_id" integer, "canvas_section_id" bigint, "workflow_state" character varying, "base_role_type" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
871
+  (4.2ms) CREATE UNIQUE INDEX "index_enrollments_on_canvas_id" ON "enrollments" ("canvas_id")
872
+  (4.5ms) CREATE INDEX "index_enrollments_on_canvas_course_id" ON "enrollments" ("canvas_course_id")
873
+  (4.5ms) CREATE INDEX "index_enrollments_on_canvas_user_id" ON "enrollments" ("canvas_user_id")
874
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203624"]]
875
+  (1.4ms) COMMIT
876
+ Migrating to CreateSections (20190702203625)
877
+  (0.3ms) BEGIN
878
+  (10.9ms) CREATE TABLE "sections" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_course_id" bigint, "canvas_nonxlist_course_id" bigint, "name" character varying, "workflow_state" character varying, "start_at" timestamp, "end_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
879
+  (4.5ms) CREATE UNIQUE INDEX "index_sections_on_canvas_id" ON "sections" ("canvas_id")
880
+  (4.3ms) CREATE INDEX "index_sections_on_canvas_course_id" ON "sections" ("canvas_course_id")
881
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203625"]]
882
+  (1.7ms) COMMIT
883
+ Migrating to CreateAssignments (20190702203626)
884
+  (0.4ms) BEGIN
885
+  (11.5ms) CREATE TABLE "assignments" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "title" character varying, "description" text, "due_at" timestamp, "unlock_at" timestamp, "lock_at" timestamp, "points_possible" float, "min_score" float, "max_score" float, "mastery_score" float, "grading_type" character varying, "submission_types" character varying, "workflow_state" character varying, "canvas_context_id" integer, "canvas_context_type" character varying, "canvas_assignment_group_id" integer, "canvas_grading_scheme_id" integer, "canvas_grading_standard_id" integer, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
886
+  (4.5ms) CREATE UNIQUE INDEX "index_assignments_on_canvas_id" ON "assignments" ("canvas_id")
887
+  (4.5ms) CREATE INDEX "index_assignments_on_canvas_context_id_and_canvas_context_type" ON "assignments" ("canvas_context_id", "canvas_context_type")
888
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203626"]]
889
+  (1.5ms) COMMIT
890
+ Migrating to CreateSubmissions (20190702203627)
891
+  (0.4ms) BEGIN
892
+  (11.1ms) CREATE TABLE "submissions" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "canvas_assignment_id" bigint, "canvas_user_id" bigint, "submitted_at" timestamp, "due_at" timestamp, "graded_at" timestamp, "score" float, "points_possible" float, "excused" boolean, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
893
+  (4.5ms) CREATE UNIQUE INDEX "index_submissions_on_canvas_id" ON "submissions" ("canvas_id")
894
+  (4.5ms) CREATE INDEX "index_submissions_on_canvas_assignment_id" ON "submissions" ("canvas_assignment_id")
895
+  (4.7ms) CREATE INDEX "index_submissions_on_canvas_course_id" ON "submissions" ("canvas_course_id")
896
+  (4.7ms) CREATE INDEX "index_submissions_on_canvas_user_id" ON "submissions" ("canvas_user_id")
897
+ ActiveRecord::SchemaMigration Create (0.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203627"]]
898
+  (1.6ms) COMMIT
899
+ Migrating to CreateAssignmentGroups (20190702203630)
900
+  (0.4ms) BEGIN
901
+  (10.7ms) CREATE TABLE "assignment_groups" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "name" character varying, "rules" text, "position" integer, "group_weight" float, "workflow_state" character varying, "canvas_created_at" timestamp, "canvas_updated_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
902
+  (4.8ms) CREATE UNIQUE INDEX "index_assignment_groups_on_canvas_id" ON "assignment_groups" ("canvas_id")
903
+  (4.1ms) CREATE INDEX "index_assignment_groups_on_canvas_course_id" ON "assignment_groups" ("canvas_course_id")
904
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203630"]]
905
+  (1.5ms) COMMIT
906
+ Migrating to CreateContextModules (20190702203631)
907
+  (0.3ms) BEGIN
908
+  (10.1ms) CREATE TABLE "context_modules" ("id" bigserial primary key, "canvas_id" bigint, "canvas_context_id" bigint, "canvas_context_type" character varying, "position" integer, "name" character varying, "workflow_state" character varying, "deleted_at" timestamp, "unlock_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
909
+  (4.3ms) CREATE UNIQUE INDEX "index_context_modules_on_canvas_id" ON "context_modules" ("canvas_id")
910
+  (4.1ms) CREATE INDEX "index_context_modules_on_context" ON "context_modules" ("canvas_context_id", "canvas_context_type")
911
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203631"]]
912
+  (1.4ms) COMMIT
913
+ Migrating to CreateContextModuleItems (20190702203632)
914
+  (0.3ms) BEGIN
915
+  (9.9ms) CREATE TABLE "context_module_items" ("id" bigserial primary key, "canvas_id" bigint, "canvas_context_module_id" bigint, "position" integer, "canvas_content_id" bigint, "canvas_content_type" character varying, "canvas_assignment_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
916
+  (4.3ms) CREATE UNIQUE INDEX "index_context_module_items_on_canvas_id" ON "context_module_items" ("canvas_id")
917
+  (4.0ms) CREATE INDEX "index_context_module_items_on_canvas_context_module_id" ON "context_module_items" ("canvas_context_module_id")
918
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203632"]]
919
+  (1.5ms) COMMIT
920
+ Migrating to AddForkCountToCanvasSyncJobLogs (20190916154829)
921
+  (0.3ms) BEGIN
922
+  (0.4ms) ALTER TABLE "canvas_sync_job_logs" ADD "fork_count" integer
923
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190916154829"]]
924
+  (1.2ms) COMMIT
925
+ Migrating to CreateRoles (20190927204545)
926
+  (0.2ms) BEGIN
927
+  (10.2ms) CREATE TABLE "roles" ("id" bigserial primary key, "canvas_id" integer NOT NULL, "label" character varying, "base_role_type" character varying, "canvas_account_id" integer, "workflow_state" character varying, "permissions" json, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
928
+  (4.0ms) CREATE UNIQUE INDEX "index_roles_on_canvas_id" ON "roles" ("canvas_id")
929
+  (4.2ms) CREATE INDEX "index_roles_on_canvas_account_id" ON "roles" ("canvas_account_id")
930
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190927204545"]]
931
+  (1.4ms) COMMIT
932
+ Migrating to CreateAdmins (20190927204546)
933
+  (0.3ms) BEGIN
934
+  (9.8ms) CREATE TABLE "admins" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "role_name" character varying, "canvas_account_id" bigint, "canvas_role_id" bigint, "canvas_user_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
935
+  (4.2ms) CREATE UNIQUE INDEX "index_admins_on_canvas_id" ON "admins" ("canvas_id")
936
+  (3.9ms) CREATE INDEX "index_admins_on_canvas_role_id" ON "admins" ("canvas_role_id")
937
+  (4.1ms) CREATE INDEX "index_admins_on_canvas_user_id" ON "admins" ("canvas_user_id")
938
+  (4.2ms) CREATE INDEX "index_admins_on_canvas_account_id" ON "admins" ("canvas_account_id")
939
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190927204546"]]
940
+  (1.4ms) COMMIT
941
+ Migrating to CreateGroups (20200415171620)
942
+  (0.3ms) BEGIN
943
+  (10.0ms) CREATE TABLE "groups" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_group_category_id" bigint, "group_category_sis_id" character varying, "canvas_account_id" bigint, "canvas_course_id" bigint, "name" character varying, "workflow_state" character varying, "context_id" bigint, "context_type" character varying, "max_membership" integer, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
944
+  (4.1ms) CREATE UNIQUE INDEX "index_groups_on_canvas_id" ON "groups" ("canvas_id")
945
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20200415171620"]]
946
+  (1.7ms) COMMIT
947
+ Migrating to CreateGroupMemberships (20200416214248)
948
+  (0.3ms) BEGIN
949
+  (9.6ms) CREATE TABLE "group_memberships" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_user_id" bigint NOT NULL, "canvas_group_id" bigint NOT NULL, "group_sis_id" character varying, "user_sis_id" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
950
+  (4.0ms) CREATE UNIQUE INDEX "index_group_memberships_on_canvas_id" ON "group_memberships" ("canvas_id")
951
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20200416214248"]]
952
+  (1.5ms) COMMIT
953
+ Migrating to CreatePseudonyms (20201016181346)
954
+  (0.3ms) BEGIN
955
+  (10.9ms) CREATE TABLE "pseudonyms" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_user_id" bigint, "sis_id" character varying, "unique_id" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
956
+  (4.7ms) CREATE UNIQUE INDEX "index_pseudonyms_on_canvas_id" ON "pseudonyms" ("canvas_id")
957
+  (4.2ms) CREATE INDEX "index_pseudonyms_on_canvas_user_id" ON "pseudonyms" ("canvas_user_id")
958
+ ActiveRecord::SchemaMigration Create (0.4ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201016181346"]]
959
+  (1.5ms) COMMIT
960
+ Migrating to CreateCanvasSyncSyncBatches (20201018210836)
961
+  (0.4ms) BEGIN
962
+  (10.0ms) CREATE TABLE "canvas_sync_sync_batches" ("id" serial NOT NULL PRIMARY KEY, "started_at" timestamp, "completed_at" timestamp, "status" character varying, "created_at" timestamp, "updated_at" timestamp)
963
+ ActiveRecord::SchemaMigration Create (0.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201018210836"]]
964
+  (1.5ms) COMMIT
965
+ Migrating to AddFullSyncToCanvasSyncSyncBatch (20201030210836)
966
+  (0.5ms) BEGIN
967
+  (0.7ms) ALTER TABLE "canvas_sync_sync_batches" ADD "full_sync" boolean DEFAULT FALSE
968
+  (0.5ms) ALTER TABLE "canvas_sync_sync_batches" ADD "batch_genre" character varying
969
+  (0.6ms) ALTER TABLE "canvas_sync_sync_batches" ADD "batch_bid" character varying
970
+ ActiveRecord::SchemaMigration Create (0.6ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201030210836"]]
971
+  (1.4ms) COMMIT
972
+ Migrating to CreateUserObservers (20210907233329)
973
+  (0.4ms) BEGIN
974
+  (14.6ms) CREATE TABLE "user_observers" ("id" bigserial primary key, "observing_user_id" bigint, "observed_user_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
975
+  (4.1ms) CREATE UNIQUE INDEX "index_user_observers_on_observed_user_id_and_observing_user_id" ON "user_observers" ("observed_user_id", "observing_user_id")
976
+  (3.6ms) CREATE INDEX "index_user_observers_on_observing_user_id" ON "user_observers" ("observing_user_id")
977
+  (3.6ms) CREATE INDEX "index_user_observers_on_observed_user_id" ON "user_observers" ("observed_user_id")
978
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20210907233329"]]
979
+  (1.3ms) COMMIT
980
+ ActiveRecord::InternalMetadata Load (0.3ms) SELECT "ar_internal_metadata".* FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 LIMIT $2 [["key", "environment"], ["LIMIT", 1]]
981
+  (0.2ms) BEGIN
982
+ ActiveRecord::InternalMetadata Create (0.5ms) INSERT INTO "ar_internal_metadata" ("key", "value", "created_at", "updated_at") VALUES ($1, $2, $3, $4) RETURNING "key" [["key", "environment"], ["value", "development"], ["created_at", "2021-09-07 23:46:17.793485"], ["updated_at", "2021-09-07 23:46:17.793485"]]
983
+  (1.1ms) COMMIT
984
+  (0.3ms) SELECT pg_advisory_unlock(1438354376499275445)
985
+  (0.2ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
986
+  (0.5ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
987
+  (0.3ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
988
+  (0.2ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
989
+  (0.2ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
990
+  (0.2ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
991
+  (0.2ms) SELECT "ar_internal_metadata"."value" FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 [["key", "environment"]]
992
+  (62.7ms) DROP DATABASE IF EXISTS "canvas_sync_development"
993
+  (48.1ms) DROP DATABASE IF EXISTS "canvas_sync_test"
994
+  (120.8ms) CREATE DATABASE "canvas_sync_development" ENCODING = 'unicode'
995
+  (122.5ms) CREATE DATABASE "canvas_sync_test" ENCODING = 'unicode'
996
+  (13.3ms) CREATE TABLE "schema_migrations" ("version" character varying NOT NULL PRIMARY KEY)
997
+  (8.9ms) CREATE TABLE "ar_internal_metadata" ("key" character varying NOT NULL PRIMARY KEY, "value" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
998
+  (0.2ms) SELECT pg_try_advisory_lock(1438354376499275445)
999
+  (0.3ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
1000
+ Migrating to CreateCanvasSyncJobLog (20170915210836)
1001
+  (0.2ms) BEGIN
1002
+  (8.5ms) CREATE TABLE "canvas_sync_job_logs" ("id" serial NOT NULL PRIMARY KEY, "started_at" timestamp, "completed_at" timestamp, "exception" character varying, "backtrace" text, "job_class" character varying, "status" character varying, "metadata" text, "job_arguments" text, "created_at" timestamp, "updated_at" timestamp)
1003
+ ActiveRecord::SchemaMigration Create (0.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20170915210836"]]
1004
+  (1.3ms) COMMIT
1005
+ Migrating to AddJobIdToCanvasSyncJobLogs (20180725155729)
1006
+  (0.2ms) BEGIN
1007
+  (0.3ms) ALTER TABLE "canvas_sync_job_logs" ADD "job_id" character varying
1008
+  (3.8ms) CREATE INDEX "index_canvas_sync_job_logs_on_job_id" ON "canvas_sync_job_logs" ("job_id")
1009
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20180725155729"]]
1010
+  (1.4ms) COMMIT
1011
+ Migrating to CreateUsers (20190702203620)
1012
+  (0.2ms) BEGIN
1013
+  (8.8ms) CREATE TABLE "users" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "email" character varying, "first_name" character varying, "last_name" character varying, "workflow_state" character varying, "login_id" character varying, "name" character varying, "sortable_name" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1014
+  (6.8ms) CREATE UNIQUE INDEX "index_users_on_canvas_id" ON "users" ("canvas_id")
1015
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203620"]]
1016
+  (4.3ms) COMMIT
1017
+ Migrating to CreateCourses (20190702203621)
1018
+  (0.2ms) BEGIN
1019
+  (14.0ms) CREATE TABLE "courses" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "course_code" character varying, "name" character varying, "workflow_state" character varying, "canvas_account_id" integer, "canvas_term_id" integer, "start_at" timestamp, "end_at" timestamp, "grading_standard_id" bigint, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1020
+  (6.8ms) CREATE UNIQUE INDEX "index_courses_on_canvas_id" ON "courses" ("canvas_id")
1021
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203621"]]
1022
+  (4.4ms) COMMIT
1023
+ Migrating to CreateAccounts (20190702203622)
1024
+  (0.2ms) BEGIN
1025
+  (14.8ms) CREATE TABLE "accounts" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_parent_account_id" bigint, "sis_parent_account_id" character varying, "name" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1026
+  (3.9ms) CREATE UNIQUE INDEX "index_accounts_on_canvas_id" ON "accounts" ("canvas_id")
1027
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203622"]]
1028
+  (1.3ms) COMMIT
1029
+ Migrating to CreateTerms (20190702203623)
1030
+  (0.2ms) BEGIN
1031
+  (8.5ms) CREATE TABLE "terms" ("id" bigserial primary key, "canvas_id" integer NOT NULL, "name" character varying, "start_at" timestamp, "end_at" timestamp, "workflow_state" character varying, "grading_period_group_id" integer, "sis_id" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1032
+  (3.5ms) CREATE UNIQUE INDEX "index_terms_on_canvas_id" ON "terms" ("canvas_id")
1033
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203623"]]
1034
+  (1.3ms) COMMIT
1035
+ Migrating to CreateEnrollments (20190702203624)
1036
+  (0.2ms) BEGIN
1037
+  (8.4ms) CREATE TABLE "enrollments" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "course_sis_id" character varying, "canvas_user_id" bigint, "user_sis_id" character varying, "role" character varying, "canvas_role_id" integer, "canvas_section_id" bigint, "workflow_state" character varying, "base_role_type" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1038
+  (4.1ms) CREATE UNIQUE INDEX "index_enrollments_on_canvas_id" ON "enrollments" ("canvas_id")
1039
+  (3.7ms) CREATE INDEX "index_enrollments_on_canvas_course_id" ON "enrollments" ("canvas_course_id")
1040
+  (3.6ms) CREATE INDEX "index_enrollments_on_canvas_user_id" ON "enrollments" ("canvas_user_id")
1041
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203624"]]
1042
+  (1.4ms) COMMIT
1043
+ Migrating to CreateSections (20190702203625)
1044
+  (0.2ms) BEGIN
1045
+  (8.8ms) CREATE TABLE "sections" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_course_id" bigint, "canvas_nonxlist_course_id" bigint, "name" character varying, "workflow_state" character varying, "start_at" timestamp, "end_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1046
+  (3.8ms) CREATE UNIQUE INDEX "index_sections_on_canvas_id" ON "sections" ("canvas_id")
1047
+  (3.9ms) CREATE INDEX "index_sections_on_canvas_course_id" ON "sections" ("canvas_course_id")
1048
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203625"]]
1049
+  (1.2ms) COMMIT
1050
+ Migrating to CreateAssignments (20190702203626)
1051
+  (0.2ms) BEGIN
1052
+  (8.0ms) CREATE TABLE "assignments" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "title" character varying, "description" text, "due_at" timestamp, "unlock_at" timestamp, "lock_at" timestamp, "points_possible" float, "min_score" float, "max_score" float, "mastery_score" float, "grading_type" character varying, "submission_types" character varying, "workflow_state" character varying, "canvas_context_id" integer, "canvas_context_type" character varying, "canvas_assignment_group_id" integer, "canvas_grading_scheme_id" integer, "canvas_grading_standard_id" integer, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1053
+  (3.6ms) CREATE UNIQUE INDEX "index_assignments_on_canvas_id" ON "assignments" ("canvas_id")
1054
+  (3.7ms) CREATE INDEX "index_assignments_on_canvas_context_id_and_canvas_context_type" ON "assignments" ("canvas_context_id", "canvas_context_type")
1055
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203626"]]
1056
+  (1.3ms) COMMIT
1057
+ Migrating to CreateSubmissions (20190702203627)
1058
+  (0.3ms) BEGIN
1059
+  (9.2ms) CREATE TABLE "submissions" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "canvas_assignment_id" bigint, "canvas_user_id" bigint, "submitted_at" timestamp, "due_at" timestamp, "graded_at" timestamp, "score" float, "points_possible" float, "excused" boolean, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1060
+  (3.6ms) CREATE UNIQUE INDEX "index_submissions_on_canvas_id" ON "submissions" ("canvas_id")
1061
+  (3.7ms) CREATE INDEX "index_submissions_on_canvas_assignment_id" ON "submissions" ("canvas_assignment_id")
1062
+  (3.8ms) CREATE INDEX "index_submissions_on_canvas_course_id" ON "submissions" ("canvas_course_id")
1063
+  (3.7ms) CREATE INDEX "index_submissions_on_canvas_user_id" ON "submissions" ("canvas_user_id")
1064
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203627"]]
1065
+  (1.2ms) COMMIT
1066
+ Migrating to CreateAssignmentGroups (20190702203630)
1067
+  (0.3ms) BEGIN
1068
+  (8.5ms) CREATE TABLE "assignment_groups" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "name" character varying, "rules" text, "position" integer, "group_weight" float, "workflow_state" character varying, "canvas_created_at" timestamp, "canvas_updated_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1069
+  (3.7ms) CREATE UNIQUE INDEX "index_assignment_groups_on_canvas_id" ON "assignment_groups" ("canvas_id")
1070
+  (4.4ms) CREATE INDEX "index_assignment_groups_on_canvas_course_id" ON "assignment_groups" ("canvas_course_id")
1071
+ ActiveRecord::SchemaMigration Create (1.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203630"]]
1072
+  (1.4ms) COMMIT
1073
+ Migrating to CreateContextModules (20190702203631)
1074
+  (0.2ms) BEGIN
1075
+  (8.2ms) CREATE TABLE "context_modules" ("id" bigserial primary key, "canvas_id" bigint, "canvas_context_id" bigint, "canvas_context_type" character varying, "position" integer, "name" character varying, "workflow_state" character varying, "deleted_at" timestamp, "unlock_at" timestamp, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1076
+  (3.7ms) CREATE UNIQUE INDEX "index_context_modules_on_canvas_id" ON "context_modules" ("canvas_id")
1077
+  (3.9ms) CREATE INDEX "index_context_modules_on_context" ON "context_modules" ("canvas_context_id", "canvas_context_type")
1078
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203631"]]
1079
+  (1.5ms) COMMIT
1080
+ Migrating to CreateContextModuleItems (20190702203632)
1081
+  (0.2ms) BEGIN
1082
+  (7.9ms) CREATE TABLE "context_module_items" ("id" bigserial primary key, "canvas_id" bigint, "canvas_context_module_id" bigint, "position" integer, "canvas_content_id" bigint, "canvas_content_type" character varying, "canvas_assignment_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1083
+  (4.3ms) CREATE UNIQUE INDEX "index_context_module_items_on_canvas_id" ON "context_module_items" ("canvas_id")
1084
+  (3.6ms) CREATE INDEX "index_context_module_items_on_canvas_context_module_id" ON "context_module_items" ("canvas_context_module_id")
1085
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190702203632"]]
1086
+  (1.2ms) COMMIT
1087
+ Migrating to AddForkCountToCanvasSyncJobLogs (20190916154829)
1088
+  (0.2ms) BEGIN
1089
+  (0.2ms) ALTER TABLE "canvas_sync_job_logs" ADD "fork_count" integer
1090
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190916154829"]]
1091
+  (1.0ms) COMMIT
1092
+ Migrating to CreateRoles (20190927204545)
1093
+  (0.1ms) BEGIN
1094
+  (7.8ms) CREATE TABLE "roles" ("id" bigserial primary key, "canvas_id" integer NOT NULL, "label" character varying, "base_role_type" character varying, "canvas_account_id" integer, "workflow_state" character varying, "permissions" json, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1095
+  (3.7ms) CREATE UNIQUE INDEX "index_roles_on_canvas_id" ON "roles" ("canvas_id")
1096
+  (3.4ms) CREATE INDEX "index_roles_on_canvas_account_id" ON "roles" ("canvas_account_id")
1097
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190927204545"]]
1098
+  (1.4ms) COMMIT
1099
+ Migrating to CreateAdmins (20190927204546)
1100
+  (0.2ms) BEGIN
1101
+  (8.3ms) CREATE TABLE "admins" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "role_name" character varying, "canvas_account_id" bigint, "canvas_role_id" bigint, "canvas_user_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1102
+  (3.8ms) CREATE UNIQUE INDEX "index_admins_on_canvas_id" ON "admins" ("canvas_id")
1103
+  (4.2ms) CREATE INDEX "index_admins_on_canvas_role_id" ON "admins" ("canvas_role_id")
1104
+  (3.5ms) CREATE INDEX "index_admins_on_canvas_user_id" ON "admins" ("canvas_user_id")
1105
+  (3.9ms) CREATE INDEX "index_admins_on_canvas_account_id" ON "admins" ("canvas_account_id")
1106
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20190927204546"]]
1107
+  (1.1ms) COMMIT
1108
+ Migrating to CreateGroups (20200415171620)
1109
+  (0.2ms) BEGIN
1110
+  (8.1ms) CREATE TABLE "groups" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "sis_id" character varying, "canvas_group_category_id" bigint, "group_category_sis_id" character varying, "canvas_account_id" bigint, "canvas_course_id" bigint, "name" character varying, "workflow_state" character varying, "context_id" bigint, "context_type" character varying, "max_membership" integer, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1111
+  (3.8ms) CREATE UNIQUE INDEX "index_groups_on_canvas_id" ON "groups" ("canvas_id")
1112
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20200415171620"]]
1113
+  (1.3ms) COMMIT
1114
+ Migrating to CreateGroupMemberships (20200416214248)
1115
+  (0.3ms) BEGIN
1116
+  (8.7ms) CREATE TABLE "group_memberships" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_user_id" bigint NOT NULL, "canvas_group_id" bigint NOT NULL, "group_sis_id" character varying, "user_sis_id" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1117
+  (3.8ms) CREATE UNIQUE INDEX "index_group_memberships_on_canvas_id" ON "group_memberships" ("canvas_id")
1118
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20200416214248"]]
1119
+  (1.1ms) COMMIT
1120
+ Migrating to CreatePseudonyms (20201016181346)
1121
+  (0.2ms) BEGIN
1122
+  (8.9ms) CREATE TABLE "pseudonyms" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_user_id" bigint, "sis_id" character varying, "unique_id" character varying, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1123
+  (3.7ms) CREATE UNIQUE INDEX "index_pseudonyms_on_canvas_id" ON "pseudonyms" ("canvas_id")
1124
+  (3.7ms) CREATE INDEX "index_pseudonyms_on_canvas_user_id" ON "pseudonyms" ("canvas_user_id")
1125
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201016181346"]]
1126
+  (1.4ms) COMMIT
1127
+ Migrating to CreateCanvasSyncSyncBatches (20201018210836)
1128
+  (0.1ms) BEGIN
1129
+  (8.8ms) CREATE TABLE "canvas_sync_sync_batches" ("id" serial NOT NULL PRIMARY KEY, "started_at" timestamp, "completed_at" timestamp, "status" character varying, "created_at" timestamp, "updated_at" timestamp)
1130
+ ActiveRecord::SchemaMigration Create (0.7ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201018210836"]]
1131
+  (2.0ms) COMMIT
1132
+ Migrating to AddFullSyncToCanvasSyncSyncBatch (20201030210836)
1133
+  (0.6ms) BEGIN
1134
+  (1.2ms) ALTER TABLE "canvas_sync_sync_batches" ADD "full_sync" boolean DEFAULT FALSE
1135
+  (0.8ms) ALTER TABLE "canvas_sync_sync_batches" ADD "batch_genre" character varying
1136
+  (0.6ms) ALTER TABLE "canvas_sync_sync_batches" ADD "batch_bid" character varying
1137
+ ActiveRecord::SchemaMigration Create (0.7ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20201030210836"]]
1138
+  (1.4ms) COMMIT
1139
+ Migrating to CreateUserObservers (20210907233329)
1140
+  (0.4ms) BEGIN
1141
+  (14.0ms) CREATE TABLE "user_observers" ("id" bigserial primary key, "observing_user_id" bigint, "observed_user_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1142
+  (5.8ms) CREATE UNIQUE INDEX "index_user_observers_on_observed_user_id_and_observing_user_id" ON "user_observers" ("observed_user_id", "observing_user_id")
1143
+  (5.9ms) CREATE INDEX "index_user_observers_on_observing_user_id" ON "user_observers" ("observing_user_id")
1144
+  (5.3ms) CREATE INDEX "index_user_observers_on_observed_user_id" ON "user_observers" ("observed_user_id")
1145
+ ActiveRecord::SchemaMigration Create (0.7ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20210907233329"]]
1146
+  (2.1ms) COMMIT
1147
+ Migrating to CreateGradingPeriods (20210907233330)
1148
+  (0.5ms) BEGIN
1149
+  (14.1ms) CREATE TABLE "grading_periods" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "title" character varying, "weight" float, "start_date" timestamp, "end_date" timestamp, "close_date" timestamp, "canvas_grading_period_group_id" bigint, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1150
+  (4.2ms) CREATE UNIQUE INDEX "index_grading_periods_on_canvas_id" ON "grading_periods" ("canvas_id")
1151
+  (3.9ms) CREATE INDEX "index_grading_periods_on_canvas_grading_period_group_id" ON "grading_periods" ("canvas_grading_period_group_id")
1152
+ ActiveRecord::SchemaMigration Create (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20210907233330"]]
1153
+  (1.2ms) COMMIT
1154
+ Migrating to CreateGradingPeriodGroups (20210907233331)
1155
+  (0.2ms) BEGIN
1156
+  (8.5ms) CREATE TABLE "grading_period_groups" ("id" bigserial primary key, "canvas_id" bigint NOT NULL, "canvas_course_id" bigint, "canvas_account_id" bigint, "title" character varying, "weighted" boolean, "display_totals_for_all_grading_periods" boolean, "workflow_state" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL)
1157
+  (3.9ms) CREATE UNIQUE INDEX "index_grading_period_groups_on_canvas_id" ON "grading_period_groups" ("canvas_id")
1158
+  (3.6ms) CREATE INDEX "index_grading_period_groups_on_canvas_course_id" ON "grading_period_groups" ("canvas_course_id")
1159
+  (3.8ms) CREATE INDEX "index_grading_period_groups_on_canvas_account_id" ON "grading_period_groups" ("canvas_account_id")
1160
+ ActiveRecord::SchemaMigration Create (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "version" [["version", "20210907233331"]]
1161
+  (1.4ms) COMMIT
1162
+ ActiveRecord::InternalMetadata Load (0.3ms) SELECT "ar_internal_metadata".* FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 LIMIT $2 [["key", "environment"], ["LIMIT", 1]]
1163
+  (0.2ms) BEGIN
1164
+ ActiveRecord::InternalMetadata Create (0.4ms) INSERT INTO "ar_internal_metadata" ("key", "value", "created_at", "updated_at") VALUES ($1, $2, $3, $4) RETURNING "key" [["key", "environment"], ["value", "development"], ["created_at", "2021-09-07 23:47:41.300013"], ["updated_at", "2021-09-07 23:47:41.300013"]]
1165
+  (1.1ms) COMMIT
1166
+  (0.2ms) SELECT pg_advisory_unlock(1438354376499275445)
1167
+  (0.2ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC