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

If GetModelAsync takes too long to complete, requests will fail. #304

Closed
rayao opened this Issue Feb 28, 2016 · 2 comments

Comments

Projects
None yet
3 participants
@rayao
Contributor

rayao commented Feb 28, 2016

Since GetModelAsync is asynchronous, if it takes too long, RESTier routing won't get registered in time and all requests before the registration done will fail.
Also, in test runs sometimes 2 or more test methods run simultaneously, which leads to GetModelAsync called simultaneously for a same Api, the model pipeline will throw for lacking synchronization mechanism. I think this could be triggered in production when 2 services expose a same Api.

@rayao rayao added the bug label Feb 28, 2016

@lewischeng-ms lewischeng-ms added the ready label Mar 2, 2016

@lewischeng-ms lewischeng-ms added this to the 0.5 milestone Mar 2, 2016

@rayao

This comment has been minimized.

Contributor

rayao commented Mar 7, 2016

Working on a partial fix not including long running (real async) GetModelAsync.

@rayao

This comment has been minimized.

Contributor

rayao commented Mar 15, 2016

Fixed with fc09f71
In WebApi publisher, async nature of model pipeline is ignored.
I left MapRestierRoute method signature unchanged in case later WebApi supports async initialization.

@rayao rayao closed this Mar 15, 2016

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment