Авторитетно отвечаю:
Прога группирует запросы к одному серверу кусками не более чем в 10 штук.
Первое дело, которое делается для 10 штук, это отправить запрос на сервер-получить ответ.
Если это не удалось, то прога пытается повторно отправить запрос.
Но та функция(пока использую из библиотеки, которая xml обрабатывает), которая засылает запрос, при плохом соединении почему-то практически всегда отрабатывает "как-бы-нормально", а файл иногда приходит битый. Тогда ошибка возникает дальше, при разборе ответа. Также такое будет, если на DNS-запрос не было ответа.
В этом случае получается 10 items failed to check.
Если такое было 2 раза - будет 20, 3 - 30, и т.д.
Это не OOP, а ошибки при получении или разборе ответа на запрос. Некруглые цифры могут быть, если в запросе было меньше чем 10 предметов.
Списки недошедших ASINов внутри программы есть, в отладочной версии выводятся в отладочный поток.
В выложенной версии они никуда не выводятся.
В староглиняных версиях приблуды этих failed'ов считали, но никуда не выводили. По моим сведениям, такие сообщения были заложены в исходные тексты где-то в районе 30 мая, это значит, что версия от 1 июня уже содержала соответствующую функциональность.
Возможных действий в ситуации вижу два:
1. Писать свою версию функции отправления запросов, в ней более тонко проверять получение ответа. Один раз уже совсем собрался, только всё время в соревновании лени и меня выигрывала последняя.
2. Вести текстовый протокол - log-файл. Тогда в нем будет видно.
В общем, я постараюсь как-нибудь эти два пункта проделать. Вопрос лишь том, чтобы сесть и сделать.
По поводу адресов серверов:
в программе забиты 6 адресов серверов (можно посмотреть их всех в файле globals.xml).
Поскольку AWS сервисом пользуется много народу, то сервера распределенные и даже запросы DNS подряд дают разные ip.