У меня есть код, который подключается к базе данных Oracle через модуль Python cx_Oracle. Когда я запускаю запрос, он завершается успешно, однако я вижу сообщение «subsciber -54320 create failed», написанное на экране, когда интерпретатор выключается. Отображаемый конкретный номер не всегда одинаков, но часто совпадает между последовательными запусками кода. Когда это происходит, я замечаю, что выполнение запроса занимает много времени, около 10 секунд.
Интересно, что я так часто нет см. это сообщение, и когда это происходит, запрос выполняется очень быстро, около 1 секунды или меньше. Я также заметил, что если я нажимаю Ctrl + C во время выполнения, когда это происходит, процесс зависает примерно на час и больше не отвечает на сигналы прерывания.
Я обнаружил, что это поведение не зависит от содержимого запроса или от того, какую таблицу/схему я запрашиваю.
Единственное, что я смог найти при поиске решений, это эта страница поддержки Oracle, но он только описывает проблему и не дает решения.
Я не администратор, а просто пользователь, так что, надеюсь, есть решение на стороне клиента.
Минимальный рабочий пример
импорт cx_Oracle
с cx_Oracle.connect("пользователь", "пароль", "dns") как db:
пытаться:
курсор = db.курсор()
для строки в cursor.execute("SELECT * FROM MYSCHEMA.MYTABLE"):
печать (строка)
Ну наконец то:
курсор.закрыть()