Cassandra Removal

410 views
Skip to first unread message

Cody Cutrer

unread,
Jun 5, 2024, 11:27:53 AM6/5/24
to canvas-l...@googlegroups.com
For anyone still using Cassandra for page views, you'll know that Canvas support for Cassandra has been on life support for some time, and does not support modern releases of Cassandra. With the 2024-06-19 stable release of Canvas, Cassandra support will be completely removed. But there is a smooth migration path! As part of that release, a pre-deploy migration will check if you're using Cassandra, and if so move all of the page view data back into the Postgres database. Depending on how much data you have, this migration may take quite some time, so plan accordingly. To give yourself more time, it is possible to run that migration (https://github.com/instructure/canvas-lms/commit/669c4cabac9a65049199f581ee518027cbe1623a#diff-3089f3bf30000e4222508a97d4225974750a35ca236b34dc70310589b07c8f7e) with an older release of Canvas, and continue running that older release afterwards. You'll just need to restart any running Canvas instances after the migration completes to pick up the change in where to look for page views. If you're also running the Analytics plugin, be sure that you're properly deploying the corresponding release of that plugin when you deploy the 2024-06-19 release of Canvas.

As storing page view data in the database is not the primary method that Instructure uses for our own cloud hosted instances (but is how many developers run Canvas locally), it's possible that a large self hosted school may run into performance issues with page views in the database. If you run into this, please post on the mailing list, or contact us in IRC, and we'll be happy to support you and attempt to improve the performance of this feature.

Cody Cutrer
Software Engineer
Instructure

Andrey Gangan

unread,
Jun 10, 2024, 7:34:40 AM6/10/24
to Canvas LMS Users
Hi Cody!

Thanks for information.
It's high time to do it.

do you use colmn based portgresql table for migrated data?

PS. What about adding PDF.js for pdf docs? Google docs viewer sometimes is not loading docs and has pdf size limit.

Thanks
Andrey

среда, 5 июня 2024 г. в 18:27:53 UTC+3, Cody Cutrer:

Andrey Gangan

unread,
Jun 21, 2024, 2:13:55 AM6/21/24
to Canvas LMS Users
Hi Cody!

No update on github Prod  tree.
is something wrong there ?

среда, 5 июня 2024 г. в 18:27:53 UTC+3, Cody Cutrer:
For anyone still using Cassandra for page views, you'll know that Canvas support for Cassandra has been on life support for some time, and does not support modern releases of Cassandra. With the 2024-06-19 stable release of Canvas, Cassandra support will be completely removed. But there is a smooth migration path! As part of that release, a pre-deploy migration will check if you're using Cassandra, and if so move all of the page view data back into the Postgres database. Depending on how much data you have, this migration may take quite some time, so plan accordingly. To give yourself more time, it is possible to run that migration (https://github.com/instructure/canvas-lms/commit/669c4cabac9a65049199f581ee518027cbe1623a#diff-3089f3bf30000e4222508a97d4225974750a35ca236b34dc70310589b07c8f7e) with an older release of Canvas, and continue running that older release afterwards. You'll just need to restart any running Canvas instances after the migration completes to pick up the change in where to look for page views. If you're also running the Analytics plugin, be sure that you're properly deploying the corresponding release of that plugin when you deploy the 2024-06-19 release of Canvas.

Cody Cutrer

unread,
Jun 24, 2024, 2:23:08 PM6/24/24
to canvas-l...@googlegroups.com
Andrey,

GitHub has been updated with the latest stable branch, which includes the Cassandra changes.

Cody Cutrer
Software Engineer
Instructure
--

---
You received this message because you are subscribed to the Google Groups "Canvas LMS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to canvas-lms-use...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/canvas-lms-users/6fa41329-a176-4d7e-8445-1665e6c1acedn%40googlegroups.com.

Andrew Leung

unread,
Oct 3, 2024, 5:54:22 PM10/3/24
to Canvas LMS Users
Hi Cody,

Thanks for the information. We are tackling this migration and have some concerns knowing that this is not the primary method that Instructure uses for page views.

Do you have more insights on the potential performance issues in a production environment? Is the huge amount of historical data itself going to be a problem (which we could mitigate by purging old data), or do you anticipate the extra load of creating page view entries from every request to collectively be a significant drag on overall database performance?

--
Andrew Leung
Simon Fraser University

Scott Phillips

unread,
Oct 14, 2024, 4:14:30 PM10/14/24
to Canvas LMS Users
Hi Cody,

We have similar concerns with overall database performance that has been mentioned by Andrew Leung in this conversation.

This commit to the analytics plugin repository removed the previous warning against running analytics without Cassandra.  Have there been any changes to help mitigate that previously known performance impact?  Here's a quote from part of the warning that used to be in place:
> "Even with a relatively small Canvas instance, it is likely you may run into similar performance issues when using the naïve DB backing for analytics."

Thanks,
Scott Phillips

Chan Kenneth

unread,
Nov 25, 2024, 5:52:58 PM11/25/24
to Canvas LMS Users
Hi Cody,

My objective: Upgrade self-host canvas lms 2021 version. What is the correct way to upgrade a self-hosted Canvas LMS to the latest version?

My Plan: Install 2024 version to a new VM in Azure and then run db/migrate/ so that data schema will update to 2024 version. Is it possible to do so?

I am new as the installation of self-host canvas lms and pick up the work from ex-colleague few years ago. Thanks in advance for any of suggestions

Thanks,
Kenneth
Software Engineer
EdCity

Cody Cutrer 在 2024年6月5日 星期三晚上11:27:53 [UTC+8] 的信中寫道:

Cody Cutrer

unread,
Nov 25, 2024, 5:54:38 PM11/25/24
to Canvas LMS Users
Kenneth,

You would need to install various intermediate versions in order to migrate your database completely. Generally, you can go in 6 month increments.

Cody Cutrer
Software Engineer
Instructure

Andrey Gangan

unread,
Nov 27, 2024, 2:35:46 AM11/27/24
to Canvas LMS Users
Hi Cody,

does somebody check github issues?
some long running bugs present, nobody reply there. I think those bugs exists on your servers too.


Thanks
вторник, 26 ноября 2024 г. в 00:54:38 UTC+2, Cody Cutrer:

Cody Cutrer

unread,
Dec 3, 2024, 12:52:35 PM12/3/24
to Canvas LMS Users
There are a few Instructure employees that casually monitor GitHub, but unfortunately are processes around it are less than ideal. I've raised this particular issue to have the internal team validate it.

Cody Cutrer
Software Engineer
Instructure

Cody Cutrer

unread,
Dec 3, 2024, 12:58:51 PM12/3/24
to Canvas LMS Users
There have been no changes to specifically improve performance of running analytics without Cassandra. The original quote you mentioned has been at least partially validated as incorrect in several cases. In Canvas Cloud, we run Page Views proper as a separately scaleable "PV4" service. But any piece that isn't in that is now just using the database, same as open source. Unfortunately we don't have the resources to do additional scalability testing for use cases outside our environment. I'm willing to look at any scalability issues you do encounter after dropping Cassandra, if they actually occur. I just can't say for certain that there will or will not be performance problems. Since you seem genuinely concerned, I'd recommend staying on a release that still supports Cassandra, and then flipping Cassandra off by setting the page view method and evaluating the impact. That should be easier to roll back from if you encounter problems than running newer code that doesn't support Cassandra at all, and then having to roll back -- including database migrations.

Cody Cutrer
Software Engineer
Instructure

Chan Kenneth

unread,
Dec 4, 2024, 2:50:54 AM12/4/24
to Canvas LMS Users
Hi Cody,

Thanks for your reply and I am looking for the intermediate version. But I found this message "Please first upgrade to a version that includes database migration 20180425185812". The following are my attempts. I can't find a stable version with 20161229165819 in /db/migration. What does it means? Since I just fresh installation a version.

2nd attempt > stable/2023-04-26 (Please first upgrade to a version that includes database migration 20161229165819)

  Remark: ruby 2.7.5p203 & bundler 2.3.26

1st attempt > stable/2024-01-31 (Please first upgrade to a version that includes database migration 20180425185812)

  Remark: ruby 3.1 & bundler 2.4.20

Thank you,
Kenneth

Screenshot 2024-12-04 154924.png
Cody Cutrer 在 2024年11月26日 星期二清晨6:54:38 [UTC+8] 的信中寫道:

Andrey Gangan

unread,
Dec 4, 2024, 4:09:35 AM12/4/24
to Canvas LMS Users
hi Chan!

Which version  are you  trying to update from?
 
среда, 4 декабря 2024 г. в 09:50:54 UTC+2, Chan Kenneth:

Chan Kenneth

unread,
Dec 4, 2024, 7:59:39 PM12/4/24
to Canvas LMS Users
Hi Andrey,

I am freshly install $ git checkout stable/2023-04-26; in my local WSL2 Ubuntu 22.04 for familiar with the canvas lms installation procedure. I don't know why I receive this message. My installation is based on the information from https://elearningevolve.com/blog/install-canvas-lms/
Besides, in our production site, there is running version stable/2021-09-15 but I believe my colleague issue git checkout prod in 2021.

Thank you,
Kenneth

Andrey Gangan 在 2024年12月4日 星期三下午5:09:35 [UTC+8] 的信中寫道:

Andrey Gangan

unread,
Dec 5, 2024, 1:01:00 AM12/5/24
to Canvas LMS Users
I think you created database with another version.
try to drop and create again

Also I do not know why you selected so old version.
but Ubuntu 22 is more or less ok from stable/2023-10-11 due to compatible openssl 3.0 gems is used.

Also I never used WSL to deploy canvas, may be something is missing there.

четверг, 5 декабря 2024 г. в 02:59:39 UTC+2, Chan Kenneth:

Andrey Gangan

unread,
Jan 14, 2025, 11:20:41 AMJan 14
to Canvas LMS Users
Hi Cody,

As to Analytics:
Cassandra is column based DB, and I'm sure you know that devs can replace it with Postgres column based tables (or maridb analytics angine). Just as idea.

As to gihub issues:

- https://github.com/instructure/canvas-lms/issues/2423 - seems to be partially fixed, but second part no. I still can not select custom grading scheme in course settings.

- https://github.com/instructure/canvas-lms/issues/2402 - long time is not fixed too.

- https://github.com/instructure/canvas-lms/issues/2410 it's pain. is it possible to replace google docs viewer with pdf.js for pdf files? lot of users compliance that document with Google Docs Preview is not loaded even after several page refresh.

- and the last is not listed on github: I noticed that last year may be, when I change some Feature settings effect is not visible until redis cache is cleaned. I have this issue with new BBB modal, RCE block editor, disable SQS notifications in case users activate it, etc.

Is crocodoc Docs Preview still working? domain is not accessible and belongs to box.com, anyway it's too expensive.

I hope you can help with resolving those issues.


Thanks and Best regards,

Andrey

среда, 5 июня 2024 г. в 18:27:53 UTC+3, Cody Cutrer:
For anyone still using Cassandra for page views, you'll know that Canvas support for Cassandra has been on life support for some time, and does not support modern releases of Cassandra. With the 2024-06-19 stable release of Canvas, Cassandra support will be completely removed. But there is a smooth migration path! As part of that release, a pre-deploy migration will check if you're using Cassandra, and if so move all of the page view data back into the Postgres database. Depending on how much data you have, this migration may take quite some time, so plan accordingly. To give yourself more time, it is possible to run that migration (https://github.com/instructure/canvas-lms/commit/669c4cabac9a65049199f581ee518027cbe1623a#diff-3089f3bf30000e4222508a97d4225974750a35ca236b34dc70310589b07c8f7e) with an older release of Canvas, and continue running that older release afterwards. You'll just need to restart any running Canvas instances after the migration completes to pick up the change in where to look for page views. If you're also running the Analytics plugin, be sure that you're properly deploying the corresponding release of that plugin when you deploy the 2024-06-19 release of Canvas.

Andrey Gangan

unread,
Mar 28, 2025, 7:36:45 AMMar 28
to Canvas LMS Users

Andrey Gangan

unread,
Jul 19, 2025, 4:37:13 AMJul 19
to Canvas LMS Users
hi Cody!

qti migration seems not working in last version 
I think due to update of nokogiri gem

can you check?

Thanks

пятница, 28 марта 2025 г. в 13:36:45 UTC+2, Andrey Gangan:

Cody Cutrer

unread,
Jul 22, 2025, 11:48:36 AMJul 22
to canvas-l...@googlegroups.com
We've not had any issues with QTIMigrationTool. And especially since it's written in Python, and Nokogiri is a Ruby library, the two should not be connected.

Cody Cutrer
Software Engineer
Instructure
--

---
You received this message because you are subscribed to the Google Groups "Canvas LMS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to canvas-lms-use...@googlegroups.com.
Message has been deleted
Message has been deleted

Andrey Gangan

unread,
Jul 23, 2025, 3:15:12 PMJul 23
to Canvas LMS Users
Hi Cody,

the issue was present in version which I installed on July 6. but after update to the latest version issue dissapeared.
error code was noticed in import task:

#118 invalid value for Integer(): ""
category: content_migration
created at: 2025-07-21 07:02:02 -0600

attempts: 0
handler: --- !ruby/struct:CC::Importer::CCWorker migration_id: 3
hostname: openlms.wne.org
id: 1718719
inst.team: unknown
job_tag: CC::Importer::CCWorker#perform
max_attempts: 1
pid: 2794
priority: 20
process_type: BackgroundJob
request_id: 1718719
run_at: 2025-07-21 13:01:59 UTC
session_id: openlms.wene.org:2794
shard_id: 1
source:
strand: migrations:import_content/api_in_app_10000000000001
type: content_migration
worker_name:
invalid value for Integer(): ""

/home/canvas/public_html/gems/attachment_fu/lib/attachment_fu/backends/file_system_backend.rb:58:in 'String#%'
/home/canvas/public_html/gems/attachment_fu/lib/attachment_fu/backends/file_system_backend.rb:58:in 'AttachmentFu::Backends::FileSystemBackend#partitioned_path'
/home/canvas/public_html/gems/attachment_fu/lib/attachment_fu/backends/file_system_backend.rb:42:in 'AttachmentFu::Backends::FileSystemBackend#full_filename'
/home/canvas/public_html/app/models/attachments/local_storage.rb:78:in 'Attachments::LocalStorage#open'
/home/canvas/public_html/app/models/attachment.rb:1067:in 'Attachment#open'
/home/canvas/public_html/app/models/content_migration.rb:942:in 'ContentMigration#download_exported_data'
/home/canvas/public_html/app/models/content_migration.rb:643:in 'ContentMigration#import_content'
/home/canvas/public_html/lib/cc/importer/cc_worker.rb:77:in 'CC::Importer::CCWorker#perform'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/backend/base.rb:313:in 'block in Delayed::Backend::Base#invoke_job'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/sentry-inst_jobs-5.10.0/lib/sentry/inst_jobs/plugin.rb:25:in 'block (3 levels) in <class:Plugin>'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/sentry-ruby-5.23.0/lib/sentry/hub.rb:89:in 'Sentry::Hub#with_scope'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/sentry-ruby-5.23.0/lib/sentry-ruby.rb:408:in 'Sentry.with_scope'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/sentry-inst_jobs-5.10.0/lib/sentry/inst_jobs/plugin.rb:15:in 'block (2 levels) in <class:Plugin>'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:98:in 'block (2 levels) in Delayed::Callback#add'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:74:in 'block in Delayed::Callback#initialize'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:98:in 'block in Delayed::Callback#add'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:79:in 'Delayed::Callback#execute'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:52:in 'Delayed::Lifecycle#run_callbacks'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/backend/base.rb:310:in 'Delayed::Backend::Base#invoke_job'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/switchman-inst-jobs-4.1.0/lib/switchman_inst_jobs/delayed/backend/base.rb:92:in 'block in SwitchmanInstJobs::Delayed::Backend::Base#invoke_job'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/switchman-4.1.0/lib/switchman/shard.rb:107:in 'Switchman::Shard.activate'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/switchman-4.1.0/lib/switchman/shard.rb:597:in 'Switchman::Shard#activate'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/switchman-inst-jobs-4.1.0/lib/switchman_inst_jobs/delayed/backend/base.rb:92:in 'SwitchmanInstJobs::Delayed::Backend::Base#invoke_job'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/worker.rb:222:in 'block (2 levels) in Delayed::Worker#perform'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/benchmark-0.4.0/lib/benchmark.rb:323:in 'Benchmark.realtime'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/worker.rb:216:in 'block in Delayed::Worker#perform'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/engine.rb:10:in 'block (3 levels) in <class:Engine>'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/activesupport-7.2.2.1/lib/active_support/reloader.rb:77:in 'block in ActiveSupport::Reloader.wrap'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/activesupport-7.2.2.1/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/activesupport-7.2.2.1/lib/active_support/reloader.rb:74:in 'ActiveSupport::Reloader.wrap'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/engine.rb:9:in 'block (2 levels) in <class:Engine>'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:98:in 'block (2 levels) in Delayed::Callback#add'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-statsd-4.0.2/lib/inst_jobs_statsd/stats/timing/perform.rb:24:in 'block (2 levels) in InstJobsStatsd::Stats::Timing::Perform.enable_perform_timing'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst_statsd-3.4.0/lib/inst_statsd/statsd.rb:105:in 'InstStatsd::Statsd.time'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-statsd-4.0.2/lib/inst_jobs_statsd/stats/timing.rb:10:in 'InstJobsStatsd::Stats::Timing.report_timing'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-statsd-4.0.2/lib/inst_jobs_statsd/stats/timing/perform.rb:23:in 'block in InstJobsStatsd::Stats::Timing::Perform.enable_perform_timing'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:98:in 'block (2 levels) in Delayed::Callback#add'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-statsd-4.0.2/lib/inst_jobs_statsd/stats/timing/perform.rb:15:in 'block (2 levels) in InstJobsStatsd::Stats::Timing::Perform.enable_batching'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst_statsd-3.4.0/lib/inst_statsd/statsd.rb:111:in 'InstStatsd::Statsd.batch'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-statsd-4.0.2/lib/inst_jobs_statsd/stats/timing/perform.rb:14:in 'block in InstJobsStatsd::Stats::Timing::Perform.enable_batching'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:98:in 'block (2 levels) in Delayed::Callback#add'
/home/canvas/public_html/config/initializers/delayed_job.rb:153:in 'block (2 levels) in <top (required)>'
/home/canvas/public_html/lib/base/temp_cache.rb:30:in 'TempCache.enable'
/home/canvas/public_html/config/initializers/delayed_job.rb:152:in 'block in <top (required)>'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:98:in 'block (2 levels) in Delayed::Callback#add'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:74:in 'block in Delayed::Callback#initialize'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:98:in 'block in Delayed::Callback#add'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:98:in 'block in Delayed::Callback#add'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:98:in 'block in Delayed::Callback#add'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:98:in 'block in Delayed::Callback#add'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:79:in 'Delayed::Callback#execute'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:52:in 'Delayed::Lifecycle#run_callbacks'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/worker.rb:213:in 'Delayed::Worker#perform'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/worker.rb:183:in 'block (2 levels) in Delayed::Worker#run'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/worker.rb:293:in 'block in Delayed::Worker#configure_for_job'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/worker.rb:52:in 'Delayed::Worker.running_job'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/worker.rb:289:in 'Delayed::Worker#configure_for_job'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/worker.rb:182:in 'block in Delayed::Worker#run'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:74:in 'block in Delayed::Callback#initialize'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:79:in 'Delayed::Callback#execute'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:52:in 'Delayed::Lifecycle#run_callbacks'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/worker.rb:174:in 'Delayed::Worker#run'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/switchman-inst-jobs-4.1.0/lib/switchman_inst_jobs/delayed/worker.rb:31:in 'block in SwitchmanInstJobs::Delayed::Worker#run'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/switchman-4.1.0/lib/switchman/shard.rb:107:in 'Switchman::Shard.activate'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/switchman-4.1.0/lib/switchman/shard.rb:597:in 'Switchman::Shard#activate'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/switchman-inst-jobs-4.1.0/lib/switchman_inst_jobs/delayed/worker.rb:31:in 'SwitchmanInstJobs::Delayed::Worker#run'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/worker.rb:138:in 'block in Delayed::Worker#start'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:74:in 'block in Delayed::Callback#initialize'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:79:in 'Delayed::Callback#execute'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/lifecycle.rb:52:in 'Delayed::Lifecycle#run_callbacks'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/worker.rb:137:in 'Delayed::Worker#start'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/switchman-inst-jobs-4.1.0/lib/switchman_inst_jobs/delayed/worker.rb:24:in 'block in SwitchmanInstJobs::Delayed::Worker#start'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/switchman-4.1.0/lib/switchman/shard.rb:107:in 'Switchman::Shard.activate'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/switchman-4.1.0/lib/switchman/shard.rb:597:in 'Switchman::Shard#activate'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/switchman-inst-jobs-4.1.0/lib/switchman_inst_jobs/delayed/worker.rb:24:in 'SwitchmanInstJobs::Delayed::Worker#start'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/pool.rb:105:in 'block in Delayed::Pool#spawn_worker'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/pool.rb:117:in 'block in Delayed::Pool#fork_with_reconnects'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/pool.rb:113:in 'Kernel#fork'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/pool.rb:113:in 'Delayed::Pool#fork_with_reconnects'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/pool.rb:104:in 'Delayed::Pool#spawn_worker'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/pool.rb:84:in 'block (2 levels) in Delayed::Pool#spawn_all_workers'
<internal:numeric>:257:in 'Integer#times'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/pool.rb:84:in 'block in Delayed::Pool#spawn_all_workers'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/pool.rb:83:in 'Array#each'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/pool.rb:83:in 'Delayed::Pool#spawn_all_workers'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/pool.rb:48:in 'Delayed::Pool#start'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/cli.rb:112:in 'Delayed::CLI#start'
/home/canvas/public_html/vendor/bundle/ruby/3.4.0/gems/inst-jobs-3.1.18.1/lib/delayed/cli.rb:36:in 'Delayed::CLI#run'
script/delayed_job:14:in '<main>'

вторник, 22 июля 2025 г. в 18:48:36 UTC+3, Cody Cutrer:
Reply all
Reply to author
Forward
0 new messages