| « Sharing Solutions between VS 2008 and VS 2010 | Gallio/MbUnit very slow? » |
Gallio.Utility.exe considered evil
11/03/10
Gallio.Utility.exe considered evil
I just blogged about this problem I was having with Gallio/MbUnit. I don’t regard the issue as fixed, but I’ve certainly worked around it.
I found that the delay happened when the tool Gallio.Utility.exe was being run during the startup process of Icarus. I noticed that the same thing happened when I tried to run other included tools like the control panel, and it also happened when using TestDriven to run an MbUnit test from VS. I had the impression that the tool was being run multiple times, but that turned out to be a mistake – the tool was simply running for a rather long time, jumping up and down a bit in the task manager list. I finally ran the tool on its own and found that (a) it has something to do with the plugins that Gallio apparently uses (for purposes unclear to me, I have to admit) and (b) even to just run the tool and display the usage info message in a console, it takes 25 seconds or so.
So, simple solutions are sometimes the best: I deleted Gallio.Utility.exe. Next run of Icarus, it was restored. Okay, MSI is more cleverer than I. Or so it thinks – I went and configured the file access permissions on the file and removed all access permissions. Hah, take that, MSI. Next run, Icarus comes up within about 3 seconds, taking another 2-3 to load my test assembly. Hah!
Running a test through TestDriven from VS takes about 3.9 seconds now, so it’s at least 2 times slower compared to running the same test through the CodeRush test runner. Weird, but then who am I to complain.
Now, could somebody please fix that Utility program before I end up needing it for something?
9 comments
The first time a user runs any Gallio process it builds a plugin cache. That's what's taking 25 seconds and that's also why we cache it. Once the cache is built, subsequent runs should be practically instantaneous.
We've been getting reports that the true culprit has to do with the way that we are looking for GAC'd assemblies used by the Visual Studio 2010 plugin. Fixing this is pretty straightforward.
It's also possible that the plugin cache is being unnecessarily invalidated or something. I need to look into that.
Thanks for the feedback! If there's something I can do to help you see what's happening on my system, let me know.
Finally found the time to try out a newer version. I got this package: GallioBundle-3.2.378.0-Setup-x86.msi
There's good and bad news. The good news is that the problem with the Utility program hanging seems to be gone - Icarus comes up very quickly and I couldn't see the tool in the task manager at all. The bad news is that VS 2010 support doesn't seem to work at all. I have the RC installed and I get error messages when starting it, first about the Gallio add-in, then about the Gallio Shell Package, both of which can't be loaded.
I'll update my bug report in your system in a minute.
Getting there...
Many thanks to you posts. I'm experiencing the same problem with Gallio..
I see that latest release GallioBundle-3.2.456.0-Setup-x86.msi, going to try that, hopefully issue is fixed there.
Galio is good software especially than start work good !
gonna try earlier versions.
http://code.google.com/p/mb-unit/issues/detail?id=673


