Defrag Tools – Debugging User Mode Crash Dumps Redux

By: Andrew Richards, Chad Beeder

https://channel9.msdn.com/Shows/Defrag-Tools/Defrag-Tools-167-Debugging-User-Mode-Crash-Dumps-Redux/player

Advertisements

Excel Slowness – Refreshing External data

We recently ran into a performance issue. An Excel 2013 workbook executing a query against a Oracle database. Refreshing this worksheet took several minutes at a rate of 100+ records every few seconds. This behavior only exhibited itself only on one machine. If the Query is set to execute in the background, a status as shown below show up in the Status bar.

Fig 1.0

I used Process Monitor to troubleshoot this performance issue. I reset all the filters and started the capture. I refreshed the Excel Worksheet for a couple of seconds, so that I had enough events to work with. I right clicked on the process Name column and filtered to view events generated by “EXCEL.EXE”. This showed that there was lot of write activity to a particular sql.log file. The file was too big to view in Notepad++ or Notepad, using the good old DOS Type command with More gave me a glimpse of the Trace Events.

img02

Process Explorer showed that the handle to sql.log was being held by a service host and not Excel. This confirmed my suspicion that it was a process outside of Excel (system wide) that had Debug or Tracing was enabled. Since the worksheet was using a DNS, the next steps was to go to ODBC Data Source Administration console (Control Panel). The Tracing Tab showed that there was a session level trace enabled. Stopping the Trace resolved the Performance Issue.

img03

Process Monitor and Process Explorer are important tools IMO.