How could I know if a hash join has been executed with spilling or not?

  • I'm using sql2k sp3 standard ed.

    Looking @ the exec plan of a slow query (~9 sec for ~ 200 rows) I found 3 hash joins that are responsible for ~70% of the execution time.

    Is there any possible way to know if these hash joins have been executed with spilling or not?

    And what could be the reason of this operator when I know that all the tables involved in this have the right indexes (the base of the initial hash is a 1 row table, but the other tables are always read through an index seek)? And even funnier, the result of the last (which is ofcourse "large" - ~ 12K rows) hash join is the base for a nested loop which is ofcourse very fast (~0.1%).

    Please help !!!

    PS The database has AutoUpdate Statistics=ON

    exec plan @

    http://img31.picoodle.com/img/img31/4/1/21/f_explanm_2e89197.jpg

Viewing 0 posts

You must be logged in to reply to this topic. Login to reply