Skip to content
This repository has been archived by the owner on Feb 2, 2023. It is now read-only.

limit handler runtime. #1039

Open
fisx opened this issue Nov 7, 2017 · 1 comment
Open

limit handler runtime. #1039

fisx opened this issue Nov 7, 2017 · 1 comment
Labels

Comments

@fisx
Copy link
Collaborator

fisx commented Nov 7, 2017

there was one production event where the server started to timeout on any request. the log file didn't contain anything interesting, so i restarted the server. the log file then contained the lines:

2017-11-07 11:48:16.536592 UTC [INFO] user interrupt
2017-11-07 11:48:16.536661 UTC [INFO] shutdown.

it seems like there are possible (if rare) situations in which the servant handler blocks the acid-state mvar indefinitely for one request, which in turn blocks all other requests form being handled.

it would be good to have a hard timeout wrapped around the entire api. the timeout handler needs to make sure that the acid-state mvar lock is released. this would not fix the issue that some request was blocking instead of returning an error, but it would make the effect acceptable (err500 for one user instead of freezing the entire instance).

@fisx fisx added the bug label Nov 7, 2017
@fisx
Copy link
Collaborator Author

fisx commented Nov 27, 2017

the cause of the issue described above could well be zerobuzz/servant-cookie-session#2 (fixed, but not sufficiently tested, in zerobuzz/servant-cookie-session#3). we should test this and upgrade aula.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

1 participant