powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Can't allocate space for object 'temp worktable' in database 'tempdb'
7 сообщений из 7, страница 1 из 1
Can't allocate space for object 'temp worktable' in database 'tempdb'
    #38470368
Oleksa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
Adaptive Server Enterprise/15.0.2/EBF 14336/P/x86_64/Enterprise Linux/ase1502/2486/64-bit/FBO/Thu May 24 08:06:35 2007



После перезагрузки Sybase процедура загружающая данные из одной базы в другую выполняется с четвёртой попытки. Первые три заканчиваются ошибкой:

Код: sql
1.
2.
3.
4.
5.
6.
7.
Msg 1105, Level 17, State 2:
Server 'SERVER1', Procedure 'insert_subscribtion40', Line 130:
Can't allocate space for object 'temp worktable' in database 'tempdb' because
'system' segment is full/has no free extents. If you ran out of space in
syslogs, dump the transaction log. Otherwise, use ALTER DATABASE to increase the
size of the segment.
(return status = -7)



Проблема в том, что Sybase перезагружается автоматически раз в неделю. Даже не знаю зачем так сделано. Но уверен что убедить убрать это будет сложно.

Процедура запускается каждый день по рассписанию и выполняется 40 минут. Проблема наблюдается только в день перезагрузки Sybase.

Что нужно сделать чтоб процедура выполнялась с первой попытки?
...
Рейтинг: 0 / 0
Can't allocate space for object 'temp worktable' in database 'tempdb'
    #38470885
Nashville
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oleksa
Код: sql
1.
Adaptive Server Enterprise/15.0.2/EBF 14336/P/x86_64/Enterprise Linux/ase1502/2486/64-bit/FBO/Thu May 24 08:06:35 2007



После перезагрузки Sybase процедура загружающая данные из одной базы в другую выполняется с четвёртой попытки. Первые три заканчиваются ошибкой:

Код: sql
1.
2.
3.
4.
5.
6.
7.
Msg 1105, Level 17, State 2:
Server 'SERVER1', Procedure 'insert_subscribtion40', Line 130:
Can't allocate space for object 'temp worktable' in database 'tempdb' because
'system' segment is full/has no free extents. If you ran out of space in
syslogs, dump the transaction log. Otherwise, use ALTER DATABASE to increase the
size of the segment.
(return status = -7)



Проблема в том, что Sybase перезагружается автоматически раз в неделю. Даже не знаю зачем так сделано. Но уверен что убедить убрать это будет сложно.

Процедура запускается каждый день по рассписанию и выполняется 40 минут. Проблема наблюдается только в день перезагрузки Sybase.

Что нужно сделать чтоб процедура выполнялась с первой попытки?


ну так сделайте то, что Вам пишут, увеличьте размер system сегмента.
...
Рейтинг: 0 / 0
Can't allocate space for object 'temp worktable' in database 'tempdb'
    #38471410
Oleksa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nashville,

Места более чем достаточно:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
1> sp_helpsegment system
2> go
 segment name   status 
 ------- ------ ------ 
       0 system      0 
 device   size     free_pages 
 -------- -------- ---------- 
 master   4.0MB          1172 
 tempdb01 1500.0MB     765000 
 tempdb02 2000.0MB    1020000 
 tempdb04 2000.0MB    1020000 
 tempdb05 2000.0MB    1020000 
 tempdb06 2048.0MB    1044480 
 tempdb07 2048.0MB    1044480 
 tempdb08 2048.0MB    1044473 
...
 total_size        total_pages     free_pages      used_pages      reserved_pages  
 ----------------- --------------- --------------- --------------- --------------- 
 13648.0MB         6987776         6959620         28156           0               



Процедура не использует даже 10%.
Когда она начинает благополучно выполнятся (червётрый раз и далее) места столько же сколько было при неудачных попытках.
...
Рейтинг: 0 / 0
Can't allocate space for object 'temp worktable' in database 'tempdb'
    #38472021
blzz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
проверьте errorlog во время старта сервера на предмет ошибок при инициализации девайсов.
tempdb - особая база, может быть online даже когда составляющие её девайсы tempdb01... не были активированы при старте сервера.
...
Рейтинг: 0 / 0
Can't allocate space for object 'temp worktable' in database 'tempdb'
    #38472037
blzz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ан, нет оказывается не взлетит если девайсов просто нет.
Could not open TEMPDB, unable to continue.
...
Рейтинг: 0 / 0
Can't allocate space for object 'temp worktable' in database 'tempdb'
    #38472067
Nashville
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blzz,

Ну попробую дальше в угадайку играть, перейдем к процедуре, попробуйте перед ее выполнением выполнить DUMP TRUN database WITH no_log
...
Рейтинг: 0 / 0
Can't allocate space for object 'temp worktable' in database 'tempdb'
    #38473464
Oleksa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подозреваю баг 737697

http://search.sybase.com/kbx/changerequests?bug_id=737697

When running UPDATE INDEX STATISTICS with SAMPLING command, numerous errors may be reported in the errorlog - 1105 errors: "Can't allocate space for object 'temp worktable' in database 'tempdb' because 'system' segment is full/has no free extents. If you ran out of space in syslogs, dump the transaction log. Otherwise, use ALTER DATABASE to increase the size of the segment" and 1764 errors: "Failed to insert row into worktable, when projecting base table on to work table for collecting statistics".

http://download.sybase.com/swr/17110/EBF21517_Buglist.txt
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Can't allocate space for object 'temp worktable' in database 'tempdb'
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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