I’m working through some code that I haven’t touched recently and I’m running it for the first time on a SQL Server 2012 server. The code is a way to load information into the RML utilities and I started hitting errors. First, I hit an error that my server couldn’t be connected to, but thanks to Erin Stellato (blog|twitter), I was able to quickly fix that. Then I hit this:
12345678910111213141516171819202122232425262728 Number of processors: 2Active proc mask: 0x00000003Architecture: 9Page size: 4096Highest node: 0Package mask: 0x00000001Processor(s): 0x00000001 Function units: SeparatedPackage mask: 0x00000002Processor(s): 0x00000002 Function units: SeparatedProcessors: 0x00000003 assigned to Numa node: 0-Ic:\performancetuning\rml.trc-oc:\bu-SDOJO\RANDORIUsing language id (LCID): 1024 [English_United States.1252] for character formatting with NLS: 0x00060101 and Defined: 0x00060101Attempting to cleanup existing RML files from previous executionUsing extended RowsetFastload synchronizationEstablishing initial database connection:Server: DOJO\RANDORIDatabase: PerfAnalysisAuthentication: WindowsUsing SQL Client version 10Creating or clearing the performance databaseThe major version number (11) in the trace file header is not a supported file version.At this time only Microsoft SQL Server 2000, 2005 and 2008 trace files are supported. The current trace version (11) is not supported.ERROR: Read of file header for file c:\performancetuning\rml.trc failed with operating system error 0x8007000D (The data is invalid)*** ERROR: Attempt to initialize trace file reader failed with operating system error 0x8007000D (The data is invalid)Reads completed - Global Error Status 0xfffffffeShutting down the worker thread message queues. ...
That’s right, the trace header shows the version it was captured with and the 2012 version doesn’t work with RML Utilities. I’ve tried several different ways of defining the trace collection, but the header doesn’t seem to be something you can control. I’ve also tried opening it in an editor and finding the right bit of code to change (it’s just a trace file after all) but no luck there either.
<sigh>
Firing up some older hardware now in order to get at a 2008R2 or earlier server. I’ve already upgraded all my servers & virtuals.
I feel your pain Grant! I just ran into this as well, should have mentioned in my post that trace files from 2012 are not currently supported in RML Utilities. But, you CAN process the data INTO a database on a 2012 instance…though that probably doesn’t help you.
It’s my understanding that Microsoft WILL come out with a version of RML Utilities that’s supported with SQL 2012.
Thanks for your great blog post Erin. That shaved hours off my struggle. I finally got an old machine up & running and captured a trace off of it, so I’m good to go now. What a pain.
Dang! I’ve been hit by the same issue just now. Too bad. I guess there’s no way around it, is there?
I hope Microsoft comes out with an update. RML utils are just too useful to be dropped altogether.
Thanks Grant and Erin for your posts!
Yay! I just found a quick fix for that! Take a look here: http://t.co/irn4JMu3
You can also save the trace file to an xml file, change the major version to 10, and save the file back to a trace file.
Good to know. No other issues when doing that?