-
Notifications
You must be signed in to change notification settings - Fork 290
Closed
Labels
P0 - criticalPriority: Release blocker or regressionPriority: Release blocker or regression
Milestone
Description
Observed behavior
The following issue occurred publishing a channel on production. Although, we never received a report of the issue in our Sentry monitoring:
Traceback (most recent call last):
File \"/contentcuration/contentcuration/contentcuration/viewsets/base.py\", line 920, in create_change_tracker
yield tracker
File \"/contentcuration/contentcuration/contentcuration/viewsets/channel.py\", line 490, in publish
channel = publish_channel(
File \"/usr/local/lib/python3.9/contextlib.py\", line 79, in inner
return func(*args, **kwds)
File \"/contentcuration/contentcuration/contentcuration/utils/publish.py\", line 842, in publish_channel
kolibri_temp_db = create_content_database(channel, force, user_id, force_exercises, progress_tracker=progress_tracker)
File \"/contentcuration/contentcuration/contentcuration/utils/publish.py\", line 130, in create_content_database
tree_mapper.map_nodes()
File \"/contentcuration/contentcuration/contentcuration/utils/publish.py\", line 200, in map_nodes
self.recurse_nodes(self.root_node, {})
File \"/contentcuration/contentcuration/contentcuration/utils/publish.py\", line 237, in recurse_nodes
self.recurse_nodes(child, metadata)
File \"/contentcuration/contentcuration/contentcuration/utils/publish.py\", line 237, in recurse_nodes
self.recurse_nodes(child, metadata)
File \"/contentcuration/contentcuration/contentcuration/utils/publish.py\", line 237, in recurse_nodes
self.recurse_nodes(child, metadata)
File \"/contentcuration/contentcuration/contentcuration/utils/publish.py\", line 229, in recurse_nodes
exercise_data = process_assessment_metadata(node, kolibrinode)
File \"/contentcuration/contentcuration/contentcuration/utils/publish.py\", line 482, in process_assessment_metadata
exercise_data = extra_fields.get('options').get('completion_criteria').get('threshold')
AttributeError: 'NoneType' object has no attribute 'get'
Expected behavior
- We get alerted to these types of errors
- We have better logging and defensive checks against malformed data (which
getis the problem and on which node?)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
P0 - criticalPriority: Release blocker or regressionPriority: Release blocker or regression