powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / коллеги, переведите описание бага на русский, плз
20 сообщений из 20, страница 1 из 1
коллеги, переведите описание бага на русский, плз
    #39259093
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
The issue is reported in
Bug 13801399 - ORA-00600[PFRDEF1_GET_TDO#145: PIN FAILED]OCCUR WHILE CALL PL/SQL PROCEDURE which is still in progress
which is still open with Oracle Development.
...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39259101
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на линух перепёрлись
...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39259106
Alex URS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
коллизия
...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39259109
landy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я бы перевел как-то так:
Код: sql
1.
Ошибка при вызове и выполнении процедуры, которая еще открыта  в Oracle Dev
...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39259110
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
landyЯ бы перевел как-то так:
Код: sql
1.
Ошибка при вызове и выполнении процедуры, которая еще открыта  в Oracle Dev

думаю - и как бы ОНО это определило? :)
...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39259113
landy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На Metalink есть workaround, пока патч не выпустили
...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39259115
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
landyНа Metalink есть workaround, пока патч не выпустилиспс, это мы уже видели
...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39259267
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это не "на линух перепёрлись", это 11gR2. Я это регулярно ловлю на Солярке с 11.2.0.3
Воркэраунд из 1988432.1 не помогает
Описание, из-за чего это происходит можно почитать (с небольшими усилиями) в 1764443.1
Там же описано как избежать ORA-600, а получить ожидаемую ORA-04068 (ORA-04061, ORA-04065, ORA-06508)
Но это должны выполнять разработчики
...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39259282
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На Солярке 11.2.0.3 ни разу не было. А на линухе 11.2.0.4 - у первые же сутки. Хотя при тестировании не поймали.
...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39259285
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Он проявляется в достаточно специфичных условиях -- см. 1764443.1
...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39259298
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вячеслав ЛюбомудровЭто не "на линух перепёрлись", это 11gR2. Я это регулярно ловлю на Солярке с 11.2.0.3
Воркэраунд из 1988432.1 не помогает
Описание, из-за чего это происходит можно почитать (с небольшими усилиями) в 1764443.1
Там же описано как избежать ORA-600, а получить ожидаемую ORA-04068 (ORA-04061, ORA-04065, ORA-06508)
Но это должны выполнять разработчикинифига себе с небольшими :))
ты уже китайским овладел?
...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39259307
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Жить захочешь -- не так раскорячишься (с)
...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39259308
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да там еще и японский :)

А не подскажешь, что вы решили? Инициализировать переменную наллом?
...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39259314
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Совсем ленивый
Код: 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.
tst> sho user
USER is "U1"
tst> select * from v$version where rownum=1;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production

tst> create table t1 as select object_id, object_name from all_objects;

Table created.

tst> create or replace package p1 as
  2     t1_rec t1%rowtype;
  3  end;
  4  /

Package created.

tst> create or replace procedure c1 as
  2    t1_c_rec t1%rowtype;
  3    cursor c is select object_id, object_name from t1;
  4  begin
  5    open c;
  6    loop
  7      fetch c into t1_c_rec;
  8      P1.T1_REC := t1_c_rec;
  9      exit when c%notfound;
 10    end loop;
 11  end;
 12  /

Procedure created.


Вот в такой последовательности ловим:
-- первая сессия
Код: plsql
1.
2.
3.
tst> exec c1

PL/SQL procedure successfully completed.

-- вторая
Код: plsql
1.
2.
3.
4.
5.
6.
7.
ts2> create or replace package p1 as
  2     t1_rec t1%rowtype;
  3     var1 number;
  4  end;
  5  /

Package created.


-- и первая
Код: plsql
1.
2.
3.
4.
5.
6.
tst> exec c1
BEGIN c1; END;

*
ERROR at line 1:
ORA-00600: internal error code, arguments: [pfrdef1_get_tdo#145: pin failed], [], [], [], [], [], [], [], [], [], [], []




А вот так -- нет:
-- первая сессия
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
tst> connect u1/u1@tst
Connected.
tst> create or replace package p1 as
  2     t1_rec t1%rowtype;
  3  end;
  4  /

Package created.

tst> exec c1

PL/SQL procedure successfully completed.


-- вторая
Код: plsql
1.
2.
3.
4.
5.
6.
7.
ts2> create or replace package p1 as
  2     var1 number;
  3     t1_rec t1%rowtype;
  4  end;
  5  /

Package created.


-- и снова первая
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
tst> exec c1
BEGIN c1; END;

*
ERROR at line 1:
ORA-04068: existing state of packages has been discarded
ORA-04061: existing state of package "U1.P1" has been invalidated
ORA-04065: not executed, altered or dropped package "U1.P1"
ORA-06508: PL/SQL: could not find program unit being called: "U1.P1"
ORA-06512: at "U1.C1", line 8
ORA-06512: at line 1

...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39259975
Nobody1111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
andreymxнифига себе с небольшими :))
ты уже китайским овладел?
Он же на ДВ живет. Они там и на китайском, и на японском лучше, чем на великом и могучем уже
...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39260011
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вячеслав Любомудров
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
tst> create or replace package p1 as
  2     t1_rec t1%rowtype;
  3  end;
  4  /
ts2> create or replace package p1 as
  2     t1_rec t1%rowtype;
  3     var1 number;
  4  end;
  5  /

А вот так -- нет:
ts2> create or replace package p1 as
  2     var1 number;
  3     t1_rec t1%rowtype;
  4  end;
  5  /


Ну есть у оракеля основания по-разному себя вести в этих сценариях.
Первый вариант, в отличие от второго, не ведет к инвалидации зависимых от данного спека объектов.
Но где-то недосмотрели индусы... Уровень оптимизации pl/sql не влияет?
А во втором случае - зависимые объекты инвалидируются и, следовательно, перекомпилируются, что предупреждает ora-600.
...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39260018
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_anonymousВячеслав Любомудров
Код: plsql
1.
2.
3.
4.
5.
ts2> create or replace package p1 as
  2     t1_rec t1%rowtype;
  3     var1 number;
  4  end;
  5  /


не ведет к инвалидации зависимых от данного спека объектов.
Собственно, вот:
https://docs.oracle.com/cd/B28359_01/server.111/b28318/dependencies.htm CREATE OR REPLACE PACKAGE
INVALID when:
...
Dependent object references a package variable or constant whose name, datatype, initial value, or offset number changed.
...
Otherwise, no change.
...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39260048
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_anonymousНу есть у оракеля основания по-разному себя вести в этих сценариях.
Первый вариант, в отличие от второго, не ведет к инвалидации зависимых от данного спека объектов.Это новая фишка в 11G
Подозреваю, что достаточно сырая
У меня нет 11gR1, поэтому я не могу проверить этот сценарий там, но подозреваю, что ломается (иначе зачем бы ее рекомендовалось отключать при апгрейде OEBS, например)
andrey_anonymousНо где-то недосмотрели индусы...Ну, дык. Об чем и речь
Самое обидное, что появившееся с год-полтора назад описание на металинке (1988432.1) содержит workaround, который должен отключать эту фишку, но это не помогает. По крайней мере на тесте с установленным параметром я ловлю эту 600 несколько раз в неделю. Соответственно, не вижу смысла ставить его в боевой
andrey_anonymousУровень оптимизации pl/sql не влияет?Не проверял, не вижу смысла
...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39260112
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вячеслав Любомудровandrey_anonymousНу есть у оракеля основания по-разному себя вести в этих сценариях.
Первый вариант, в отличие от второго, не ведет к инвалидации зависимых от данного спека объектов.Это новая фишка в 11G
Подозреваю, что достаточно сырая
Может и так.
Только правило "при доработке пакета новые функции пишем в хвост спецификации иначе будет больно" очень-очень старое.
Возможно, связанное с forms...
...
Рейтинг: 0 / 0
коллеги, переведите описание бага на русский, плз
    #39260303
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот тут словили
в таком виде работает пару лет, но поймали однажды
Код: 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.
CREATE OR REPLACE PACKAGE Variables_Pkg AS
  /* только переменные, без боди **/
    Is_Update_For_Doc_Files     BOOLEAN := FALSE;
    Is_Deleting_Doc             BOOLEAN := FALSE; 
    Is_Deleting_Dsod            BOOLEAN := FALSE;
    dsod_id_doc                 REKV.id_doc%TYPE := 0;
    doc_features                VID_DOC%ROWTYPE;
    old_doc_features            VID_DOC%ROWTYPE;  
END;
/


   триггер BEFORE INSERT/UPDATE
   -- Получаем признаки для данного вида док-та
   Variables_Pkg.doc_features := **_Pkg.GetDocFeatures(:NEW.vid); -- ora-00600



FUNCTION **_Pkg.GetDocFeatures(p_id_vid IN NUMBER) RETURN NSI_VID_DOC%ROWTYPE 
IS
  v_priz VID_DOC%ROWTYPE;
BEGIN

   SELECT *
    INTO v_priz
    FROM VID_DOC
   WHERE id_vid = p_id_vid;

   RETURN v_priz;  -- ora-00600

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


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