Гость
Map
Форумы / Informix [игнор отключен] [закрыт для гостей] / помогите, не вся таблица переливается в temp таблицу / 5 сообщений из 5, страница 1 из 1
04.11.2014, 08:28
    #38794981
faid
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите, не вся таблица переливается в temp таблицу
Суть проблемы такова:
Есть процедура например proc01 в теле этой процедуры есть выполнение процедуры proc02:

Create procedure proc01 (arg01, arg02, ...)
...
...
execute procedure proc02();
end proc01;

В proc02 все просто - апдейтится одно поле таблицы table01 на основе двух других полей этой же таблицы.
Соответственно в proc02 есть код:

Create procedure proc02()
...
select field01, field02 from table01 into temp ttable01;
...
update table01 ...;
...
end proc02;

Приложение запускает proc01, по трейсам видно что запускается proc02, но количество записей во временной
ttable01 равно 43000 и в то время когда количество записей в table01 равно 110000.
Соответственно не по всем записям делается update table01.

Если после выполнения proc01 запустить отдельно выполнение proc02 [ execute procedure proc02(); ] все работает правильно (смотрю по трейсам все 110000 попадают во временную таблицу и вся table01 апдейтится).

Как решить эту проблему с базой?
Пробовали пересоздать proc01, proc02 - не помогло.
...
Рейтинг: 0 / 0
05.11.2014, 12:31
    #38796066
АнатоЛой
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите, не вся таблица переливается в temp таблицу
faid,
1. Версия сервера?
2. поробуйте поменять названия ХП proc01 и proc02 (чтобы это были совершенно новые ХП). Эффект повторяется?
...
Рейтинг: 0 / 0
06.11.2014, 08:58
    #38796945
faid
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите, не вся таблица переливается в temp таблицу
АнатоЛойfaid,
1. Версия сервера?
2. поробуйте поменять названия ХП proc01 и proc02 (чтобы это были совершенно новые ХП). Эффект повторяется?

версия 10.
поменять не получится, т.к проблема у удаленного клиента, на моем тестовом сервере не воспроизводится.
мысль - если пересоздать таблицу table01 и статистики собрать по процедурам - может поможет?
...
Рейтинг: 0 / 0
06.11.2014, 09:53
    #38796987
Журавлев Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите, не вся таблица переливается в temp таблицу
Странно все это, мало похоже но возможно битый индекс

попробуйте с хинтом
select /*+full(table01)*/ field01, field02 from table01 into temp ttable01;
...
Рейтинг: 0 / 0
03.12.2014, 17:08
    #38823932
cpr
cpr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите, не вся таблица переливается в temp таблицу
faid,

А Вы чисто на всякий случай в online.log не заглядывали, вдруг там Assert faled какой нибудь проскочил?
...
Рейтинг: 0 / 0
Форумы / Informix [игнор отключен] [закрыт для гостей] / помогите, не вся таблица переливается в temp таблицу / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]