С большой долей вероятности он какую-то выборку данных для этого делает чтобы понять какой индекс лучше подходит
Скорее всего, эту самую выборку (необходимую для выбора индекса) MySQL выполняет столько раз, сколько значений содержится в конструкции IN. Такой вывод напрашивается из приведённых примеров.
Если это действительно так, то выбор индекса будет осуществляться тем дольше:
а) чем больше в таблице индексов (вероятно, роль играют не все индексы, а с определённой структурой, зависящей от конструкции запроса)
б) чем больше значений в конструкции IN
в) чем больше записей в таблицах, участвующих в запросе
Ну а конкретнее — это уже лезть в исходники…