Постгрес — ORA-08177

У меня настроена внешняя таблица, которая указывает на таблицу в базе данных Oracle. Выдается очень досадная ошибка:

ORA-08177: can't serialize access for this transaction

Я немного прочитал, и одно из предложений:

alter server ni00dev options ( set isolation_level 'read_committed ');

Однако, похоже, это не работает:

zrec=# alter server ni00dev options ( set isolation_level 'read_committed ');
ERROR:  option "isolation_level" not found

Есть какие-нибудь предложения, как избавиться от ORA-08177?

Большое спасибо!

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
60
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете использовать опцию SET для значения только в том случае, если эта опция уже определена. В противном случае вам нужно ADD это сделать. Кроме того, значение параметра не должно содержать лишнего пробела.

ALTER SERVER ni00dev OPTIONS (ADD isolation_level 'read_committed');

Обратите внимание, что для этой опции вам потребуется oracle_fdw версии не ниже 2.3.0. Всегда рекомендуется запускать последнюю версию oracle_fdw.

Интересно, это проблема версии? zrec=# ИЗМЕНИТЬ ОПЦИИ СЕРВЕРА ni00dev (ДОБАВИТЬ уровень изоляции 'read_commit'); ОШИБКА: недопустимая опция «isolation_level»

Landon Statis 28.03.2024 15:07

Скорее всего. Но вы не рассказали нам эту важную деталь.

Laurenz Albe 28.03.2024 15:08

psql --version psql (PostgreSQL) 10.10 -- Если эта версия слишком ранняя для «read_commited», есть ли другие решения?

Landon Statis 28.03.2024 15:09

Версия oracle_fdw. См. документацию, как его получить. Также добавляйте новую информацию в вопрос, а не в комментарий.

Laurenz Albe 28.03.2024 15:10

@LandonStatis, имейте в виду, что PostgreSQL 10.10 уже почти пять лет, а срок окончания выпуска истек более года. Пожалуйста, обновите вашу систему!

Nico Haase 28.03.2024 15:11

Другие вопросы по теме