I couldn't get Sergey's linked coverage profiler tool to work with a coverage file generated from an .EXE so I dug through the logged code with the regular coverage profiler and uncovered the source of the problem. 3 simple SQL-Select statements which were all using left outer join. These left outer joins were plenty fast enough in single user mode but somehow turned deathly slow in a multi-user environment. I switched these 3 SQL-Select statements to inner joins and the speed immediately increased from 15 seconds to sub-second response times. In this particular instance I would prefer to use a left outer join as it satisfies my own paranoid shouldn't happen but strange things DO happen mentality that I program with.
So why the huge penalty for a left outer join?
Brandon Harker
Sebae Data Solutions