Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Сессия висит / 25 сообщений из 25, страница 1 из 1
12.09.2016, 17:26:15
    #39307851
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
Сессия в статусе active.

Запрос виден, элементарный.

PL/SQL Developer показывает рост session logical reads.

Приложение (закрытое - СуперМАГ, кассовый модуль) висит.

Что еще можно средствами СУБД посмотреть?
...
Рейтинг: 0 / 0
12.09.2016, 17:33:09
    #39307854
Q.Tarantino
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
видимо план запроса далеко не оптимальный.
...
Рейтинг: 0 / 0
12.09.2016, 17:44:28
    #39307863
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
Висит - в смысле наглухо. Час, два - ничего. Активность диска на нуле.
...
Рейтинг: 0 / 0
12.09.2016, 17:59:59
    #39307883
mefman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
ждет чего?
sql monitor смотрел?
...
Рейтинг: 0 / 0
12.09.2016, 18:18:20
    #39307896
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
mefmansql monitor смотрел?

Не имею / пока не умею. Это серверная тулза или клиентская?
...
Рейтинг: 0 / 0
12.09.2016, 18:24:43
    #39307899
mefman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
dmdmdmНе имею / пока не умею.
в таком случае надо начинать с чего-нибудь типа этого
...
Рейтинг: 0 / 0
12.09.2016, 18:42:41
    #39307908
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
Спасибо, ткнули носом, но неконкретно.

Вспомнил - запускал один раз Toad SQL Monitor, который запускает клиентское приложение и показывает SQL, исходящий от него в базу. Он не смог работать с СуперМАГом - приложение зависало.
...
Рейтинг: 0 / 0
12.09.2016, 19:06:05
    #39307923
dbms_photoshop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
dmdmdm,

Информацию о том в какой части плана тратится время можно получить из ASH (v$active_session_history).
Когда говорилось про монитор - полагаю имелось в виду dbms_sqltune.report_sql_monitor - он тоже показывает что сейчас активно и куда уходит основная часть работы.
Копать дополнительную информацию про событие ожидания можно по p1, p2, p2... можно долго продолжать, но вряд ли имеет смысл, если ты не удосужился хотя бы с азами предварительно ознакомиться.

Судя по симптомам какой-то неадекватный nested loop, но может быть все что угодно вплоть до кривой UDF.
...
Рейтинг: 0 / 0
12.09.2016, 19:17:49
    #39307929
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
dbms_photoshop, верно ли понимаю, что вы считаете, что сервер занят чем-то продуктивным в данном случае?

диск и процессор на нуле

т.е. это не глюк приложения?
...
Рейтинг: 0 / 0
12.09.2016, 19:32:25
    #39307940
mefman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
dmdmdm,
может быть много чего. без данных это гадание на кофейной гуще
...
Рейтинг: 0 / 0
12.09.2016, 19:33:04
    #39307941
dbms_photoshop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
dmdmdm,

Сессия может быть в состоянии ACTIVE если она висит на блокировке, но ты указал что увеличивается значение статистики "session logical reads", значит выполняется работа.
Соответственно, если с диска чтений нет, то они идут из кеша. Ты ж глянул в доке, что такое "session logical reads", правда?

Вообще странно спрашивать, что я считаю вместо того, что посмотреть что происходит по факту.
...
Рейтинг: 0 / 0
12.09.2016, 19:55:04
    #39307961
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
Ты ж глянул в доке, что такое "session logical reads", правда?

Неправда. Только по логике сужу - "чтение данных". Откуда конкретно - память/диск - не знаю.

Вообще странно спрашивать, что я считаю вместо того, что посмотреть что происходит по факту.

Спасибо за советы. Продолжим обучаться и смотреть на факты.
...
Рейтинг: 0 / 0
12.09.2016, 20:21:03
    #39307978
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
dbms_photoshopv$active_session_history

Oracle10g introduces the v$active_session_history view

Вероятно, имеет значение, что оракл 9.2.0.8.0.
...
Рейтинг: 0 / 0
12.09.2016, 20:37:07
    #39307995
mefman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
dmdmdmdbms_photoshopv$active_session_history

Oracle10g introduces the v$active_session_history view

Вероятно, имеет значение, что оракл 9.2.0.8.0.
бяда
...
Рейтинг: 0 / 0
12.09.2016, 20:38:02
    #39307998
mefman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
mefmandmdmdmпропущено...


Oracle10g introduces the v$active_session_history view

Вероятно, имеет значение, что оракл 9.2.0.8.0.
бяда
ОСь небось windows 2003 )
...
Рейтинг: 0 / 0
12.09.2016, 20:57:15
    #39308017
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
mefmanОСь небось windows 2003 )

Она.
...
Рейтинг: 0 / 0
13.09.2016, 02:18:06
    #39308085
Вячеслав Любомудров
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
v$session_wait
...
Рейтинг: 0 / 0
13.09.2016, 02:32:13
    #39308087
dbms_photoshop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
Вячеслав Любомудров,

К сожалению, она не подскажет на каком участке плана затык, но при наличии смекалки практически все раскапывается и так.
Хотя, с другой стороны, между девяткой и десяткой просто пропасть в плане анализа что сейчас делает сессия.
...
Рейтинг: 0 / 0
13.09.2016, 09:35:32
    #39308142
mefman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
dbms_photoshopВячеслав Любомудров,

К сожалению, она не подскажет на каком участке плана затык, но при наличии смекалки практически все раскапывается и так.
Хотя, с другой стороны, между девяткой и десяткой просто пропасть в плане анализа что сейчас делает сессия.
dbua ТСу в помощь ))
...
Рейтинг: 0 / 0
13.09.2016, 14:42:37
    #39308449
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
Сервер за ночь отдохнул, сегодня по-новому кобенится :).

Делается insert, минут 10, потом снова, и снова, и снова.

Предположил, что приложение получает ошибку, ничо в журнал не пишет и тупо долбит то же самое.

Взял запрос, выполнил его.

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
INSERT INTO TTCARDCHANGES
  (ARTICLE, REMOVED, PRICE, DEPID, IDCLASS, IDSCALE, DATATYPE)
  SELECT ARTICLE,
         DECODE(PRICE, 0, '1', REMOVED),
         DECODE(REMOVED, '1', 0, PRICE),
         0,
         IDCLASS,
         DECODE(BITAND(FLAGS, 2), 0, IDSCALE, NULL),
         DATATYPE
    FROM (SELECT C.ARTICLE,
                 C.IDCLASS,
                 C.FLAGS,
                 C.IDSCALE,
                 C.DATATYPE,
                 DECODE(C.CASHLOAD,
                        '0',
                        '1',
                        DECODE(C.ACCEPTED, 1, '0', '1')) REMOVED,
                 NVL(P.PRICE, 0) PRICE
            FROM SMCARD C, SMPRICES P
           WHERE /*ROWNUM <= :b1 + 1
             AND */C.ACCEPTED IN (1, 2)
             --AND BITAND((POWER(2, C.DATATYPE)), :b2) != 0
             AND P.ARTICLE(+) = C.ARTICLE
             AND P.STORELOC(+) = 48
             AND P.PRICETYPE(+) = 36
             /*
             AND EXISTS
           (SELECT *
                    FROM SACARDCLASS A, TTCASHCLASS T
                   WHERE A.ID = C.IDCLASS
                     AND A.TREE LIKE
                         (DECODE(T.TREE, '#', '%', T.TREE || '%'))
           )
           */
           
           
             AND (EXISTS (SELECT *
                            FROM SMCARDSECURITYLOG L
                           WHERE C.ARTICLE = L.ARTICLE
                             AND L.EVENTTIME >=  to_date('10.09.2016', 'dd.mm.yyyy')) OR EXISTS
                  (SELECT *
                     FROM SMPRICEHISTORY L
                    WHERE C.ARTICLE = L.ARTICLE
                      AND L.PRICETYPE = 36
                      AND L.STORELOC = 48
                      AND L.EVENTTIME >=  to_date('10.09.2016', 'dd.mm.yyyy')) OR EXISTS
                  (SELECT *
                     FROM SMSTOREUNITHIST L
                    WHERE L.ARTICLE = C.ARTICLE
                      AND L.EVENTTIME >= to_date('10.09.2016', 'dd.mm.yyyy')) OR EXISTS
                  (SELECT *
                     FROM SMDISCQUANTITYLOG L
                    WHERE L.ARTICLE = C.ARTICLE
                      AND L.PRICEID = 36
                      AND L.EVENTTIME >= to_date('10.09.2016', 'dd.mm.yyyy'))))  



4783 rows inserted in 709 s.

На профильном форуме предположили еще пересоздать индексы, может, какой-нить развалился.

Но я вчера еще места добавил в таблспейсах, помнится, в 9-ке автоэкстенд снижал производительность.
...
Рейтинг: 0 / 0
13.09.2016, 14:50:35
    #39308458
Q.Tarantino
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
dmdmdmНо я вчера еще места добавил в таблспейсах, помнится, в 9-ке автоэкстенд снижал производительность.
???
next равен 8к небось? :)
...
Рейтинг: 0 / 0
13.09.2016, 17:53:55
    #39308624
kop_d
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
dbms_photoshopИнформацию о том в какой части плана тратится время можно получить из ASH (v$active_session_history).

Не подскажите, как?
...
Рейтинг: 0 / 0
13.09.2016, 18:02:04
    #39308626
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
Сбор статистики спас отца русской демократии.
...
Рейтинг: 0 / 0
13.09.2016, 18:52:27
    #39308643
dbms_photoshop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
kop_ddbms_photoshopИнформацию о том в какой части плана тратится время можно получить из ASH (v$active_session_history).

Не подскажите, как?
Код: plaintext
... group by sql_plan_line_id, sql_plan_operation, sql_plan_options ...
+ dbms_xplan.display_cursor для получения самого плана целиком
...
Рейтинг: 0 / 0
14.09.2016, 02:35:40
    #39308736
nata44845
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сессия висит
Код: sql
1.
Select * from user_indexes where status<>'VALID'



И вы с ума сошли на рабочей базе инсерт делать?
Берите селект из этого инсерта и делайте с ним что хотите, инсерт то зачем?

Сервер какой, если ентерпрайз идите в sql monitoring, тащите картинку с планом.
Если нет тогда
Код: sql
1.
explain plan for select

...
Потом
Код: sql
1.
select * from table(sys.dbms_xplan.display())



Хотя конечно можно план из трассировки добыть.
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Сессия висит / 25 сообщений из 25, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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