In the DAC we assume that there are as many handle tables per handle table bucket as heaps. However, during server GC the number of handle tables is equal to the number of processors, which may not match the number of heaps (for example with DATAS on). This leads to incomplete enumeration in the DAC (and cDAC).
|
for (int j = 0; j < max_slots && SUCCEEDED(param.Result); ++j) |
|
for (int uCPUindex=0; uCPUindex < n_slots; uCPUindex++) |
Found in #124760
In the DAC we assume that there are as many handle tables per handle table bucket as heaps. However, during server GC the number of handle tables is equal to the number of processors, which may not match the number of heaps (for example with DATAS on). This leads to incomplete enumeration in the DAC (and cDAC).
runtime/src/coreclr/debug/daccess/daccess.cpp
Line 7542 in 0fe50ea
runtime/src/coreclr/gc/objecthandle.cpp
Line 789 in 0fe50ea
Found in #124760