Страница 1 из 1

GLOBAL TEMPORARY TABLE И MERGE

Добавлено: 15 сен 2008, 15:00
armagedon2007
Мной было замечено, что если в GLOBAL TEMPORARY TABLE вставлять записи через FOR SELECT ... INSETRT INTO TABLE то данные блоками н-го размера
сваливаются на диск во временный файл при этом значительного роста использования памяти нет, но если использовать в место FOR SELECT ... MERGE то все данные сервер держит в памяти, а размер временного файла на диске равен 0.
Сервер FB 2.1.1.17910
Это так должно быть?

Re: GLOBAL TEMPORARY TABLE И MERGE

Добавлено: 15 сен 2008, 15:27
hvlad
С точки зрения FB нет никакой разницы между прямым INSERT и синтаксическим сахаром, по имени MERGE.
FB не управляет выделением памяти под временные файлы и тем, как часто ось обновляет инф-цию в каталоге о р-ре вр. файла.

Насчёт "все данные сервер держит в памяти" - чем можешь это подтвердить ?

Re: GLOBAL TEMPORARY TABLE И MERGE

Добавлено: 15 сен 2008, 15:34
kdv
а размер временного файла на диске равен 0
если винда, на этом файле правую кнопочку, и Свойства. покажет размер.

Re: GLOBAL TEMPORARY TABLE И MERGE

Добавлено: 16 сен 2008, 15:11
armagedon2007
Пордон был неправ
просто запускал под отладкой из IBExpert долго запрос выполнялся и решил посмотреть сколько памяти проглотило
но не посмотрел какой процес
сейчас запустил без отладки все чудесным образом работает