powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / FB + Ora heterogeneous services
25 сообщений из 29, страница 1 из 2
FB + Ora heterogeneous services
    #38411846
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте, ВСЕ!

Многие из тут(здесь) имеют опыт интимного взаимодействия
FireBird + Oracle.
В конкретном данном случае: FireBird 2.Х + Oracle 11g.
Оба сервера сидят на разных машинах, под пингвином.
Связка осуществляется посредством Oracle Heterogeneous Services,
через линуховый FireBird ODBC 2.0.2.153

Проблема где-то внутрях этого самого гетеро-сервиса, будь оно неладно.

Если просто пинать запросы типа:
Код: sql
1.
2.
INSERT INTO Ora_Table(...)  SELECT ... FROM
FB_Table@fb_host

то проблем нет.

Проблемы возникают при попытке завернуть оный стейтмент в процедуру.
Трассировка на стороне Oracle показывает, что это дюже вумное поделие
при компиляции процедуры шлет на FireBird:
Код: sql
1.
2.
SELECT A1.Field_1, A1.Field_2, ...
FROM Shema_Name.FB_Table A1

т.е. пытается прикрепить рукав к
известному месту.
Сиречь, пытается указать схему так, как будто бы "на том конце" тоже
Oracle.
Естественно, запрос обламывается и как следствие, процедура не
компилируется.

Вопрос к сообществу.
Как кто заборол это поведение?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38411853
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МимопроходящийМногие из тут(здесь) имеют опыт интимного взаимодействия
FireBird + Oracle.
За многих не скажу, но по-моему проще обойтись без интима. Репликация рулит.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38411860
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МимопроходящийКак кто заборол это поведение?Мы тоже лбом упёрлись, но так и не забороли :(
Вьюхи пришлось на стороне ФБ создавать. А чтобы параметры передавать, пришлось городить спец. GTT'шку, в неё предварительно заталкивать пары {параметр, значение} и джойнить эту GTT с соотв-щей вьюхой. Через жо, в общем.
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38411890
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Динамические запросы (аналог нашего EXEC STMT) не подходят ?
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38411923
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, hvlad!
You wrote on 30 сентября 2013 г. 14:49:17:

hvladДинамические запросы (аналог нашего EXEC STMT) не
подходят? Именно так и извращаемся.

Наши ораклисты, за неимением исподников Oracle, решили было даже
модифицировать исходники FB ODBC под себя, дабы отлавливать
специфические "кривые" запросы и вырезать оным гланды
(через известное место).

Но пока отложили это хирургическое действо до лучших времен.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38411967
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящийпытается указать схему
Одно из двух: или ODBC драйвер возвращает неправильное значение для SQL_SCHEMA_USAGE или
гетерогенный сервис его игнорирует.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38411975
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, Dimitry Sibiryakov!
You wrote on 30 сентября 2013 г. 15:35:51:

Dimitry Sibiryakov> Одно из двух: или ODBC драйвер возвращает неправильное значение для
> SQL_SCHEMA_USAGE или гетерогенный сервис его игнорирует.
ты сломал мне мозг.

ЯННП.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38411994
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящийты сломал мне мозг.
Э?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38412041
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovОдно из двух: или ODBC драйвер возвращает неправильное значение для SQL_SCHEMA_USAGE
Я спросил Александра Потапченко (мэйнтейнера ODBC драйвера), и вот что он мне сказал:
Alexander PotapchenkoВ коде этот параметр только в одном месте:
case SQL_SCHEMA_USAGE:
if (metaData->supportsSchemasInDataManipulation())
value |= SQL_SU_DML_STATEMENTS;
if (metaData->supportsSchemasInProcedureCalls())
value |= SQL_SU_PROCEDURE_INVOCATION;
if (metaData->supportsSchemasInTableDefinitions())
value |= SQL_SU_TABLE_DEFINITION;
if (metaData->supportsCatalogsInIndexDefinitions())
value |= SQL_SU_INDEX_DEFINITION;
if (metaData->supportsSchemasInPrivilegeDefinitions())
value |= SQL_SU_PRIVILEGE_DEFINITION;
break;
Все эти процедуры возврщают false - жестко забито в коде
Dimitry Sibiryakovили гетерогенный сервис его игнорирует.Или твой ХШ не Х, или не Ш
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38412046
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladИли твой ХШ не Х, или не Ш
Ну да, МП же не колется что, где и как он там пытается компилировать... И почему его
ораклятые люди ещё не стучат с этим вопросом в техподдержку оракула. Почему туда не стучит
Таблоид - я знаю.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38412076
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovПочему туда не стучит Таблоид - я знаю.тсс!... это же "не телефонный разговор"!
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38412143
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, Dimitry Sibiryakov!
You wrote on 30 сентября 2013 г. 17:17:57:

Dimitry Sibiryakovhvlad> Или твой ХШ не Х, или не Ш
Ну да, МП же не колется что, где и как он там пытается компилировать...
я не бездействовавал.
я сразу на каппу нажал.
скрипач свидетель.

сказал же - процедуру компилить, на Oracle (pl/sql)

судя по всему, имя схемы пытается воткнуть heterogeneous service.
и подозреваю, что оное он берёт равным имени юзера из db-link'а.
не мудрствуя лукаво, потому что гладиолус.

зы: heterogeneous services initialization parameters
на скорость ветра в спину не влияют.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38412163
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящийсказал же - процедуру компилить, на Oracle (pl/sql)

И процедуру эту ты нам не покажешь даже под пытками, партизан хренов?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38412199
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, Dimitry Sibiryakov!
You wrote on 30 сентября 2013 г. 17:58:02:

Dimitry SibiryakovМимопроходящийсказал же - процедуру компилить, на Oracle (pl/sql)
> И процедуру эту ты нам не покажешь даже под пытками, партизан хренов?..
вот нудный же ж.
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
CREATE GLOBAL TEMPORARY TABLE TMP_DEMO
AS SELECT * FROM RDB$DATABASE@FB_DataBase;

CREATE PROCEDURE BUG_TEST
IS
BEGIN
  DELETE FROM TMP_DEMO;
  INSERT INTO TMP_DEMO
    SELECT * FROM RDB$DATABASE@FB_DataBase;
END BUG_TEST;
/



Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38412210
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Создать (материализованную) вьюху пробовал?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38412266
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, Dimitry Sibiryakov!
You wrote on 30 сентября 2013 г. 18:54:04:

Dimitry Sibiryakov> Создать (материализованную) вьюху пробовал?
а то она типа не компилится в момент создания.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38412270
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящийа то она типа не компилится в момент создания.
Ну дык у оракула SQL компилятор и PL/SQL компилятор это две сильно разные вещи. Их баги не
обязаны совпадать.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38412287
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, Dimitry Sibiryakov!
You wrote on 30 сентября 2013 г. 19:28:01:

Dimitry Sibiryakov> Ну дык у оракула SQL компилятор и PL/SQL компилятор это две сильно
> разные вещи. Их баги не обязаны совпадать.
с какой-то N-й версии оракула это уже не совсем так.
оно уже даже научилось "не переключать контекст" (с)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38412291
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящийс какой-то N-й версии оракула это уже не совсем так.

Ну разве что с 12-й...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38419204
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladВсе эти процедуры возврщают false - жестко забито в коде
А вот SQL_CATALOG_NAME возвращает "Y". На мой взгляд - абсолютно зря, поскольку FB
синтаксис database.table не поддерживает.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38419213
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovhvladВсе эти процедуры возврщают false - жестко забито в коде
А вот SQL_CATALOG_NAME возвращает "Y". На мой взгляд - абсолютно зря, поскольку FB
синтаксис database.table не поддерживает.Ну так для этого есть http://sourceforge.net/p/firebird/mailman/firebird-odbc-devel/.
Уж ты-то должен это знать
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38419247
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladУж ты-то должен это знать
Я знаю это аж слишком хорошо, но хотел бы чтобы МП сначала попробовал собрать себе драйвер
с изменённым поведением. Если не поможет - нет смысла туда писать. Если поможет - опять же
нет смысла писать туда, а надо идти сразу в трекер.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38419253
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, Dimitry Sibiryakov!
You wrote on 7 октября 2013 г. 17:25:11:

Dimitry Sibiryakov> Я знаю это аж слишком хорошо, но хотел бы чтобы МП сначала попробовал
> собрать себе драйвер с изменённым поведением.
> Если не поможет - нет смысла туда писать. Если поможет - опять же
> нет смысла писать туда, а надо идти сразу в трекер.
интересная информация, спасибо.
на досуге попробую пересобрать дровер.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38462412
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://sourceforge.net/mailarchive/forum.php?thread_name=52813DC3.3010405@gmail.com&;forum_name=firebird-odbc-devel

Есть шанс, что Потапенко таки это найдёт и поправит.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
FB + Ora heterogeneous services
    #38462419
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, Dimitry Sibiryakov!
You wrote on 12 ноября 2013 г. 17:32:05:

Dimitry Sibiryakov> Есть шанс, что Потапенко таки это найдёт и поправит.
будем надеяться.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
25 сообщений из 29, страница 1 из 2
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / FB + Ora heterogeneous services
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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