openedx / openedx/frontend-app-authoring

[Course unit page] 500 error appears if a user copies a unit or xblock with emoji

Open
#999 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
TypeScript
Stars
17
Forks
218
Avg merge
9d 20h
Merged PRs (30d)
20

Description

On the Course unit page, if the user copies an xblock that contains an emoji (for example, feedback xblock). The user receives a 500 error.

Feedback xblock:
image

Logs:

django.db.utils.OperationalError: (1366, 'Incorrect string value: \'\\xF0\\x9F\\x98\\x80">...\' for column \'olx\' at row 1')

specifies that there is support only for 3-byte encoding in the MySQL database. Smiles are encoded with 4 bytes and this error happens.

Related issue

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the copy action on the Course unit page with an xblock containing an emoji, then trace the request associated with the reported MySQL Incorrect string value error. Done means copying the unit or xblock succeeds without a 500 error and emoji content is preserved; the issue mentions no files or tests to run.

Written by the indexing model from the issue text.

Assessment

Tech stack
mysql, react, typescript
Domain
databases, frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.