powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Thread 1 cannot allocate new log. Checkpoint not complete
9 сообщений из 9, страница 1 из 1
Thread 1 cannot allocate new log. Checkpoint not complete
    #40091572
Добрый день.
Данной проблеме посвящено много материалов в сети, но победить не могу.

База замирает и ждет чекпоинта, когда переключается с последнего редолога.

Виртуальный сервер Windows 2003 R2 x64
Oracle 11.2.0.4

Развернута база методом холодного копирования с основного сервера.
База в archivelog
База стартует без ошибок. В базе сейчас никто не работает.

Делаю 5 раз
Код: plsql
1.
alter system switch logfile;


или запускаю процесс генерящий много редо.
В результате база замирает

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
SELECT group#, bytes, archived, status FROM V$LOG;

    GROUP#      BYTES ARCHIVED STATUS
---------- ---------- -------- ----------------
         1  262144000 NO       CURRENT
         2  262144000 YES      ACTIVE
         3  262144000 YES      ACTIVE
         4  262144000 YES      ACTIVE
         5  262144000 YES      ACTIVE
         6  262144000 YES      ACTIVE


В алертлоге только

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
Wed Aug 18 16:22:10 2021
Thread 1 advanced to log sequence 82773 (LGWR switch)
  Current log# 3 seq# 82773 mem# 0: D:\DATABASE\DBASE\REDO03.LOG
Wed Aug 18 16:22:11 2021
Archived Log entry 97903 added for thread 1 sequence 82772 ID 0xbb59f982 dest 1:
Thread 1 advanced to log sequence 82774 (LGWR switch)
  Current log# 4 seq# 82774 mem# 0: D:\DATABASE\DBASE\REDO04.LOG
Wed Aug 18 16:22:12 2021
Archived Log entry 97904 added for thread 1 sequence 82773 ID 0xbb59f982 dest 1:
Thread 1 advanced to log sequence 82775 (LGWR switch)
  Current log# 5 seq# 82775 mem# 0: D:\DATABASE\DBASE\REDO05.LOG
Wed Aug 18 16:22:18 2021
Archived Log entry 97905 added for thread 1 sequence 82774 ID 0xbb59f982 dest 1:
Thread 1 advanced to log sequence 82776 (LGWR switch)
  Current log# 6 seq# 82776 mem# 0: D:\DATABASE\DBASE\REDO06.LOG
Archived Log entry 97906 added for thread 1 sequence 82775 ID 0xbb59f982 dest 1:
Thread 1 advanced to log sequence 82777 (LGWR switch)
  Current log# 1 seq# 82777 mem# 0: D:\DATABASE\DBASE\REDO01.LOG
Archived Log entry 97907 added for thread 1 sequence 82776 ID 0xbb59f982 dest 1:
Thread 1 cannot allocate new log, sequence 82778
Checkpoint not complete
  Current log# 1 seq# 82777 mem# 0: D:\DATABASE\DBASE\REDO01.LOG




На диске создаются архивлоги размером 1024 байта

Сессия выполнявшая alter system switch logfile; ждет LGWR

Если выполнить
Код: plsql
1.
ALTER system checkpoint;


, то создается еще один крошечный архивлог и происходит переключение редо

В алерт добавляется
Код: plsql
1.
2.
3.
Thread 1 advanced to log sequence 82778 (LGWR switch)
  Current log# 2 seq# 82778 mem# 0: D:\DATABASE\DBASE\REDO02.LOG
Archived Log entry 97908 added for thread 1 sequence 82777 ID 0xbb59f982 dest 1:



Параметры все аналогичны основной базе
Код: plsql
1.
2.
3.
4.
5.
6.
7.
select name, value from v$parameter where name like 'log_checkpoint%'; 

NAME                                                                             VALUE
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
log_checkpoint_interval                                                          0
log_checkpoint_timeout                                                           1800
log_checkpoints_to_alert                                                         FALSE



Отличается только log_buffer 2 830 336, на основном сервере он 19 095 552
Но как я понимаю этот параметр выставляется ораклом в зависимости от числа процессоров

Подскажите пожалуйста в какую сторону смотреть, что бы база работала нормально и не замирала при переключении редо?
Заранее спасибо!
...
Рейтинг: 0 / 0
Thread 1 cannot allocate new log. Checkpoint not complete
    #40091575
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что ты хочешь услышать?
Если не можешь обеспечить хорошую скорость дисковой подсистемы (причем не только архивлогов, но и всех датафайлов) -- увеличивай количество редо-групп
Это, конечно, скорость работы не увеличит, но позволит растянуть контрольную точку во времени
...
Рейтинг: 0 / 0
Thread 1 cannot allocate new log. Checkpoint not complete
    #40091579
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Виртуальный сервер Windows 2003 R2 x64

производительность виртуального диска?
ресурсов хватает для VM? Банально может быть перегружена система управления VM

Погоняй I/O тесты, или, создай например tablespace dropme размером 10Г
( или сколько хватит диска, но больше буфера дисковой системы)
Код: plsql
1.
2.
3.
4.
5.
6.
7.
sqlplus / as sysdba
SQL> set timing on
SQL> create tablespace dropme  datafile size 10G;

Tablespace created.

Elapsed: 00:01:14.88
...
Рейтинг: 0 / 0
Thread 1 cannot allocate new log. Checkpoint not complete
    #40091580
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так, на всякий случай спрошу: а не втыкаетесь ли в дисковую квоту по redo?
В моей практике база "замирала" только когда ОС не позволяла писать редо (кончалось место на носителе).
...
Рейтинг: 0 / 0
Thread 1 cannot allocate new log. Checkpoint not complete
    #40091586
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тут редо не очень важен -- тут затык в датафайлах
...
Рейтинг: 0 / 0
Thread 1 cannot allocate new log. Checkpoint not complete
    #40091588
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вячеслав Любомудров
Тут редо не очень важен -- тут затык в датафайлах

Вячеслав, мне для общего развития - откуда это видно?
...
Рейтинг: 0 / 0
Thread 1 cannot allocate new log. Checkpoint not complete
    #40091608
flexgen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Илья Елисеев,

авторSELECT group#, bytes, archived, status FROM V$LOG;

GROUP# BYTES ARCHIVED STATUS
---------- ---------- -------- ----------------
1 262144000 NO CURRENT
2 262144000 YES ACTIVE
3 262144000 YES ACTIVE
4 262144000 YES ACTIVE
5 262144000 YES ACTIVE
6 262144000 YES ACTIVE


Обрати внимание, все redolog groups в состоянии active. Размер каждой группы - 250 МБ.
Тут либо размер групп недостаточен либо количество групп недостаточно.

Я бы сделал каждую группу размером побольше, хотя бы размером в 1 ГБ, и создал бы 10 групп. Маленькие группы после этого удалил бы. И посмотрел бы что будет.
...
Рейтинг: 0 / 0
Thread 1 cannot allocate new log. Checkpoint not complete
    #40091670
Всем спасибо за советы.

Скорость дисковой системы не большая, но вполне достаточная для тестовой базы данных.
Место на дисках есть.
Разрешение на чтение/запись для пользователя службы OracleServiceDBASE есть на все диски полностью.

Код: plsql
1.
2.
3.
4.
5.
6.
7.
SQL> set timing on
SQL> create tablespace dropme  datafile 'D:\DATABASE\DBASE\dropme.ORA' size 10G;

Tablespace created


Executed in 71,944 seconds



Когда я делаю
Код: plsql
1.
alter system switch logfile;


то никаких данных в редо же нет и сбрасывать на диск нечего.
Архивлоги 1024 байта, то есть пустые.

Почему же оракл не освобождает редо?
Чекпоин не происходит даже по таймауту.

Я вчера вечером 2 раза сделал switch logfile и до сих пор
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
SQL> SELECT group#, bytes, archived, status,first_time FROM V$LOG;

    GROUP#      BYTES ARC STATUS           FIRST_TIME
---------- ---------- --- ---------------- -------------------
         1  262144000 YES INACTIVE         18.08.2021 17:30:00
         2  262144000 YES INACTIVE         18.08.2021 17:30:04
         3  262144000 YES INACTIVE         18.08.2021 17:30:05
         4  262144000 YES ACTIVE           18.08.2021 17:30:08
         5  262144000 YES ACTIVE           18.08.2021 17:30:16
         6  262144000 NO  CURRENT          18.08.2021 17:30:17


Последние 10 архивлогов имеют следующие размеры

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
 SEQUENCE# FIRST_TIME              BLOCKS ARC
---------- ------------------- ---------- ---
     82883 18.08.2021 17:30:16          1 YES
     82882 18.08.2021 17:30:08         10 YES
     82881 18.08.2021 17:30:05          4 YES
     82879 18.08.2021 17:30:00         23 YES
     82880 18.08.2021 17:30:04          5 YES
     82878 18.08.2021 17:29:59         16 YES
     82877 18.08.2021 17:29:59          5 YES
     82876 18.08.2021 17:28:38        782 YES
     82875 18.08.2021 17:28:29         10 YES
     82874 18.08.2021 17:28:19     370606 YES



То есть сбрасывать то особо нечего. Если я сейчас выполню 3 раза switch logfile база встанет.

В трейсах CKPT и LGWR нет абсолютно ничего необычного (если интересно, то скину).

Что еще можно посмотреть?
...
Рейтинг: 0 / 0
Thread 1 cannot allocate new log. Checkpoint not complete
    #40091935
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_anonymous
Вячеслав Любомудров
Тут редо не очень важен -- тут затык в датафайлах

Вячеслав, мне для общего развития - откуда это видно?
Все группы в статусе ACTIVE -- значит все они содержат данные, которые защищают несброшеные в датафайлы и/или не обновлены заголовки всех файлов (это уже к CKPT), и это опять же запись в датафайлы
Конечно, в последних версиях (чуть ли не с 11.2) старается оттянуть до последнего момента перевод из ACTIVE в INACTIVE, но как правило один INACTIVE старается поддерживать
Это еще может говорить именно о проблемах с обновлением заголовков (грязных данных, как я понимаю нет), но и тут либо недостаточная скорость дисковой, ну или очень большое количество датафайлов, за тысячи
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Thread 1 cannot allocate new log. Checkpoint not complete
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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