Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Detected change in CPU count to  [new]
Андрей Панфилов
Member

Откуда: Москва > Melbourne
Сообщений: 3778
Каким образом база определяет количество процессоров? А то прямо мистика какая-то:

в логах операционки все чисто
в ивентах IMM все чисто
а вот ASM сказал что хочет умереть:

Mon Nov 26 15:04:12 2012
Detected change in CPU count to 152
* Load Monitor used for high load check
* New Low - High Load Threshold Range = [0 - 0]
Errors in file /u01/app/grid/diag/asm/+asm/+ASM/trace/+ASM_ckpt_13420.trc:
ORA-02097: parameter cannot be modified because specified value is invalid
ORA-00068: invalid value 6080 for parameter parallel_max_servers, must be between 0 and 3600
CKPT (ospid: 13420): terminating the instance due to error 2097


а потом запустился и опять решил умереть:

Mon Nov 26 15:45:32 2012
Detected change in CPU count to 160
* Load Monitor used for high load check
* New Low - High Load Threshold Range = [0 - 0]
Errors in file /u01/app/grid/diag/asm/+asm/+ASM/trace/+ASM_ckpt_2921.trc:
ORA-02097: parameter cannot be modified because specified value is invalid
ORA-00068: invalid value 6400 for parameter parallel_max_servers, must be between 0 and 3600
CKPT (ospid: 2921): terminating the instance due to error 2097
26 ноя 12, 16:29    [13530934]     Ответить | Цитировать Сообщить модератору
 Re: Detected change in CPU count to  [new]
ora.krot
Member

Откуда:
Сообщений: 50
Андрей Панфилов,
Если мы говорим про AIX:
$ sqlplus / as SYSDBA

SQL*Plus: Release 11.2.0.3.0 Production on Mon Nov 26 18:31:48 2012

Copyright (c) 1982, 2011, Oracle. All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> show parameter cpu_count

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
cpu_count integer 250

$ prtconf | grep "Number Of Processors"
Number Of Processors: 250
А вообще ошибка связана с неправильным значением параметра:
$ oerr ora 00068
00068, 00000, "invalid value %s for parameter %s, must be between %s and %s"
// *Cause: The value for the initialization parameter is invalid.
// *Action: Choose a value as indicated by the message.
26 ноя 12, 18:37    [13531923]     Ответить | Цитировать Сообщить модератору
 Re: Detected change in CPU count to  [new]
Андрей Панфилов
Member

Откуда: Москва > Melbourne
Сообщений: 3778
ora.krot,

ну вы же не думаете, что оракл прямо так берет и запускает prtconf, lsattr или еще что-то в этом духе?
26 ноя 12, 18:56    [13532010]     Ответить | Цитировать Сообщить модератору
 Re: Detected change in CPU count to  [new]
ora.krot
Member

Откуда:
Сообщений: 50
ID 205089.1
Oracle and Hyperthreading
-----------------------------

Oracle will work just fine on any O/S that is running and recognizes a
hyper-threading enabled system. In addition, it will take advantage of
the logical CPUs to their fullest extent (assuming the O/S reports that
it recognizes that hyper-threading is enabled). It is also a supported
configuration...any issues should be logged as bugs. All Oracle versions
can take advantage of hyper-threading, since no support code has been
added for it, all the changes were in the O/S, the bios and the hardware.
When Oracle asks the O/S how many CPUs are in the system, the O/S
just reports the total number of logical CPUs and Oracle doesn't know the
difference.
26 ноя 12, 19:22    [13532121]     Ответить | Цитировать Сообщить модератору
 Re: Detected change in CPU count to  [new]
tim_scn
Member

Откуда: Ukraine
Сообщений: 384
Андрей Панфилов
Каким образом база определяет количество процессоров? А то прямо мистика какая-то:

в логах операционки все чисто
в ивентах IMM все чисто
а вот ASM сказал что хочет умереть:

Mon Nov 26 15:04:12 2012
Detected change in CPU count to 152
* Load Monitor used for high load check
* New Low - High Load Threshold Range = [0 - 0]
Errors in file /u01/app/grid/diag/asm/+asm/+ASM/trace/+ASM_ckpt_13420.trc:
ORA-02097: parameter cannot be modified because specified value is invalid
ORA-00068: invalid value 6080 for parameter parallel_max_servers, must be between 0 and 3600
CKPT (ospid: 13420): terminating the instance due to error 2097


а потом запустился и опять решил умереть:

Mon Nov 26 15:45:32 2012
Detected change in CPU count to 160
* Load Monitor used for high load check
* New Low - High Load Threshold Range = [0 - 0]
Errors in file /u01/app/grid/diag/asm/+asm/+ASM/trace/+ASM_ckpt_2921.trc:
ORA-02097: parameter cannot be modified because specified value is invalid
ORA-00068: invalid value 6400 for parameter parallel_max_servers, must be between 0 and 3600
CKPT (ospid: 2921): terminating the instance due to error 2097




If a system has a high CPU count and there is no value set for
parallel_max_servers then the system may try to set the default
value of the parallel_max_servers parameter higher than is allowed.
eg:
 ORA-02097: parameter cannot be modified because specified value is invalid
 ORA-00068: invalid value 6360 for parameter parallel_max_servers, must be between 0 and 3600
 
This can cause an instance shutdown if the number of system CPUs alters
dynamically.
eg:
 The alert log may show a dynamically detected change of CPU count:
  Detected change in CPU count to 159
  * Load Monitor used for high load check
  * New Low - High Load Threshold Range = [152640 - 203520]
  Errors in file /.../trace/+ASM2_ckpt_22135.trc:
  ORA-02097: parameter cannot be modified because specified value is invalid
  ORA-00068: invalid value 6360 for parameter parallel_max_servers, must be between 0 and 3600
  CKPT (ospid: 22135): terminating the instance due to error 2097
 
Workaround
 Manually set parallel_max_servers to a value lower than 3600
 


по идее ваш случай...
26 ноя 12, 21:45    [13532778]     Ответить | Цитировать Сообщить модератору
 Re: Detected change in CPU count to  [new]
Андрей Панфилов
Member

Откуда: Москва > Melbourne
Сообщений: 3778
tim_scn,

мне-то интересно каким образом оракл считает количество процессоров, сискол какой-нить или еще что. Сам баг какой-то кривой: валится ASM, а он про parallel_max_servers знать ничего не знает - параметра такого нет для этого типа экземпляра.
27 ноя 12, 05:04    [13533661]     Ответить | Цитировать Сообщить модератору
 Re: Detected change in CPU count to  [new]
ora.krot
Member

Откуда:
Сообщений: 50
Андрей Панфилов,

PARALLEL_MAX_SERVERS

The default value for PARALLEL_MAX_SERVERS is as follows:

(CPU_COUNT x PARALLEL_THREADS_PER_CPU x (2 if PGA_AGGREGATE_TARGET > 0; otherwise 1) x 5)

The value of PGA_AGGREGATE_TARGET can be derived when MEMORY_TARGET is set. See Oracle Database Performance Tuning Guide for descriptions of how to use PGA_AGGREGATE_TARGET in different scenarios. The above formula might not be sufficient for parallel queries on tables with higher degree of parallelism (DOP) attributes. We recommend users who expects to run queries of higher DOP to set PARALLEL_MAX_SERVERS as follows:

2 x DOP x NUMBER_OF_CONCURRENT_USERS

For example, setting PARALLEL_MAX_SERVERS to 64 enables you to run four parallel queries simultaneously, if each query is using two slave sets with a DOP of eight for each set.
27 ноя 12, 11:31    [13534807]     Ответить | Цитировать Сообщить модератору
 Re: Detected change in CPU count to  [new]
ora.krot
Member

Откуда:
Сообщений: 50
Судя по всему, у вас

PARALLEL_THREADS_PER_CPU=4 и PGA_AGGREGATE_TARGET > 0
Если в ASM есть возможность установить PGA_AGGREGATE_TARGET =0 или
PARALLEL_THREADS_PER_CPU = 2, то можно обойти проблему.
27 ноя 12, 12:03    [13535093]     Ответить | Цитировать Сообщить модератору
 Re: Detected change in CPU count to  [new]
Андрей Панфилов
Member

Откуда: Москва > Melbourne
Сообщений: 3778
ora.krot
Судя по всему, у вас

PARALLEL_THREADS_PER_CPU=4 и PGA_AGGREGATE_TARGET > 0
PGA_AGGREGATE_TARGET - 0, PARALLEL_THREADS_PER_CPU не параметр ASM.

меня природа ораклового бага сама по себе волнует довольно мало (кому только может прийти в голову тестировать DR на писюках), куда интереснее узнать как именно оракл получает количество процов (я-то не будь дураком когода оно падало туда-сюда через /proc/cpuinfo посмотрел - 160 как в аптеке)
27 ноя 12, 13:49    [13536009]     Ответить | Цитировать Сообщить модератору
 Re: Detected change in CPU count to  [new]
tim_scn
Member

Откуда: Ukraine
Сообщений: 384
Андрей Панфилов,

?
27 ноя 12, 19:52    [13539158]     Ответить | Цитировать Сообщить модератору
 Re: Detected change in CPU count to  [new]
Андрей Панфилов
Member

Откуда: Москва > Melbourne
Сообщений: 3778
вообщем по самому падению: похоже что подсирал интеловский Turbo Boost. Продолжаю наблюдения.
29 ноя 12, 22:13    [13552801]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить