Текущее время: Вс, июл 27 2025, 09:03

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения: Вылетает Дамп " TSV_TNEW_BLOCKS_NO_ROLL_MEMORY"
СообщениеДобавлено: Вт, фев 24 2009, 08:03 
Специалист
Специалист

Зарегистрирован:
Пн, дек 29 2008, 07:19
Сообщения: 129
Пол: Мужской
Добрый день! при формировании отчета вылетает дамп ( TSV_TNEW_BLOCKS_NO_ROLL_MEMORY),
Цитата:
"КрТекст
No roll storage space of length 6307848 available for internal storage.
Что произошло?
Each transaction requires some main memory space to process
application data. If the operating system cannot provide any more
space, the transaction is terminated."
память увеличина в два-три раза чем предлогает система SAP, ошибка падает вот на этот селект, и что характерно только по одной БС..подскажите в чем дело?, может кто уже сталкиволся с такой ошибкой...?
SELECT
a~anln1
a~adatu
a~ord42
n~txt50
a~gsber
a~kostl
a~pernr
a~stort
a~werks
c~ktext
h~ordtx AS ordtx_2
t~ktext AS stort_ktext
g~gtext
p~ename AS pernr_txt

INTO CORRESPONDING FIELDS OF TABLE it_last_asset_info
FROM zanla AS a

*--------------------------
LEFT OUTER JOIN ANLA as n
ON
n~bukrs = P_BUKRS
AND n~anln1 = a~anln1
*--------------------------
LEFT OUTER JOIN TGSBT AS g
ON
g~SPRAS = 'R'
AND g~GSBER = a~GSBER

LEFT OUTER JOIN CSKT AS c
ON
c~spras = 'R'
AND c~kokrs = '1'
AND c~kostl = a~kostl
...

FOR ALL ENTRIES IN it_asset_info

WHERE
a~anln1 = it_asset_info-anln1_2.

SORT it_last_asset_info
BY
anln1 ASCENDING
adatu DESCENDING.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Вылетает Дамп " TSV_TNEW_BLOCKS_NO_ROLL_MEMORY"
СообщениеДобавлено: Вт, фев 24 2009, 08:41 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, мар 29 2007, 11:51
Сообщения: 330
Откуда: Yugorsk.RU
Пол: Мужской
Памяти ему не хватает, чтобы прожевать гигантского размера внутренние таблицы вашего отчёта. Там лимитируется суммарный размер памяти, отводимой сервером приложений каждому из пользовательских процессов (или как их там правильно).
Оптимизируйте программный код отчёта, лепите везде где можно FREE <внутренняя таблица> вместо REFRESH и CLEAR, иначе оно память физически не чистит. НУ ещё от суммарной активности на ноде зависит - если толпа народу ломанётся на одну ноду, то будет падать. Балансируйте нагрузку (базисников пинайте)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вылетает Дамп " TSV_TNEW_BLOCKS_NO_ROLL_MEMORY"
СообщениеДобавлено: Вт, фев 24 2009, 08:50 
Специалист
Специалист

Зарегистрирован:
Пн, дек 29 2008, 07:19
Сообщения: 129
Пол: Мужской
понятно, но дело ведь в том что именно по одной БС падает в дамп, а там данных и не так уж много, для пимера если отчет формируем по другой БС где данных в два - три раза больше...то он формируется нормально без дампа...порадокс..! :)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Вылетает Дамп " TSV_TNEW_BLOCKS_NO_ROLL_MEMORY"
СообщениеДобавлено: Вт, фев 24 2009, 08:56 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, мар 29 2007, 11:51
Сообщения: 330
Откуда: Yugorsk.RU
Пол: Мужской
у Вас там for all entries in в запросе присутствует. А Вы учли вариант когда таблица по которой for all entries in - пуста? А то в этом случае оно потянет всё содержимое таблиц, без учёта where М.б. какраз в этом причина?
Посмотрите в дампе размеры таблиц, в момент его выпадания. Наверняка там записей под миллион будет - обычно при таких объёмах гдето и падает


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вылетает Дамп " TSV_TNEW_BLOCKS_NO_ROLL_MEMORY"
СообщениеДобавлено: Вт, фев 24 2009, 09:06 
Специалист
Специалист

Зарегистрирован:
Пн, дек 29 2008, 07:19
Сообщения: 129
Пол: Мужской
да, все так и есть..! лучше может сделать после выборки проверку sy-subrc..?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Вылетает Дамп " TSV_TNEW_BLOCKS_NO_ROLL_MEMORY"
СообщениеДобавлено: Вт, фев 24 2009, 11:08 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, мар 29 2007, 11:51
Сообщения: 330
Откуда: Yugorsk.RU
Пол: Мужской
нужно просто запомнить этот момент с for all entries (плакат чтоли на стену повесить) :D
и всегда писать чтото вроде:

if внутренняятаблица[] is not initial.
select блаблабла from блаблабла
for all entries in внутренняятаблица[]
where блаблабла.
endif.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вылетает Дамп " TSV_TNEW_BLOCKS_NO_ROLL_MEMORY"
СообщениеДобавлено: Вт, фев 24 2009, 11:48 
Специалист
Специалист

Зарегистрирован:
Пн, дек 29 2008, 07:19
Сообщения: 129
Пол: Мужской
нужно перед селектом проверять табличку...таблица для for all entries не должна быть пустая!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Вылетает Дамп " TSV_TNEW_BLOCKS_NO_ROLL_MEMORY"
СообщениеДобавлено: Вт, фев 24 2009, 11:50 
Специалист
Специалист

Зарегистрирован:
Пн, дек 29 2008, 07:19
Сообщения: 129
Пол: Мужской
:D Спасибо большое...не увидел ваше сообщение и сам то же самое написал...! все работает...спасибо..!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB