powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Подружите пожалуйста IBExpert с FB3
20 сообщений из 20, страница 1 из 1
Подружите пожалуйста IBExpert с FB3
    #38297231
NickDee
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скачал снапшот Firebird-3.0.0.30435-0_Win32.7z отсюда: http://web.firebirdsql.org/download/snapshot_builds/win/3.0/
Распаковал в папку "D:\***\Win32\Firebird\3.0.0.30435\"
Сделал бэкап своей базы в 2.5.
Сделал рестор в 3.0, т.е. запустил "gbak -c -v D:\***\data.fbk D:\***\data3.fdb"
Стопнул полноценный 2.5 сервер, чтобы не мешался (возможно это было важно)
Запускаю последний IBExpert, регистрирую новую базу:
----------------
Сервер: Локальный
Версия сервера: Firebird 2.5
Файл базы данных: D:\***\data3.fdb
Пользователь: SYSDBA
Пароль: masterkey
Кодировка: WIN1251
[X] Do NOT perform conversion from/to UTF8
Файл клиентской библиотеки: D:\***\Win32\Firebird\3.0.0.30435\fbclient.dll
----------------
Пытаюсь коннектиться, получаю ошибку:
IBExpertcan't format message 13:96 -- message file D:\***\IBExpert\firebird.msg not found.
unavailable database.

Первая странность в том, что firebird.msg не нашёлся, хотя он лежит рядом с либой. И то, что он ищется в папке IBExpert - это явный логический баг. Уж простите :)
Положил firebird.msg в папку с IBExpert, попробовал подключиться снова. Получил ошибку:
IBExpertUnsuccessful execution caused by an unavailable resource.
unavailable database.

Дальше я скопировал IBExpert.exe в папку с FB3, т.е. в D:\***\Win32\Firebird\3.0.0.30435\ и запустил его оттуда.
И коннект прошёл :) И таблички открывались нормально. Правда при дисконнекте IBExpert cвалился...

Чего хочется: хочется нормальной, предсказуемой работы инструмента с 3.0 :) Ну и чтобы firebird.msg находился сам :)

PS: Никаких батников не запускал, пользователей не создавал, конфиги не правил, и firebird.exe не запускал :)
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38297233
NickDee
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вот, что выдала моя прога, попытавшись приконнектиться к той базе:
прогаCould not find acceptable ICU library
Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements
GDS Code: 335544382 - SQL Code: -901 - Error Code: 62
Прога находится в папке "D:\***\Win32\" и использует те же параметры, что и IBExpert в предыдущем сообщении.
Только я ещё перед коннектом переменную FIREBIRD устанавливаю в значение "D:\***\Win32\Firebird\3.0.0.30435", и делаю ChangeDir в эту директорию (а после LoadLibrary делаю ChangeDir обратно).

Некоторое время спустя...
Вот ведь блин... :) А если после LoadLibrary не делать обратно ChangeDir, а оставаться в папке с fb-сервером, то всё работает...
ААААААА, я похоже понял :) Это похоже то же самое поведение, что и с переменной FIREBIRD описанной тут . Пока не вызван Connect или любая другая функция, которая подгружает окружение, менять рабочую директорию обратно нельзя. Так? :)
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38297269
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NickDeeПервая странность в том, что firebird.msg не нашёлся, хотя он лежит рядом с либой. И то, что он ищется в папке IBExpert - это явный логический баг. Уж простите :)
он ищется в рабочем каталоге приложения. В 2.х искался на каталог выше, чем IBExpert. Тебе это больше нравилось? :-)

NickDeeПоложил firebird.msg в папку с IBExpert, попробовал подключиться снова. Получил ошибку
firebird.conf и/или провайдер engine12 не были найдены, поэтому локальный коннект не прошел (сервер ведь не запущен)

NickDeeДальше я скопировал IBExpert.exe в папку с FB3, т.е. в D:\***\Win32\Firebird\3.0.0.30435\ и запустил его оттуда.
И коннект прошёл :)
ибо был найден и загрузился embedded-движок
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38297288
NickDee
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitr,
да я знаю эти отговорки :) Структура папок сервера и пр. :)

dimitrNickDeeПервая странность в том, что firebird.msg не нашёлся, хотя он лежит рядом с либой. И то, что он ищется в папке IBExpert - это явный логический баг. Уж простите :)
он ищется в рабочем каталоге приложения. В 2.х искался на каталог выше, чем IBExpert. Тебе это больше нравилось? :-)

А кто пострадает если firebird.msg будет искаться не только на каталог выше, но и рядышком с клиентской либой? Кто выиграет и так понятно, а вот кто пострадает? :)

dimitrNickDeeПоложил firebird.msg в папку с IBExpert, попробовал подключиться снова. Получил ошибку
firebird.conf и/или провайдер engine12 не были найдены, поэтому локальный коннект не прошел (сервер ведь не запущен)

Тот же вопрос :) Кто пострадает, если firebird.conf будет по-умолчанию искаться рядом с fbclient.dll? Опять же понятно что выиграют те же пользователи IBExpert. Но опять не понятно кто пострадает :)

Или это лучше Хвастунова просить, чтобы он проверял наличие firebird.msg и firebird.conf рядом с клиентской либой, и устанавливал переменную FIREBIRD? :)
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38297407
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NickDeeИли это лучше Хвастунова просить, чтобы он проверял наличие

Это пять! Чтоб лично проверял!
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38297441
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NickDeeкто пострадает? :)Тот, кто играет по правилам, а не игнорирует их.
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38297588
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitrон ищется в рабочем каталоге приложения. В 2.х искался на каталог выше, чем
IBExpert.
А разве не искался он на каталог выше чем библиотека ? Что будет, если fbclient
грузится по PATH, а не из текущего каталога?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38306807
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Свежая сборка Fb3 падает при попытке коннекта через IBExpert.

В логе вот это:

DEN_PC Fri Jun 21 20:21:19 2013
Database: d:\interbasedata\3.0\horses.fdb
internal Firebird consistency check (wrong record length (183), file: vio.cpp line: 1223)


DEN_PC Fri Jun 21 20:21:19 2013
XNET error: XNET server initialization failed. Probably another instance of server is already running.
operating system directive CreateMutex failed
Невозможно создать файл, так как он уже существует.


DEN_PC Fri Jun 21 20:21:27 2013
INET/inet_error: send errno = 10054
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38306836
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисСвежая сборка Fb3 падает
базу пересоздай (или отресторь заново). Системные таблицы менялись.
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38306856
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо. Заработало.
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38558966
NickDee
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Апну тему.

Скачал последний IBExpert.
Скачал последний снапшот тройки (распаковал в D:\FB3).
Стопнул 2.5. на 3050 порту, чтобы не мешался.

Пытаюсь создать базу в win1251, используя либу D:\FB3\fbclient.dll.
База создаётся, но IBExpert сразу же падает.

Ок. Запускаю опять IBExpert, регистрирую там бд (используя либу D:\FB3\fbclient.dll), коннекчусь. Коннект удивительным образом проходит (что не соответствует ожиданию, т.к. Firebird не умеет подгружать ICU из своей папки).
В процессе разбора стало ясно, что он (Firebird3) при коннекте пытался загрузить миллион разных ICU по всему Path, начиная с icuuc419.dll и заканчивая icuuc30.dll. И ему таки свезло на icuuc30.dll, т.к. он был ранее загружен из папки "IBExpert\IBEUDB\".

Вопрос: я правильно понимаю, что если бы у меня в Path вдруг оказался icuuc419.dll, то именно он был бы использован?
Что-то есть у меня опасение, что пользователь IBExpert-а всё-таки ожидает, что его БД будет работать не хрен пойми с какой ICU из Path (и даже не хрен пойми с какой уже загруженой), а с конкретной, с той которая рядом с подгружаемым fbclient.dll. Зачем ему какая-то левая dll?
Возможны ли какие-нибудь печальные последствия для пользователя, который сам того не осознавая, заюзает icu более новой версии? Или можно без последствий работать сначала с одной версией, потом с другой?
И глобальный философско-программистский вопрос: зачем намеренно ставить себя (и своих пользователей) в хоть какую-нибудь зависимость от окружения по дефолту? Это ведь очевидные грабли.
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38558982
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NickDee,

ничего не понял. Причем тут fbclient и ICU, если первая вторую не использует, а использует движок, о котором выше вообще ни слова?
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38558988
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NickDeeВ процессе разбора стало ясно, что он (Firebird3) при коннекте пытался загрузить миллион разных ICU по всему Path, начиная с icuuc419.dll и заканчивая icuuc30.dll. И ему таки свезло на icuuc30.dll, т.к. он был ранее загружен из папки "IBExpert\IBEUDB\".у мну на машине-1 установлен ИБЭ 2013.9.3.1, клиент 2.5; на машине-2 - ФБ WI-T6.3.0.30855 Firebird 3.0 Alpha 2.
ИБЭ без всяких проблем создает базу в ФБ-3, коннектится к ней. ФБ-3 при коннекте подгружает две библы: icudt30.dll & icuuc30.dll. Обе они находятся в каталоге ФБ, c:\1install\fb30.
Из переменных окружения намеренно выкинуты все упоминалки про путь к какому-либо инстансу ФБ (а их на этой машине 4 штуки :))

Код: plaintext
1.
2.
3.
4.
5.
C:\>set path
Path=C:\ora11xe\app\oracle\product\11.2.0\server\bin;;C:\MIX;C:\oracle\product\10.2.0\client_1\bin;C:\WINDOWS\syste
m32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\system32\nls;C:\WINDOWS\system32\nls\RUSSKI;C:\WINDOWS\system32\
WindowsPowerShell\v1.0;c:\Program Files\TortoiseSVN\bin
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.PSC1
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38558993
NickDee
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitrничего не понял. Причем тут fbclient и ICU, если первая вторую не использует, а использует движок, о котором выше вообще ни слова?
Это embedded-подключение с дефолтными настройками.
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38558994
NickDee
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид
Стопни Firebird и попробуй создать БД локальным подключением.
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38558998
NickDee
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NickDeeТаблоид
Стопни Firebird и попробуй создать БД локальным подключением.
Хотя у тебя же FB2.5 там... :(
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38559004
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NickDeeТаблоидСтопни Firebird и попробуй создать БД локальным подключением.ну, создал, и чё ? :-) (см аттач; все они - из ФБ-каталога)
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38559007
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NickDeeNickDeeпропущено...Стопни Firebird и попробуй создать БД локальным подключением.Хотя у тебя же FB2.5 там... :(ФБ 2.5 у мну в основном в оффлайне. С лета :-)
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38559009
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NickDee,

не используй локальные пути пока что.
...
Рейтинг: 0 / 0
Подружите пожалуйста IBExpert с FB3
    #38559028
NickDee
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоидну, создал, и чё ? :-) (см аттач; все они - из ФБ-каталога)
Каталог запуска программы входит в dll search order . Так что это не то.
То - это когда твой код загружает библиотеку по полному пути из другой папки. Вот если бы у isql в параметрах можно было бы указывать другую fbclient.dll...
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Подружите пожалуйста IBExpert с FB3
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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