Go to file
Eric Saupe 703b5d88a6 Explicitly nullify web_conference reference
When WebConference#destroy is called the association with the
calendar_event child is set to :nullify. Rails is supposed to nullify
that relationship as part of the destroy callbacks. I wasn't able to
recreate the issue happening in practice, we even have tests that are
checking it already.

The logs in Splunk are showing that it is still
happening occasionally so the fix here is to nullify the association
manually before the record is deleted. It's calling the same
method used in the callbacks for the destroy call.

fixes LS-3145
flag=none

test plan:
- Create a web conference
- Create a calendar event and attach the web conference
- Delete the web conference
- Verify the deletion was successful and that the calendar event is still
there but has no relationship to a web conference

Change-Id: Id3d3c6205da3367d2ac5d74ad8c454c890fab44f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/292815
Product-Review: Eric Saupe <eric.saupe@instructure.com>
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2022-05-31 16:47:49 +00:00
.github update github pr auto-assignees 2020-09-24 20:00:41 +00:00
.storybook webpack: remove support for virtual i18n! modules 2022-03-10 21:38:10 +00:00
.vscode Add configurations to enable remote IDE debugging with rdebug-ide 2021-09-16 18:33:11 +00:00
Gemfile.d requeue failed job 2022-05-28 00:08:22 +00:00
app Explicitly nullify web_conference reference 2022-05-31 16:47:49 +00:00
bin use canvas_rails_switcher for bin/spring try 2 2022-04-07 18:14:05 +00:00
build pin chrome and selenium hub versions 2022-05-20 13:44:46 +00:00
config enable Rails 6.1 by default 2022-05-31 14:41:28 +00:00
db/migrate requeue failed job 2022-05-28 00:08:22 +00:00
doc Add LTI Substitution variable for "All due dates" 2022-05-31 15:36:38 +00:00
docker-compose Revert "Replace old config ymls with newer mutagen ymls" 2022-03-28 17:38:37 +00:00
engines RuboCop: Style/StringLiterals, Style/StringLiteralsInInterpolation 2021-11-25 14:03:06 +00:00
gems adjust logic for verifying report_db presence 2022-05-27 19:47:13 +00:00
hooks Fix git pre-commit hook 2022-03-10 22:50:42 +00:00
jest remove sentry "deprecation" logging 2022-05-13 04:58:07 +00:00
lib fix deploy build 2022-05-31 15:57:35 +00:00
log Update parallel_runtime_rspec.log from build 264 2021-10-25 16:59:25 +00:00
packages Detect if Icon Maker tray has unsaved changes 2022-05-27 17:59:11 +00:00
public update mastery connect icon in assignments 2022-03-30 20:20:51 +00:00
script set IS_MUTAGEN in linux/dev_setup.sh 2022-05-06 14:18:08 +00:00
spec Explicitly nullify web_conference reference 2022-05-31 16:47:49 +00:00
tmp Alpine canvas-lms based image 2020-07-15 17:21:56 +00:00
ui Fix RCE status bar visibility in Discussion Redesign replies 2022-05-30 23:55:46 +00:00
ui-build Add confirmation prompt when restoring page revision 2022-05-27 20:13:10 +00:00
.codeclimate.yml
.dive-ci Spec: Add dive build 2020-03-26 14:52:06 +00:00
.dockerignore modernize canvas_quizzes 2021-01-14 22:45:10 +00:00
.editorconfig
.eslintignore rename frontend_build -> ui-build 2021-10-21 19:13:02 +00:00
.eslintrc.js babel independence: k5uploader & js-utils 2022-03-11 21:00:09 +00:00
.git-blame-ignore-revs rubocop: add .git-blame-ignore-revs 2021-11-29 20:56:29 +00:00
.gitignore add rails version to Gemfile.lock 2022-03-31 17:01:45 +00:00
.gitmessage prepend some blank lines to .gitmessage 2019-08-09 16:12:53 +00:00
.groovylintrc.json fix linter rules 2021-05-19 15:43:33 +00:00
.i18nignore Don't try to extract translations from vendor 2022-03-03 17:48:51 +00:00
.i18nrc rename some things 2021-04-06 01:12:49 +00:00
.irbrc disable irb autocomplete 2022-03-29 21:34:33 +00:00
.lintstagedrc.js Initial pace plans import 2021-09-01 19:58:33 +00:00
.npmrc
.nvmrc upgrade to node14 2021-01-27 15:33:52 +00:00
.prettierrc restore prettier rules to match pre-2.0 defaults 2021-02-09 17:03:14 +00:00
.rspec spec: automatically require spec_helper 2021-10-26 17:39:19 +00:00
.rubocop.yml rubocop: disable Style/HashLikeCase 2022-03-15 16:59:27 +00:00
.sentryignore Only upload production source maps to Sentry 2022-03-24 18:17:54 +00:00
.stylelintrc modernize canvas_quizzes 2021-01-14 22:45:10 +00:00
.travis.yml
CONTRIBUTING.md Remove more freenode references 2021-06-02 16:18:53 +00:00
COPYRIGHT
Dockerfile enable Rails 6.1 for Jenkins / Dev 2022-05-19 15:35:44 +00:00
Dockerfile.githook Add precommit hook for auto fixing files 2018-11-27 21:07:31 +00:00
Dockerfile.jenkins enable Rails 6.1 for Jenkins / Dev 2022-05-19 15:35:44 +00:00
Dockerfile.jenkins-cache add rails version to Gemfile.lock 2022-03-31 17:01:45 +00:00
Dockerfile.jenkins.final simplify Dockerfile template generation 2020-12-10 17:28:58 +00:00
Dockerfile.jenkins.karma-builder Properly support ruby 2.7 2021-06-11 21:06:37 +00:00
Dockerfile.jenkins.karma-runner remove translations/_core_en.js in production try 2 2022-02-18 00:08:38 +00:00
Dockerfile.jenkins.linters-final remove need to mount .git directory as volume for Linters 2021-05-10 18:57:42 +00:00
Dockerfile.jenkins.linters-runner Revert "Replace old config ymls with newer mutagen ymls" 2022-03-28 17:38:37 +00:00
Dockerfile.jenkins.ruby-runner purge pulsar from canvas 2022-01-03 20:37:22 +00:00
Dockerfile.jenkins.webpack-builder split yarn from webpack-builder into yarn-runner 2020-12-14 18:49:51 +00:00
Dockerfile.jenkins.webpack-cache use _core_en as en translations for pre-merge build 2022-02-18 02:06:59 +00:00
Dockerfile.jenkins.yarn-runner upgrade & dedupe node packages 2021-06-21 19:46:52 +00:00
Dockerfile.package-translations babel independence: k5uploader & js-utils 2022-03-11 21:00:09 +00:00
Gemfile RuboCop: Style/StringLiterals, Style/StringLiteralsInInterpolation 2021-11-25 14:03:06 +00:00
Jenkinsfile only check locales changes for canvas-lms 2022-05-09 16:49:58 +00:00
Jenkinsfile.axe Identify JS and Ruby skipped specs 2022-03-18 16:57:43 +00:00
Jenkinsfile.cassandra fix docker sync job 2021-10-01 15:11:55 +00:00
Jenkinsfile.contract-tests convert contract tests to using docker bridge network 2021-06-15 16:37:49 +00:00
Jenkinsfile.coverage Only generate ruby skipped spec report for ruby-total 2022-03-29 16:24:44 +00:00
Jenkinsfile.coverage-js add jest coverage in js coverage report 2022-03-29 19:50:14 +00:00
Jenkinsfile.crystalball crystalball map build with rspecq 2022-04-08 20:14:10 +00:00
Jenkinsfile.dive fix jenkins file linter issues autofixable 2021-05-18 16:48:15 +00:00
Jenkinsfile.docker-smoke Revert "Replace old config ymls with newer mutagen ymls" 2022-03-28 17:38:37 +00:00
Jenkinsfile.docker-sync pin chrome and selenium hub versions 2022-05-20 13:44:46 +00:00
Jenkinsfile.dynamodb fix docker sync job 2021-10-01 15:11:55 +00:00
Jenkinsfile.js update js coverage with optimized jest builds 2022-03-23 19:43:58 +00:00
Jenkinsfile.master-bouncer-check-all fix docker sync job 2021-10-01 15:11:55 +00:00
Jenkinsfile.package-translations More translations build improvements 2021-06-30 15:32:09 +00:00
Jenkinsfile.parallel_logs fix jenkins file linter issues autofixable 2021-05-18 16:48:15 +00:00
Jenkinsfile.postgres update copyright disclaimer 2021-10-01 15:44:27 +00:00
Jenkinsfile.redis improve readability jenkins redis 2021-11-18 20:17:08 +00:00
Jenkinsfile.rspecq Rspecq remove setup for node 00 2022-04-08 15:39:44 +00:00
Jenkinsfile.selenium.flakey_spec_catcher Upgrade to Selenium 4 2022-03-09 15:28:31 +00:00
Jenkinsfile.selenium.performance.chrome Upgrade to Selenium 4 2022-03-09 15:28:31 +00:00
Jenkinsfile.test-subbuild fix jenkins file linter issues autofixable 2021-05-18 16:48:15 +00:00
Jenkinsfile.vendored-gems purge pulsar from canvas 2022-01-03 20:37:22 +00:00
Jenkinsfile.xbrowser fix docker sync job 2021-10-01 15:11:55 +00:00
LICENSE
README.md
Rakefile RuboCop: Style/StringLiterals, Style/StringLiteralsInInterpolation 2021-11-25 14:03:06 +00:00
bower.json Move k5uplodaer to /packages 2019-05-10 18:30:51 +00:00
code_of_conduct.md
config.ru RuboCop: Style/StringLiterals, Style/StringLiteralsInInterpolation 2021-11-25 14:03:06 +00:00
docker-compose.new-jenkins-flakey-spec-catcher.yml update fsc to go into the plugin directory to do tests 2020-06-17 14:58:09 +00:00
docker-compose.new-jenkins-js.yml remove translations/_core_en.js in production try 2 2022-02-18 00:08:38 +00:00
docker-compose.new-jenkins-package-translations.yml Create shared translation infrastructure for packages 2019-11-06 22:42:03 +00:00
docker-compose.new-jenkins-selenium.yml pin chrome and selenium hub versions 2022-05-20 13:44:46 +00:00
docker-compose.new-jenkins.consumer.yml Bump rails 2021-12-23 15:26:13 +00:00
docker-compose.new-jenkins.vendored-gems.yml extract canvas::redis to canvas_cache 2021-03-02 14:38:55 +00:00
docker-compose.new-jenkins.yml Use zeitwerk everywhere always 2022-03-22 18:54:50 +00:00
docker-compose.spring.yml Revert "Replace old config ymls with newer mutagen ymls" 2022-03-28 17:38:37 +00:00
docker-compose.yml Revert "asset install in Dockerfile" 2021-06-29 13:36:09 +00:00
gulpfile.js replace node-sass with dart-sass 2021-07-15 17:35:35 +00:00
issue_template.md Update community urls to reflect platform move 2020-08-12 20:17:02 +00:00
jest.config.js remove coverage skip for deleted test 2022-03-30 12:24:46 +00:00
karma.conf.js re-enable canvas javascript coverage report 2022-02-28 15:36:57 +00:00
package.json Upgrade es-check 2022-05-27 14:00:17 +00:00
tsconfig.json Update tsconfig.json for es2020 type libraries 2022-03-24 16:36:21 +00:00
webpack.config.js move crystalball webpack config into ui-build 2022-01-12 20:19:41 +00:00
yarn.lock Upgrade es-check 2022-05-27 14:00:17 +00:00

README.md

Canvas LMS

Canvas is a modern, open-source LMS developed and maintained by Instructure Inc. It is released under the AGPLv3 license for use by anyone interested in learning more about or using learning management systems.

Please see our main wiki page for more information

Installation

Detailed instructions for installation and configuration of Canvas are provided on our wiki.