Rodney, After converting the mbox file to Maildir and adding it to my mailstore, I cannot reproduce the loop. (The versions of notmuch and emacs I used are close to the ones you have, but not an exact match, so it may be something subtle about those versions. I can investigate more carefully if it seems like this is the case.)
If you do: M-x set-variable RET debug-on-quit RET t RET then trigger the loop and press C-g, you should get a buffer showing a backtrace of the lisp stack. What does that say? Thanks, -- Aaron Ecay