learningequality / learningequality/studio

Sometimes a *Status Code: 429 Too Many Requests* is seen in the Network tab after uploading an EPUB file

Open
#3,011 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug DEV: dev-ops DEV: sysops P3 - low TODO: needs clarification
Dominant language
Python
Stars
191
Forks
307
Avg merge
5d 6h
Merged PRs (30d)
10

Description

Observed behavior

Sometimes a Status Code: 429 Too Many Requests is seen in the Network tab after uploading a file. Experienced with a fresh new channel.

Expected behavior

No Status Code: 429 Too Many Requests is seen in the Network tab after uploading a file.

Errors and logs

equest URL: https://sentry.io/api/1252819/store/?sentry_key=e4b21baeb7a044b885464d2af687fb73&sentry_version=7
Request Method: POST
Status Code: 429 Too Many Requests
Remote Address: 35.188.42.15:443
Referrer Policy: origin
Access-Control-Allow-Origin: *
Connection: keep-alive
Content-Length: 3
Content-Type: text/plain
Date: Mon, 08 Mar 2021 11:22:51 GMT
ETag: "600ece65-3"
Server: nginx
Accept: */*
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9,bg;q=0.8
Connection: keep-alive
Content-Length: 6553
Content-Type: text/plain;charset=UTF-8
Host: sentry.io
Origin: https://hotfixes.studio.learningequality.org
Referer: https://hotfixes.studio.learningequality.org/
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.190 Safari/537.36
sentry_key: e4b21baeb7a044b885464d2af687fb73
sentry_version: 7
{exception: {values: [,…]}, platform: "javascript",…}
breadcrumbs: [{timestamp: 1615202261.382, category: "xhr",…}, {timestamp: 1615202261.995, category: "ui.click",…},…]
event_id: "b5687e4ce2594f80b143d2287c268eeb"
exception: {values: [,…]}
platform: "javascript"
request: {,…}
sdk: {name: "sentry.javascript.browser", packages: [{name: "npm:@sentry/browser", version: "5.10.2"}],…}
user: {id: 8549, email: "mmilev3@melontech.com"}

instrument.ts:113 [Vuetify] 'black' is not a valid rgb color
/en/channels/fdeb95a…a37cbf122404cc/#/:1 Autofocus processing was blocked because a document's URL has a fragment '#/'.
instrument.ts:113 [Vuetify] 'default slot' is deprecated, use ':items and scoped slot "item"' instead

found in

---> <VBreadcrumbs>
       <Breadcrumbs>
         <VToolbar>
           <CurrentTopicView>
             <VContent>
               <TreeViewBase>
                 <TreeView>
                   <VApp>
                     <Root>
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)
instrument.ts:141 POST https://sentry.io/api/1252819/store/?sentry_key=e4b21ba…&sentry_version=7 429 (Too Many Requests)

Additional information

2021-03-08_131904

Steps to reproduce the issue

  1. Login to Studio
  2. Click the New Channel button
  3. Fill in title and language
  4. Click Create
  5. Click Add
  6. Click Upload files
  7. Select EPUB and upload it
  8. Fill the mandatory fields
  9. Click Finish
  10. See the console

The issue is not reproduced consistently and this scenario may need several repetitions in order to experience it.

Usage Details

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 repeating the listed Studio workflow in Chrome with a new channel and EPUB upload, then inspect the browser Network and console output for requests to Sentry. Compare successful and failing repetitions to determine whether the 429 is tied to upload completion or error reporting. Done means the scenario no longer produces the reported 429, or its cause and a reproducible fix are established.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
observability
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.