powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ASE 12.5.1 ругается на UPDATE ALL STATISTICS dbo.большая_table
7 сообщений из 7, страница 1 из 1
ASE 12.5.1 ругается на UPDATE ALL STATISTICS dbo.большая_table
    #34625706
Фотография Badger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день.
Не получается решить проблему переполнения tempdb, которая возникает при выполнение UPDATE ALL STATISTICS dbo.большая_table

ругается так:
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 or
sp_extendsegment to increase size of the segment.


Размер базы tempdb:
master 3 data and log
tempdb 2000 data and log
templg 6000 log only
-------------------
итого: 8Gb куда больше?

Что посоветуете?

Код: plaintext
sp_extendsegment 'system', 'tempdb', 'tempdb'
И насколько расширяется сегмент при выполнении этой процедуры?
я правильно задал ее параметры?

DBCC execution completed. If DBCC printed error messages, contact a user with System Administrator (SA) role.
Segment extended.

лучше пока не стало...
...
Рейтинг: 0 / 0
ASE 12.5.1 ругается на UPDATE ALL STATISTICS dbo.большая_table
    #34625764
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BadgerДобрый день.
Не получается решить проблему переполнения tempdb, которая возникает при выполнение UPDATE ALL STATISTICS dbo.большая_table

ругается так:
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 or
sp_extendsegment to increase size of the segment.


Размер базы tempdb:
master 3 data and log
tempdb 2000 data and log
templg 6000 log only
-------------------
итого: 8Gb куда больше?

Что посоветуете?

Код: plaintext
sp_extendsegment 'system', 'tempdb', 'tempdb'
И насколько расширяется сегмент при выполнении этой процедуры?
я правильно задал ее параметры?

DBCC execution completed. If DBCC printed error messages, contact a user with System Administrator (SA) role.
Segment extended.

лучше пока не стало...

у вас сегмент system может занимать <=2003 Мб.
поэтому о 8 Гб речи не идет
сделайте все 8 Гб mixed (log+data)

+ покажите :
Код: plaintext
1.
2.
sp_helpsegment 'default'
sp_helpsegment system
sp_helpsegment logsegment
...
Рейтинг: 0 / 0
ASE 12.5.1 ругается на UPDATE ALL STATISTICS dbo.большая_table
    #34626108
Фотография Badger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sp_helpsegment 'default'
segment name status
1 default 1

device size free_pages
master 3.0MB 924
tempdb_dt 2000.0MB 1019985

table_name index_name indid
syscomments syscomments 1
sysreferences csysreferences 1
sysreferences ncsysreferences 2
sysreferences nc2sysreferences 3
sysusermessages csysusermessages 1
sysusermessages ncsysusermessages 2

total_size total_pages free_pages used_pages reserved_pages
2003.0MB 1025536 1020924 4612 0


sp_helpsegment system
A B C D E
segment name status
0 system 0

device size free_pages
master 3.0MB 924
tempdb_dt 2000.0MB 1019985

table_name index_name indid
sysalternates sysalternates 1
sysattributes csysattributes 1
sysattributes ncsysattributes 2
sysattributes tsysattributes 255
syscolumns syscolumns 1
sysconstraints csysconstraints 1
sysconstraints ncsysconstraints 2
sysdepends sysdepends 1
sysgams sysgams 0
sysindexes sysindexes 1
sysjars sysjars 0
sysjars csysjars 2
sysjars ncsysjars 3
sysjars tsysjars 255
syskeys syskeys 1
sysobjects sysobjects 1
sysobjects ncsysobjects 2
syspartitions csyspartitions 1
sysprocedures sysprocedures 1
sysprotects sysprotects 1
sysqueryplans sysqueryplans 0
sysqueryplans csysqueryplans 2
sysqueryplans ncsysqueryplans 3
sysroles csysroles 1
syssegments syssegments 0
sysstatistics sysstatistics 0
sysstatistics csysstatistics 2
systabstats systabstats 0
systabstats csystabstats 2
systhresholds csysthresholds 1
systypes systypes 1
systypes ncsystypes 2
sysusers sysusers 1
sysusers ncsysusers1 2
sysusers ncsysusers2 3
sysxtypes sysxtypes 0
sysxtypes csysxtypes 2
sysxtypes ncsysxtypes 3
sysxtypes tsysxtypes 255

total_size total_pages free_pages used_pages reserved_pages
2003.0MB 1025536 1020924 4612 0

sp_helpsegment logsegment
A B C D E
segment name status
2 logsegment 0

device size
master 3.0MB
tempdb_lg 6000.0MB

free_pages
3060924

table_name index_name indid
syslogs syslogs 0

total_size total_pages free_pages used_pages reserved_pages
6003.0MB 3073536 3060924 12007 0
...
Рейтинг: 0 / 0
ASE 12.5.1 ругается на UPDATE ALL STATISTICS dbo.большая_table
    #34626153
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Badger sp_helpsegment 'default'
segment name status
1 default 1

device size free_pages
master 3.0MB 924
tempdb_dt 2000.0MB 1019985

0 system 0

device size free_pages
master 3.0MB 924
tempdb_dt 2000.0MB 1019985

2 logsegment 0

device size
master 3.0MB
tempdb_lg 6000.0MB



ну вот, system лежит только на master&tempdb_dt
судя по сообщению при проверке, суммарного объема в 2003 Мб не хватает в сегменте system

можно расширить system и на tempdb_lg, если у вас не генерится при работе 6Гб логов ;)

Код: plaintext
sp_extendsegment 'system','tempdb','tempdb_lg'
...
Рейтинг: 0 / 0
ASE 12.5.1 ругается на UPDATE ALL STATISTICS dbo.большая_table
    #34626199
Фотография Badger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
могу добавить, что скорее всего и 2Gb для UPDATE ALL STATISTICS хватит....
проблема возникает при ночной работе bat файла, где перечислено много (все) таблички базы...
примерно так...

fail.bat
isql -Usa -P****** -Svil -idump_database.sql

dump_database.sql
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
declare  @path varchar( 30 )

select @path = 'd:\dump\vil_' + Rtrim (convert(char( 10 ),GetDate (), 12 ))+ '.dmp'

dump database vil to @path
go

USE vil
go

UPDATE ALL STATISTICS dbo.table_1
go
UPDATE ALL STATISTICS dbo.table_2
go
UPDATE ALL STATISTICS dbo.table_3
go
UPDATE ALL STATISTICS dbo.table_4
go
.....
UPDATE ALL STATISTICS dbo.table_391
go
UPDATE ALL STATISTICS dbo.table_392
go
UPDATE ALL STATISTICS dbo.table_393

где-то в середине ломается.....
...
Рейтинг: 0 / 0
ASE 12.5.1 ругается на UPDATE ALL STATISTICS dbo.большая_table
    #34626261
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Badger

UPDATE ALL STATISTICS dbo.table_1
go
UPDATE ALL STATISTICS dbo.table_2
go
UPDATE ALL STATISTICS dbo.table_3
go
UPDATE ALL STATISTICS dbo.table_4
go
.....
UPDATE ALL STATISTICS dbo.table_391
go
UPDATE ALL STATISTICS dbo.table_392
go
UPDATE ALL STATISTICS dbo.table_393[/src]
где-то в середине ломается.....

можно попробовать найти самую большую таблицу и для нее прогнать update statistics
найти можно например так:
Код: plaintext
select 'exec sp_spaceused ''' +name +  '''' from sysobjects where type='U'
выполнить результат
обработать полученное в экселе (сортировка)
...
Рейтинг: 0 / 0
ASE 12.5.1 ругается на UPDATE ALL STATISTICS dbo.большая_table
    #34626430
Фотография Badger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
komrad
Код: plaintext
select 'exec sp_spaceused ''' +name +  '''' from sysobjects where type='U'
выполнить результат
обработать полученное в экселе (сортировка)

сделал, проверил UPDATE ALL STATISTICS dbo.table_??? для самой большой таблички (2Gb), отработало без ошибок....

нашел табличку, на которой ломается статистика:

Код: plaintext
1.
2.
3.
4.
select * 
  from sysobjects
 where id in (select id 
                from sysstatistics
               where  moddate = (select Max(moddate) from sysstatistics))

оказалась совсем маленькая 2Kb и следующая и предыдущая тоже 2Kb

такое впечатление, что лог tempdb не очищается после каждой UPDATE ALL STATISTICS,
а накапливается пока не закончится SQL пакет. Разве так может быть?
И что теперь, отдельно для каждой таблички файл создавать? Не верю, где-то что-то не так....
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ASE 12.5.1 ругается на UPDATE ALL STATISTICS dbo.большая_table
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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