Previously, the Xsd Validating Reader reported significant whitespace as not significant.
The previous behavior could result in data loss when the data was loaded to an Xml Document or XDocument/XElement that strips non-significant white space by default.
The only way to get out of the hang is to recycle the process (IISReset).
Debugging the issue: I have seen this issue before on a few occations and although as you will see later it was currently fixed in the framework, but in my earlier cases on this we ended up not needing a fix since the customers I worked with made code changes that made it such that they no longer were subject to the issue. Thread 75 triggered a garbage collection by making an allocation that would have made Gen 0 go over its allocation budget.
This previous behavior could cause data corruption and prevent the creation of valid XML from the Xml Reader.
____________________________________________________________________________________________________________________ GC RELATED INFORMATION ____________________________________________________________________________________________________________________ The following threads are GC threads: 18 19 The following threads are waiting for the GC to finish: 14 16 24 26 27 28 30 31 36 37 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 57 58 59 60 62 63 64 65 66 67 68 69 70 71 72 73 74 77 78 The GC was triggered by thread: 75 The GC is working on suspending threads to continue with garbage collection The following threads can't be suspended because preemptive GC is disabled: 23 25 33 34 35 38 56 61 The Finalizer (Thread 20) is not blocked The issue the customer is running into is a hang during heavy load.
SVR:: GCHeap:: Garbage Collect Generation 0x267 1124e058 7a0d691f 106cb970 00000020 00000000 mscorwks!
SVR::gc_heap::try_allocate_more_space 0x1c0 1124e078 7a0d7ecc 106cb970 00000020 00000000 mscorwks!
If you create an Xml Reader from a LINQ to XML class by using the Create Reader function, and this Xml Reader is passed to an XSLT, any instances of the ID function in the XSLT previously returned null.Null is not a valid return value for the ID function.Any code that depends on the value of ID being null will need to be changed.If you created a wrapping Xml Writer (an Xml Writer that writes to another Xml Writer) and specified that the wrapping Xml Writer has New Line Handling.