1

Resolved

F5 on a web project is very slow

description

Django project:

Using a virtual env: I've seen it take a minimum of 50 secs, up to 90 secs from F5 to dev server running.
Using a global env: Around 10-12 secs from F5 to dev server running.

And that's on a machine with an SSD. VS has the wait cursor and is not usable during most of that time.

comments

Zooba wrote Jun 4 at 8:36 PM

I believe this is actually build, or possibly checking whether we need to build.

Can you see if Build\Build Solution or Build\Rebuild Solution show the same problem?

huguesv wrote Jun 4 at 9:12 PM

Virtual Env:
Build Solution: about 25 secs, only responsive during last few seconds
Rebuild Solution: about 3 secs
Start with Debugging: about 70 secs

Zooba wrote Jun 4 at 9:16 PM

This is at least partly due to recreating InterpreterOptionsService as part of the up-to-date check. We should be able to use the already loaded service when we are in-proc.

Zooba wrote Jun 4 at 9:49 PM

Removing the extra creation makes a difference, and according to the profiler everything that is left over is unavoidable due to the build process.

I'll have a look at omitting the virtual environment from the up to date check where possible, but it's likely that will break worker roles, so it may not be possible at all.

Zooba wrote Jun 4 at 10:11 PM

It makes a bit of a difference, and I suspect worker roles may already be broken...

huguesv wrote Jun 9 at 7:21 PM

I installed 2.0 RTM then 2.1 CL1272922 (June 6) to compare. Empty django project using Python 2.7 virtual env.

2.0 RTM:
F5 to process start: less than 1 sec

2.1 (June 6):
First F5 to process start: 26 secs
Second F5 to process start: 87 secs
Third F5 to process start: 92 secs
Clean + F5 to process start: 28 secs

So from now on I'll be doing a Clean before pressing F5...

Ptools wrote Jun 10 at 5:49 PM

we should fix this for beta2.