what can a sequence of handler::index_XXX be interrupted by?

Zardosht Kasheff <[email protected]>
Newsgroups gmane.comp.db.mysql.devel
Message-ID <CABFd+SGtF6kNwbFgP66cYwZfShBA5YLsz3=HyCk-J0N-OUySjg@mail.gmail.com>
Hello all,

As best as I understand, a handler mostly does reads by performing the
following sequence of operations (not including rnd_XXX functions):
 - call handler::index_init
 - perform a bunch of handler::index_XXX calls
 - call handler::index_end

I am wondering what other handler operations may occur in between
index_init and index_end that may block a handler::index_XXX call.

For instance, in the case of deletes and updates, I know that the
handler that performs an index_XXX call may then perform
handler::delete_row or handler::update_row. So, a subsequent call to
handler::index_XXX may not occur until the delete_row or update_row is
complete.

Are there any other cases where the sequence of index_XXX calls may be
blocked? For instance, is there a chance that some other handler's
work may block execution of and index_XXX call? Can joins or index
merges do such a thing?

Thanks
-Zardosht

-- 
MySQL Internals Mailing List
For list archives: http://lists.mysql.com/internals
To unsubscribe:    http://lists.mysql.com/[email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.