Fix Report Builder Crashing on Launch!

Yeah! Technical Post! — I been so busy with life, my technical posts seem to have gotten lost in some void.  I encounter lots of fun stuff in my line of work.  But never get a) time or b) forget to blog about it.  Hope this helps someone else, it was a weird issue.

My client Report Builder (link) is crashing on launch with the following error.

Faulting application name: MSReportBuilder.exe, version: 15.0.1473.0, time stamp: 0x5d661239
Faulting module name: KERNELBASE.dll, version: 10.0.17134.1184, time stamp: 0xda43ec6b
Exception code: 0xe0434352

He tried reinstalling .NET, running repairs, uninstalling, and reinstalling Report Builder with no luck.  Of course, he searches for the error on Dr. Google with no luck.  I looked at an internal knowledge base with no chance either.   Both us were searching for mistakes with the report builder, but the actual error was somewhere else.  So when I search for expectation only, 0xe0434352.  I found a Microsoft forum post (ref); this was a general expectation.  So we had no idea what was wrong.

I asked him to capture the Process Monitor trace and send me a copy.  He also sent me a screenshot from the event viewer.

Event ID 1026
Report Builder Unhandled Exception

This event verified this was an unhandled an expectation.  The first thought here was that .NET needs to be fixed.   But I went searching in the Process Monitor when it crashed and started doing a backward trace to see which XML was being read before the crash.

Looking at the Process Monitor, I found the XML file that is being loaded.

ReportBuilder_ProcessMonitor
Process Monitor Trace

Reviewing this, I found the XML file (or rather config file).  I tracked it backwords from the point I saw the first symbol file being loaded (PDB).  I had the client send me the file when I opened it, I only saw the following.

ReportBuilder_UserConfig
user.config Content

Not to state the obvious, but that should not be the content here.  We deleted the file, restarted the Report Builder, which rebuild the user.config file.  Report Builder started successfully.

I took this file and did some more testing with WinDbg.  Found the real expectation, it aligns with the event viewer log.

(5350.3ca4): CLR exception - code e0434352 (!!! second chance !!!)
CLR exception type: System.Xml.XmlException
    "Root element is missing."
eax=006fecc8 ebx=00000005 ecx=00000005 edx=00000000 esi=006fed88 edi=00000001
eip=774235d2 esp=006fecc8 ebp=006fed20 iopl=0         nv up ei pl nz ac po nc
cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00000212
KERNELBASE!RaiseException+0x62:
774235d2 8b4c2454        mov     ecx,dword ptr [esp+54h] ss:002b:006fed1c=d4b56f77

Summary

Report Builder was crashing, trying to read the user.config file, which for some reason, had corrupted.  After deleting the file, the report builder recreated the file and started successfully.

8 comments

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.