Неторопливое выжирание памяти в 2.5
Привет всем. Привет всем. Есть у меня тестик, который очень долго терроризирует системную таблицу с описаниями хранимых процедур. В рамках одной транзакции. В частности - он открывает и просматривает блоб с BLR. На 2.1 достаточно быстро сервер выжирал всю свою память и выдавал ошибку выделения памяти. 2.5 ведет себя лучше. Но все равно - судя по диспетчеру, каждую секунду отжирает 100 килобайт (наверное могет и быстрее, но машина щас загружена другими задачами). Короче - достижение OUTOFMEMORY, хотя и находится в отдаленном будущем, но вполне реально. При коммите, память будет освобождена. Я об этом с полгода назад писал кому следует. Сказали, что типа временные блобы жрут память. Но вот щас опять проблема напомнила о себе. И решил поделится с широкой общественностью. На 1.5 - такого расхода нет. Коваленко Дмитрий.
Re: автоматизированный переход на 2.5
Andrei wrote: Если имеем базу на Yaffil, то для ее перевода на 2.5, достаточно ли будет выполнить следующую последовательность действий: ... Мдаа ... не тоже ето в переди, думаю в етом году приступить :( Немношко поексперементировал всякие варианты. У меня один клиент 24/7 и если более часа выганять их из базы, то ето плохо, база ~ 2.5 Gb. Для себя нашёл такое решение, наверно и при неи останусь, если некто чтото лучше нопосоветует: 1. Разделяем базу на 2 скрипта, в первом только голые таблицы, без индексов и ключеи 2. Из первого скрипта делам базу на FB 3. С FBCopy переганяем данные из Yaffil-a а FB 4. Накатываем второи скрипт. Шас точно непомню, но 2.5 гига + индекси перелились гдето меньше чем за час. В принципе был приятно удевлён насколько быстро FBCopy переливает данные ... Regards Janex
Re: Неторопливое выжирание памяти в 2.5
Kovalenko Dmitry wrote: Я об этом с полгода назад писал кому следует. Сказали, что типа временные блобы жрут память. Дык с тех пор ничего не изменилось. -- Дмитрий Еманов
Re: автоматизированный переход на 2.5
Шас точно непомню, но 2.5 гига + индекси перелились гдето меньше чем за час. В принципе был приятно удевлён насколько быстро FBCopy переливает данные ... Это медленно ! Посмотри с какой скоростью это сделает gbak... Если речь о 2.5, то, повторюсь, - он сам может вытянуть данные из дятловой БД. Иначе - см.выше, я уже писал -- Хорсун Влад
Re: Неторопливое выжирание памяти в 2.5
Dmitry Yemanov ... Kovalenko Dmitry wrote: Я об этом с полгода назад писал кому следует. Сказали, что типа временные блобы жрут память. Дык с тех пор ничего не изменилось. Сами блобы - да создаются. Но буфер свой держат во временном файле и только по размеру содержимого, а не целую страницу. -- Хорсун Влад
Re: автоматизированный переход на 2.5
Khorsun Vlad wrote: Шас точно непомню, но 2.5 гига + индекси перелились гдето меньше чем за час. В принципе был приятно удевлён насколько быстро FBCopy переливает данные ... Это медленно ! Посмотри с какой скоростью это сделает gbak... Если речь о 2.5, то, повторюсь, - он сам может вытянуть данные из дятловой БД. Иначе - см.выше, я уже писал -- Хорсун Влад Да но у меня там кодировка 1257 и по краинеи мере FB 2.1 ето непереваривает :( :( :( Даавно уже про ето плакал :) Сомневаюсь что y 2.5 чтото менялось нашёт етого, но если менялось/будет менятся, был бы страно рад :) Regards Janex
Re: Неторопливое выжирание памяти в 2.5
В частности - он открывает и просматривает блоб с BLR. Хотя, не. Вру. Щас вот выяснил окончательно - в чём именно там фигня. Фигня связана с текстом хранимой процедуры. Причем конкретная. Она же в UNICODE_FSS хранится, а подключение у меня WIN1251. for select rdb$procedure_source from rdb$procedures Сервер, по всей видимости, при фетче этот блоб сразу конвертирует. Не смотря на то, что я его так и не прочитаю. Отсюда и выжирание. Не, а ведь могу пока еще. Только силой мысли :-) Коваленко Дмитрий
Re: автоматизированный переход на 2.5
Да но у меня там кодировка 1257 и по краинеи мере FB 2.1 ето непереваривает :( :( :( Даавно уже про ето плакал :) Сомневаюсь что y 2.5 чтото менялось нашёт етого, но если менялось/будет менятся, был бы страно рад :) Я вот тебя сколько помню - ты перманентно плачешь по поводу вот этого клиента :-) Каких-то вшивых ~3 гига Насчет непереваривает - там что WIN1257 другая? Я не про идентификаторы, а саму кодовую таблицу. Коваленко Дмитрий.
Re: автоматизированный переход на 2.5
Да но у меня там кодировка 1257 и по краинеи мере FB 2.1 ето непереваривает :( :( :( Даавно уже про ето плакал :) Сомневаюсь что y 2.5 чтото менялось нашёт етого, но если менялось/будет менятся, был бы страно рад :) Если сможешь запустить одновременно Ya и FB 2.5, то всё получится. Например - Yaffil работает как и работал, а FB 2.5 embedded создаёт новую БД, коннектится к Yaffil'у и импортирует данные. -- Хорсун Влад
Re: автоматизированный переход на 2.5
Kovalenko Dmitry wrote: Насчет непереваривает - там что WIN1257 другая? Я не про идентификаторы, а саму кодовую таблицу. ID там другие, вот и вся проблема. Соотв-но, бекап-рестор не канает. -- Дмитрий Еманов
Re: автоматизированный переход на 2.5
Насчет непереваривает - там что WIN1257 другая? Я не про идентификаторы, а саму кодовую таблицу. ID там другие, вот и вся проблема. Соотв-но, бекап-рестор не канает. Какой кашмар. Гарантировано можно еще лет десять страдать :-) Коваленко Дмитрий.
Re: Неторопливое выжирание памяти в 2.5
Она же в UNICODE_FSS хранится, а подключение у меня WIN1251. Сервер, по всей видимости, при фетче этот блоб сразу конвертирует. Сделали бы вы, что ли, это через конвертирование по-требованию И никаких тебе, временных блобов с их проблемами. Коваленко Дмитрий. PS. Прийдется вместо одного запроса, вытаскивающего PROCEDURE_TYPE, PROCEDURE_BLR, PROCEDURE_SOURCE, городить два - (TYPE, BLR) и (SOURCE).
Re: Неторопливое выжирание памяти в 2.5
Пока ты не открыл блоб, ничто никем не создаётся. Точна? Я его не открываю. Колонка с блобом выбирается на тот случай, если RDB$PROCEDURE_TYPE будет пустая. Таких у меня нет. Там или 1 или 2. Если пустая, то анализирую BLR. И только если с BLR возникли проблемы - вот тады открываю и гружу блоб с исходным текстом. --- Я (для Пешкова) как то формировал список функций, которые вызываются в этом тесте - открытия блоба там вообще нету. PS Опять же - коммитить не забывай :-D Ну скока можно - коммичу не я, а юзер :) Коваленко Дмитрий.
Re: page 3 is wrong type (expected 4, found 0)
Attid пишет: ну я так понимаю если 3 дня возишься то тебе эта база не очень нужна. иначе дорога только http://ibase.ru/dbrepair.htm Самому никак нельзя это -wrong page type -page 3 is wrong type (expected 4, found 0) починить? Хоть какие-нибудь идеи...
Re: page 3 is wrong type (expected 4, found 0)
Anton ... Attid пишет: ну я так понимаю если 3 дня возишься то тебе эта база не очень нужна. иначе дорога только http://ibase.ru/dbrepair.htm Самому никак нельзя это -wrong page type -page 3 is wrong type (expected 4, found 0) починить? Хоть какие-нибудь идеи... У тебя страница заполнена нулями, и скорее всего не она одна, какие идеи ? -- Хорсун Влад
Re: автоматизированный переход на 2.5
Khorsun Vlad wrote: Если сможешь запустить одновременно Ya и FB 2.5, то всё получится. Например - Yaffil работает как и работал, а FB 2.5 embedded создаёт новую БД, коннектится к Yaffil'у и импортирует данные. Ну ето ясно, так то и будем делать, только как уже выше писали, ID кодовои страници другои, изза чего FB невсасывает бекап Yaфила :( Regards Janex
Re: автоматизированный переход на 2.5
Kovalenko Dmitry wrote: Насчет непереваривает - там что WIN1257 другая? Я не про идентификаторы, а саму кодовую таблицу. ID там другие, вот и вся проблема. Соотв-но, бекап-рестор не канает. Какой кашмар. Гарантировано можно еще лет десять страдать :-) Коваленко Дмитрий. Ну я уже смерился :) Regards Janex
Re: Неторопливое выжирание памяти в 2.5
Kovalenko Dmitry ... Она же в UNICODE_FSS хранится, а подключение у меня WIN1251. Сервер, по всей видимости, при фетче этот блоб сразу конвертирует. Сделали бы вы, что ли, это через конвертирование по-требованию И никаких тебе, временных блобов с их проблемами. Пока ты не открыл блоб, ничто никем не создаётся. -- Хорсун Влад PS Опять же - коммитить не забывай :-D
Re: page 3 is wrong type (expected 4, found 0)
Khorsun Vlad пишет: У тебя страница заполнена нулями, и скорее всего не она одна, какие идеи ? Спасибо Влад. Я себе такого и представить не мог. Страница действительно не одна, а семь (с 3 по 9ю)
Re: Неторопливое выжирание памяти в 2.5
Точна? Я его не открываю. Хотя, может я тебя и обманываю... Я (для Пешкова) как то формировал список функций, которые вызываются в этом тесте - открытия блоба там вообще нету. А тут я что-то перепутал. Щас буду копать. Коваленко Дмитрий.
Re: page 3 is wrong type (expected 4, found 0)
Khorsun Vlad wrote: У тебя страница заполнена нулями, и скорее всего не она одна, какие идеи ? стереть нули?
Re: автоматизированный переход на 2.5
Intertelecom CDMA 45 грн в месяц в пакете 700 mb трафика. Дмитрий туда же PeopleNet club 0.03 грн. ($0.00375) за мегабайт без абонплаты.
Re: автоматизированный переход на 2.5
Ты не сравнивай центральные города с региональными. Отъедь от Одессы на 100км, и посмотри, почем и какой там интернет. 100 км от Одессы это Николаев ;-) Сомневаюсь что сильно дороже будет. Но в целом понятно, я ж и писал что конкуренция превыше всего. Для негорода у нас три оператора, позиционирующих себя как 2.5G - 3G intertelecom people.net mts connect Фильмы конечно не покачаешь, но для почты и серфинга - самое то.
Re: page 3 is wrong type (expected 4, found 0)
On Mon, 19 Jan 2009 16:11:01 +0300, Kochmin Alexandr alexa...@intakom.ru wrote: стереть нули? //0xFF Это чревато. На этих страницах возникнет вакуум, скорее всего, данные из соседних страниц всосутся. :D -- Сергей Смирнов.
Re: page 3 is wrong type (expected 4, found 0)
WildSery wrote: Это чревато. На этих страницах возникнет вакуум, скорее всего, данные из соседних страниц всосутся. :D да нормально. Данные заполнят свободное место и все заработает.
RE: page 3 is wrong type (expected 4, found 0)
Это чревато. На этих страницах возникнет вакуум, скорее всего, данные из соседних страниц всосутся. :D да нормально. Данные заполнят свободное место и все заработает. Ага, просто взлетит... В космос ;) P.S. Эх, что-то юмор конфы никто не собирает WBR, Dmitry Beloshistov AKA [-=BDS=-] __ Eioi?iaoey io ESET NOD32 Antivirus, aa?ney aacu aaiiuo neaiaoo? ae?onia 3777 (20090119) __ Niiauaiea i?iaa?aii i?ia?aiiie ESET NOD32 Antivirus. http://www.esetnod32.ru
Re: автоматизированный переход на 2.5
Hello, Dmitry Dmitry Yemanov wrote: Насчет непереваривает - там что WIN1257 другая? Я не про идентификаторы, а саму кодовую таблицу. ID там другие, вот и вся проблема. Соотв-но, бекап-рестор не канает. вопрос не совсем к тебе - а что, нельзя переписать бэкап чтобы идентификаторы кодировки при ресторе менял? принудительно. -- Dmitri Kouzmenko, www.ibase.ru, (495) 953-13-34
Re: Неторопливое выжирание памяти в 2.5
Сделали бы вы, что ли, это через конвертирование по-требованию Пока ты не открыл блоб, ничто никем не создаётся. Переписал код - блоб с исходным текстом процедуры теперь ваще не запрашивается. Память перестала течь. И на 2.1 и на 2.5 - стоит как кол на уровне 16.6MB Вернул его в запрос обратно (но даже не пытаюсь его открыть) - сервер течет. Полагаю, это на любой колонке с текстовым блобом, кодовая страница которого не совпадает с кодировкой подключения, будет происходить. --- Что в очередной раз подтверждает мысль - NONE подключение рулит. Правда, его надо уметь готовить :-) Коваленко Дмитрий. www.ibprovider.com
Re: автоматизированный переход на 2.5
Dmitri Kuzmenko wrote: вопрос не совсем к тебе - а что, нельзя переписать бэкап чтобы идентификаторы кодировки при ресторе менял? принудительно. Зашить в него знание ID-шников яффила? Нафиг. -- Дмитрий Еманов
Re: Неторопливое выжирание памяти в 2.5
Что в очередной раз подтверждает мысль - NONE подключение рулит. Правда, его надо уметь готовить :-) Поделись своим рецептом с публикой. :-)