Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update documentation to clear out unknown behaviors #586

Open
1 of 2 tasks
arthurfiorette opened this issue Jul 1, 2023 · 2 comments
Open
1 of 2 tasks

Update documentation to clear out unknown behaviors #586

arthurfiorette opened this issue Jul 1, 2023 · 2 comments
Assignees
Labels
documentation Improvements or additions to documentation good first issue Good for newcomers help wanted Extra attention is needed

Comments

@arthurfiorette
Copy link
Owner

arthurfiorette commented Jul 1, 2023

@arthurfiorette arthurfiorette added documentation Improvements or additions to documentation help wanted Extra attention is needed good first issue Good for newcomers labels Jul 1, 2023
@arthurfiorette arthurfiorette changed the title Improve documentation Update documentation to clear out unknown behaviors Jul 1, 2023
@arthurfiorette arthurfiorette self-assigned this Jul 18, 2023
@edwinveldhuizen
Copy link
Contributor

edwinveldhuizen commented Apr 28, 2024

@arthurfiorette Maybe some sort of flow diagram would also be helpful, also when people are submitting a pull requests so they know what other cases to think about.

After implementation we see a lot of requests taking 15 seconds, I think it has something to do with the waiting logic in combination with errors. Some endpoints throw 404's because there is no data at the time, but I have a feeling concurrent requests might be waiting and then retrying the response, is this true? (and are they possibly then waiting for the next, and then retrying again, and then all waiting for the next, and then retrying a.k.a. dogpile effect?)

Trying to understand when this happens:

// src/interceptors/request.ts

// The deferred is rejected when the request that we are waiting rejects its cache.
// In this case, we need to redo the request all over again.
return onFulfilled(config);

I'm trying to figure out why it happens, but it's kind a of hard to understand at the moment by just reading through the code.

@arthurfiorette
Copy link
Owner Author

Hey @edwinveldhuizen, I'm busy for these next few months and cannot work in this project for free :/

You can try to run a single test at a time with your debugger enable to see where it goes, the code path is fairly simple, just tricky because there are a thousand of options in this library.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation good first issue Good for newcomers help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants