Closed ralphotowo closed 3 years ago
I just found out that there is a stable branch, much like the Canvas code. So I git reset --hard origin/stable, bundle updated and attempted to re-run migrations. There was some progress, but now there's a new error:
root@ip-172-31-21-71:/var/www/canvas# RAILS_ENV=production bundle exec rake db:migrate
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/soap4r-ruby1.9-2.0.5/lib/soap/mapping/encodedregistry.rb:150: warning: constant ::Fixnum is deprecated
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/soap4r-ruby1.9-2.0.5/lib/soap/mapping/encodedregistry.rb:216: warning: constant ::Fixnum is deprecated
1: production:public
== CacheGradeDistributions: migrating ========================================
== CacheGradeDistributions: migrated (0.0438s) ===============================
== AddCassandraPageViewAnalyticsTables: migrating ============================
== AddCassandraPageViewAnalyticsTables: migrated (0.3383s) ===================
== AddParticipationsCountToCassandra: migrating ==============================
== AddParticipationsCountToCassandra: migrated (0.1937s) =====================
== AssignmentRollups: migrating ==============================================
-- create_table(:assignment_rollups, {:id=>:bigserial})
-> 0.0101s
-- add_index(:assignment_rollups, [:assignment_id])
-> 0.0047s
-- add_index(:assignment_rollups, [:course_section_id])
-> 0.0042s
-- add_foreign_key(:assignment_rollups, :assignments, {:column=>:assignment_id})
-> 0.0027s
== AssignmentRollups: migrated (0.0222s) =====================================
== MakeAssignmentRollupsColumnsFloat: migrating ==============================
-- change_column(:assignment_rollups, :max_score, :float, {})
-> 0.0167s
-- change_column(:assignment_rollups, :median_score, :float, {})
-> 0.0127s
-- change_column(:assignment_rollups, :min_score, :float, {})
-> 0.0117s
-- change_column(:assignment_rollups, :points_possible, :float, {})
-> 0.0128s
== MakeAssignmentRollupsColumnsFloat: migrated (0.0545s) =====================
== DropAssignmentRollups: migrating ==========================================
-- drop_table(:assignment_rollups)
-> 0.0021s
== DropAssignmentRollups: migrated (0.0022s) =================================
== DropSubmissionCachedTardyStatusIfExists: migrating ========================
== DropSubmissionCachedTardyStatusIfExists: migrated (0.0030s) ===============
== FixCachedGradeDistributionsSequence: migrating ============================
-- change_column_default(:cached_grade_distributions, :course_id, nil)
-> 0.0075s
-- execute("DROP SEQUENCE IF EXISTS \"public\".\"cached_grade_distributions_course_id_seq\"")
-> 0.0005s
== FixCachedGradeDistributionsSequence: migrated (0.0082s) ===================
== MakePageViewsRollupsUnique: migrating =====================================
rake aborted!
StandardError: An error has occurred, all later migrations canceled:
uninitialized constant MakePageViewsRollupsUnique::Shackles
/var/www/canvas/gems/plugins/analytics/db/migrate/20160119183554_make_page_views_rollups_unique.rb:7:in `up'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:817:in `exec_migration'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:798:in `block (2 levels) in migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:797:in `block in migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/connection_adapters/abstract/connection_pool.rb:416:in `with_connection'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/switchman/connection_pool_proxy.rb:13:in `with_connection'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:796:in `migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-inst-jobs-2.0.0/lib/switchman_inst_jobs/active_record/migration.rb:16:in `migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:608:in `migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:977:in `migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1292:in `block in execute_migration_in_transaction'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1345:in `ddl_transaction'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1291:in `execute_migration_in_transaction'
/var/www/canvas/config/initializers/active_record.rb:1462:in `execute_migration_in_transaction'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1263:in `block in migrate_without_lock'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1262:in `each'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1262:in `migrate_without_lock'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1210:in `block in migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1363:in `with_advisory_lock'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1210:in `migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1036:in `up'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1011:in `migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/tasks/database_tasks.rb:172:in `migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/railties/databases.rake:60:in `block (2 levels) in <top (required)>'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/tasks/switchman.rake:87:in `block (6 levels) in shardify_task'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/tasks/switchman.rake:87:in `each'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/tasks/switchman.rake:87:in `block (5 levels) in shardify_task'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/switchman/database_server.rb:107:in `unguard'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/tasks/switchman.rake:86:in `block (4 levels) in shardify_task'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/app/models/switchman/shard.rb:376:in `block (2 levels) in with_each_shard'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/app/models/switchman/shard.rb:628:in `block in activate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/app/models/switchman/shard.rb:96:in `activate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/app/models/switchman/shard.rb:627:in `activate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/app/models/switchman/shard.rb:374:in `block in with_each_shard'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/relation/delegation.rb:71:in `each'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/relation/delegation.rb:71:in `each'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/app/models/switchman/shard.rb:370:in `with_each_shard'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/tasks/switchman.rake:71:in `block (3 levels) in shardify_task'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/switchman/database_server.rb:107:in `unguard'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/tasks/switchman.rake:68:in `block (2 levels) in shardify_task'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/switchman/guard_rail.rb:22:in `activate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-inst-jobs-2.0.0/lib/switchman_inst_jobs/guard_rail.rb:8:in `activate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/tasks/switchman.rake:67:in `block in shardify_task'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/rake-13.0.1/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:23:in `load'
/usr/local/bin/bundle:23:in `<main>'
Caused by:
NameError: uninitialized constant MakePageViewsRollupsUnique::Shackles
/var/www/canvas/gems/plugins/analytics/db/migrate/20160119183554_make_page_views_rollups_unique.rb:7:in `up'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:817:in `exec_migration'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:798:in `block (2 levels) in migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:797:in `block in migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/connection_adapters/abstract/connection_pool.rb:416:in `with_connection'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/switchman/connection_pool_proxy.rb:13:in `with_connection'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:796:in `migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-inst-jobs-2.0.0/lib/switchman_inst_jobs/active_record/migration.rb:16:in `migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:608:in `migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:977:in `migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1292:in `block in execute_migration_in_transaction'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1345:in `ddl_transaction'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1291:in `execute_migration_in_transaction'
/var/www/canvas/config/initializers/active_record.rb:1462:in `execute_migration_in_transaction'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1263:in `block in migrate_without_lock'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1262:in `each'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1262:in `migrate_without_lock'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1210:in `block in migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1363:in `with_advisory_lock'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1210:in `migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1036:in `up'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/migration.rb:1011:in `migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/tasks/database_tasks.rb:172:in `migrate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/railties/databases.rake:60:in `block (2 levels) in <top (required)>'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/tasks/switchman.rake:87:in `block (6 levels) in shardify_task'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/tasks/switchman.rake:87:in `each'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/tasks/switchman.rake:87:in `block (5 levels) in shardify_task'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/switchman/database_server.rb:107:in `unguard'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/tasks/switchman.rake:86:in `block (4 levels) in shardify_task'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/app/models/switchman/shard.rb:376:in `block (2 levels) in with_each_shard'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/app/models/switchman/shard.rb:628:in `block in activate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/app/models/switchman/shard.rb:96:in `activate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/app/models/switchman/shard.rb:627:in `activate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/app/models/switchman/shard.rb:374:in `block in with_each_shard'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/relation/delegation.rb:71:in `each'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.4.4/lib/active_record/relation/delegation.rb:71:in `each'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/app/models/switchman/shard.rb:370:in `with_each_shard'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/tasks/switchman.rake:71:in `block (3 levels) in shardify_task'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/switchman/database_server.rb:107:in `unguard'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/tasks/switchman.rake:68:in `block (2 levels) in shardify_task'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/switchman/guard_rail.rb:22:in `activate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-inst-jobs-2.0.0/lib/switchman_inst_jobs/guard_rail.rb:8:in `activate'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/switchman-2.0.0/lib/tasks/switchman.rake:67:in `block in shardify_task'
/var/www/canvas/vendor/bundle/ruby/2.6.0/gems/rake-13.0.1/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:23:in `load'
/usr/local/bin/bundle:23:in `<main>'
Tasks: TOP => db:migrate
(See full trace by running task with --trace)
Hi @ralphotowo , sorry for the trouble. It looks like we haven't done a good job of keeping the stable and beta branches up to date here, they're a year old :(. I'll make a note to work on that next week. In the mean time, you'll want to use https://github.com/instructure/analytics/commit/e749113e648113d00b6f3e74e1bfcfee201081f0 as HEAD here with the canvas-lms stable branch right now. Thanks for your patience.
(or using master here and master on canvas-lms should work fine too)
Thank you very much @simonista. I followed your instructions and successfully installed analytics.
root@ip-172-31-21-71:/var/www/astria_lms# RAILS_ENV=production bundle exec rake db:migrate
/var/www/astria_lms/vendor/bundle/ruby/2.6.0/gems/soap4r-ruby1.9-2.0.5/lib/soap/mapping/encodedregistry.rb:150: warning: constant ::Fixnum is deprecated
/var/www/astria_lms/vendor/bundle/ruby/2.6.0/gems/soap4r-ruby1.9-2.0.5/lib/soap/mapping/encodedregistry.rb:216: warning: constant ::Fixnum is deprecated
1: production:public
== MakePageViewsRollupsUnique: migrating =====================================
-- rename_index(:page_views_rollups, "index_page_views_rollups_on_course_id_and_date_and_category", "index_page_views_rollups_deprecated")
-> 0.0014s
-- add_index(:page_views_rollups, [:course_id, :date, :category], {:unique=>true, :algorithm=>:concurrently})
-> 0.0075s
-- remove_index(:page_views_rollups, {:name=>"index_page_views_rollups_deprecated"})
-> 0.0015s
== MakePageViewsRollupsUnique: migrated (0.0391s) ============================
== AddBackDefaultStringLimitsAnalytics: migrating ============================
-- column_exists?(:page_views_rollups, :category, :string, {:limit=>255})
-> 0.0015s
-- change_column(:page_views_rollups, :category, :string, {:limit=>255})
-> 0.0109s
== AddBackDefaultStringLimitsAnalytics: migrated (0.0126s) ===================
== FixCachedGradeDistributionsColumnType: migrating ==========================
-- column_exists?(:cached_grade_distributions, :course_id, :integer, {:limit=>8})
-> 0.0073s
== FixCachedGradeDistributionsColumnType: migrated (0.0074s) =================
== AddScoresIndexForGradeDistributions: migrating ============================
-- add_index(:scores, :enrollment_id, {:name=>"index_scores_on_enrollment_id_no_grading_period", :where=>"grading_period_id IS NULL AND workflow_state <> 'deleted'", :algorithm=>:concurrently})
-> 0.0122s
== AddScoresIndexForGradeDistributions: migrated (0.0123s) ===================
For anyone searching:
cd canvas/gems/plugins/analytics
git checkout stable
git reset --hard e749113e648113d00b6f3e74e1bfcfee201081f0
cd /path/to/canvas
RAILS_ENV=production bundle exec rake db:migrate
Hello,
I'm trying to install and enable the analytics plugin for Canvas and I've run into an issue. I followed the steps from the documentation and already enabled Cassandra backed pageviews, downloaded the plugin to gems/plugins/analytics and installed the dependencies (bundle update). Our Canvas instance was updated yesterday to the latest version on the stable branch.
The following is an excerpt from the terminal window where the migrations were attempted.
Does anyone understand what the issue is, and how to successfully complete the migrations? Any feedback is appreciated.