January 8, 2025 at 12:00 am
Comments posted to this topic are about the item Hash Joins IV
January 8, 2025 at 3:36 pm
I disagree with the answer. The first answer is a better answer if you understand what's going on. Even the name is suggesting the process is shifting to an alternate plan. Hash bailout occurs when the process is having trouble fitting partitions into the memory grant and spills to disk. The process will not bail out with one failure; it makes multiple attempts. When it reaches threshold (5?), the hash bailout occurs. When this happens the process stops partitioning data and starts handing the process more like a nested loop join. The names "recursive hash" and "grace hash" are just monikers used to describe a process that is not a true hash join. The process has "bailed out" of the hash join to employ an alternate strategy. Just because MS calls the alternate method a recursive hash or grace hash doesn't mean the process is using the same hash strategy it was prior to bailout. Erik Darling has a great blog post on this.
https://erikdarling.com/hash-bailout-with-batch-mode-operations/
ewm2
January 8, 2025 at 6:31 pm
Viewing 3 posts - 1 through 2 (of 2 total)
You must be logged in to reply to this topic. Login to reply