|
|
|
Oracle 12 - бага или фича?
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток. После перехода с 11-й на 12-ю версию Oracle, обнаружили потерю части функциональности. А именно: В системе работает такой SQL-запрос, выполнение которого происходит динамически ( DBMS_SQL ): Код: plsql 1. 2. 3. 4. 5. 6. GET_TAB_PTF - обычная PIPELINED-функция, кторая возвращает таблицу из 2-х полей и 5-ти строк. При выполнении его пользователем из любого клиента-обертки (TOAD), все проходит нормально (все через динамисеский SQL). Но когда его выполнение инициируется процессом на Шедулере (JOB), он разваливается по следующей ошибке: Код: plsql 1. 2. Путем экспериментов и методом исключения установили, что причиной всего является конструкция EXISTS, если ее видоизменить к примеру с использованием COUNT, то ошибка исчезает: Код: plsql 1. 2. 3. 4. 5. 6. Причем, EXISTS "ломается" только если внутри него подзапрос с PIPELINED-функцией. Если внутри него будет обычный запрос, также все отработает корректно: Код: plsql 1. 2. 3. 4. 5. 6. На 11-й версии этого феномена не было. Подскажите кто сталкивался или кто знает, с чем это связано. Это штатное поведение 12-го Оракла, или ошибка? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2017, 10:43 |
|
||
|
Oracle 12 - бага или фича?
|
|||
|---|---|---|---|
|
#18+
Ivanco, попробуйте так: Код: plsql 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2017, 10:48 |
|
||
|
Oracle 12 - бага или фича?
|
|||
|---|---|---|---|
|
#18+
MaximaXXLIvanco, попробуйте так: Нет, результат тот же, Код: plsql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2017, 11:00 |
|
||
|
Oracle 12 - бага или фича?
|
|||
|---|---|---|---|
|
#18+
Ivanco Код: plsql 1. AUTHID? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2017, 11:22 |
|
||
|
Oracle 12 - бага или фича?
|
|||
|---|---|---|---|
|
#18+
ElicAUTHID? Я так понимаю, речь про директиву "AUTHID CURRENT_USER"? Все используемые таблицы и объекты находятся в той же схеме, откуда происходит обращение к ним. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2017, 08:46 |
|
||
|
Oracle 12 - бага или фича?
|
|||
|---|---|---|---|
|
#18+
Ivanco, Явные коммиты/ролбаки в функции есть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2017, 09:00 |
|
||
|
Oracle 12 - бага или фича?
|
|||
|---|---|---|---|
|
#18+
Ivancoобычная PIPELINED-функция Или необычная? С автономкой внутрях? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2017, 09:03 |
|
||
|
Oracle 12 - бага или фича?
|
|||
|---|---|---|---|
|
#18+
envЯвные коммиты/ролбаки в функции есть? envИли необычная? С автономкой внутрях? Внутри ничего необычного нет, для упрощения функцию беру из учебного примера: Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2017, 11:00 |
|
||
|
Oracle 12 - бага или фича?
|
|||
|---|---|---|---|
|
#18+
Ivanco, Продемонстрируй на этом тестовом примере на обеих версиях. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2017, 13:33 |
|
||
|
Oracle 12 - бага или фича?
|
|||
|---|---|---|---|
|
#18+
envIvanco, Продемонстрируй на этом тестовом примере на обеих версиях. на "апексе" ошибка не воспроизводится Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production 0 PL/SQL Release 12.1.0.2.0 - Production 0 CORE 12.1.0.2.0 Production 0 TNS for Linux: Version 12.1.0.2.0 - Production 0 NLSRTL Version 12.1.0.2.0 - Production ..... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2017, 15:03 |
|
||
|
Oracle 12 - бага или фича?
|
|||
|---|---|---|---|
|
#18+
Стас, ты именно ситуацию ТС воспроизвёл? С динамикой и вызовом через скедулер? Или просто через морду к базе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2017, 16:43 |
|
||
|
Oracle 12 - бага или фича?
|
|||
|---|---|---|---|
|
#18+
envСтас, ты именно ситуацию ТС воспроизвёл? С динамикой и вызовом через скедулер? Или просто через морду к базе? нет, был невнимательным, опустил о джобе ..... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2017, 16:57 |
|
||
|
Oracle 12 - бага или фича?
|
|||
|---|---|---|---|
|
#18+
IvancoElicAUTHID? Я так понимаю, речь про директиву "AUTHID CURRENT_USER"? Все используемые таблицы и объекты находятся в той же схеме, откуда происходит обращение к ним.и зачем тогда authid cu? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2017, 02:51 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39495718&tid=1885519]: |
0ms |
get settings: |
11ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
626ms |
get topic data: |
17ms |
get forum data: |
5ms |
get page messages: |
78ms |
get tp. blocked users: |
2ms |
| others: | 240ms |
| total: | 1006ms |

| 0 / 0 |
