The following Hotfix has just been released for Autodesk Revit 2012 x64 products:
Hotfix – Autodesk Revit 2012 – Improves stability when working with large datasets (64-bit only)
The Hotfix is meant to address crashing issues when working with large file sets. Some common symptoms of the issue include:
- Typically, journal files will have the following exception code near the end: ExceptionCode=0xe0434352
- Journals will show plenty of available RAM at the time of the crash.
- Crashes will commonly be reported when users are doing things like activating a Drafting View, clicking on the Application Menu, or drawing Detail Lines.
This Hotfix applies to 64 bit systems only, and Web Update 2 must be installed first - so verify that the build number of Revit 2012 is 20110916_2132 before you apply it.
You mention that the build number will change once the new Utility.dll file is replaced and I can see that in the About dialog box within Revit. Previously my build was 20110916_2132 and now it is 20120126_0600. How does Revit determine this? Does it check all .dlls and .exes in the program folder and use the highest number? Or is this information stored somewhere that can be checked with a script? I have previously used the file version of Revit.exe to make sure my project teams are all running the same build, but this hotfix has me scratching my head because now it appears that the build is coming from Utility.dll because the file version of Revit.exe has not changed.
Posted by: Estimmel | February 24, 2012 at 08:23 PM
I wrote a post back in November about a journal file parser that pulls out build numbers to facilitate an office audit: http://revitclinic.typepad.com/my_weblog/2011/11/journal-file-parser.html
Would that help?
Posted by: Kathryn Langan | February 27, 2012 at 08:50 AM
That's a great script! Thanks for pointing it out. I'd prefer not to use the journal file though as I'm trying to check the version number prior to a user actually launching Revit and since Revit writes the journal file, there could be inaccuracies (on first run or right after a patch is applied). I'm curious as to how Revit checks it's version number considering it's not part of the Revit.exe as indicated above.
Posted by: Estimmel | February 27, 2012 at 12:54 PM
The build number isn't determined solely by the Utility.dll, but rather as you indicated, by scanning the various dlls at launch. Unfortunately it's not going to change the build stored in the Revit.exe directly. With Service Packs it's a little easier to track, but with a hotfix, you would have to launch Revit first to update the build, and that build would either be pulled from the journal after the first launch or by looking at the Utility.dll.
Posted by: Kathryn Langan | February 29, 2012 at 09:23 AM
Just curious - what's considered a large dataset?
I didn't think ANYTHING in Revit was small! :-)
Our Central files are typically in the neighborhood of 150 Meg. Is that "large"?
Do Linked files count?
Posted by: A Facebook User | February 29, 2012 at 05:14 PM
Yes, linked files can count. We've seen it reported with 350MB files + links down to about 115MB + links. So if you are experiencing any of the symptoms, I would suggest giving the Hotfix a try.
Posted by: Kathryn Langan | March 01, 2012 at 11:13 AM
I think (after some help from Autodesk support) the way to do this is to check the Product Version of all of Revit's DLLs and the one with the highest number is the current build. This can be done before Revit is run and without relying on Revit writing that value to an external file (like a journal file). It also means that it should always be right even without knowing which file changed.
Posted by: Estimmel | March 05, 2012 at 05:03 PM