19 ноября 2015

Сбой в письмах рассылки

Сбой произошел вчера и затронул только тех, кто читает письма из вкладки "Протокол рассылки" Кабинета подписчика. Из-за переполнения буферов кэша дисковой подсистемы веб-сервер давал сбои при выводе писем рассылки с большим числом тендеров с полными текстами тендеров в теле письма. В итоге письма выводились частично и внутренние ссылки на тендеры не работали.
Это уникальная ситуация. Приняты меры, чтобы она не повторилась. Тем не менее важно понимать, что в живой, интенсивно работающей системе неизбежны дефекты и ошибки, которые надо своевременно диагностировать и исправлять. Не все причины дефектов могут быть устранены, как это показано в предыдущем посте. Нашим подписчикам рекомендуется периодически проводить контроль качества, устраивать стресс-тесты, обращать внимание на все странное и непонятное. Дополнительным преимуществом такого подхода является достоверная оценка качества нашей подписки. В случае каких-либо проблем или вопросов рекомендуется немедленно связаться с нами через стр. Контакты или через мобильный телефон службы поддержки.

13 ноября 2015

Ошибки на портале госзакупок


Наша работа по конструированию и эксплуатации фильтров должна происходить в постоянном контакте с заказчиком. Цель этого контакта двоякая: ошибки фильтров надо устранять, а качество фильтра надо оценивать. Без оценки качества невозможно улучшение. Одновременно появляется возможность находить новые явные или скрытые ошибки. Подробнее об оценке качества написано ниже, а сейчас кратко опишем две весьма экзотические причины для ошибок, которые могли быть выявлены только при тщательном тестировании.
Во-первых, причиной для пропуска тендеров являются массовые ошибки на портале госзакупок. Дело в том, что мы, к сожалению,  не можем придумывать тендеры сами, а можем получать их только в результате автоматического сканирования официальных порталов. Если движок официального портала работает с ошибкой или база тендеров на официальном портале испорчена и содержит дефективные тендеры, то наши программы автоматического сканирования дадут сбой и будут теряться не только дефективные тендеры, но и соседние с ними. Эта ошибка подробно описана ниже.
Во-вторых, причиной ошибок в работе фильтра могут быть ошибки системного софта, а именно СУБД. Дело в том, что для фильтрации тендеров фильтры используют очень сложные и громоздкие автоматически сконструированные, т.е. неестественные запросы, которые превышают возможности конкретных версий СУБД, в результате чего они ломаются. Речь идет о тонких недокументированных нюансах выполнения сложных поисковых запросов и для того чтобы понять причину ошибку надо изучать исходный код базы данных. Однако ошибка работы СУБД является фактом, потому что, например, MySQL и MariaDB дают разные результаты, а версия первой СУБД молча ломается на типичных запросах одного фильтра. Это стало неприятной неожиданностью, которая только подчеркнула важность самого тщательного тестирования.