Новый триал [сборка 13170].
Привет всем.
Сегодня добрался, наконец-то, до своей самой любимой баги в провайдере — выжирание памяти при использовании vc10-сборок (Visual Studio 2010). Пока её не обнаружили пользователи и не начали меня бить ногами вспоминать. Поскольку windbg уже неоднократно тыкал меня носом в точку утечки памяти, оставалось только найти время, чтобы раскопать проблему до дна.
void test_008() { string name; const int c_PassN=20000000; for(int i=0;i!=c_PassN;++i) { name="name1"; string n(std::move(name)); }//for i }//test_008
Оказалось, что я наступил на грабли в std::basic_string, которые исправили в первом сервис паке 2010 студии. Пропатчился до упора — проблема исчезла.
Если не случится каких-либо катаклизмов, то в пятницу будут выложены новые релизные бинарники провайдера — v3.11.
Kovalenko on 25 мая, 2012
Пока все идет по плану. Сегодня 3.11 зарелизим.
Правда, вчера стало мерещиться восстание машин — NUnit продолжал выполнять тест (на .NET) с удаленной машиной несмотря на выдергивание сетевого кабеля, выключение роутера, шатдауна базы данных… Сам сервер тушить нельзя было — на нем, с другой базой данных, прогонялись «релизные» тесты IBProvider-a. Вообщем, была измена — «сбой в Матрице!»
Но сегодня на
трезвуюсвежую голову стало ясно, что сам тест закончился, а огромное количество сообщений в окне вывода NUnit-a продолжает выводиться выделенным потоком в отложенном режиме 🙂