|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Переносил весь свой зоопарк со старого ноута на новый. Все завелось, заартачился только FB 4. Коннектиться отказывается, посылает на в лог. В логе вот это: Код: plaintext 1.
Сам FB перенесен простым копированием, созданием и запуском соответствующей службы. Т.е., конфигурации сервера заведомо одинаковые. На всякий случай скачал последний снапшот - такая же фигня. При этом на старом ноуте та же конфигурация нормально работает. Но на старом ноуте винда (десятка) версии 1703, а на новом - 1709. Собственно, вопрос: это происки майкрософта или я чего в FB недокрутил? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 16:39 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
IBExpert, icu требуют msvc10 скопируй из тройки msvcp100.dll и msvcr100.dll или установи VC Redistr 2010 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 16:54 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов ДенисIBExpert, icu требуют msvc10 скопируй из тройки msvcp100.dll и msvcr100.dll или установи VC Redistr 2010 Завелось, спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2017, 17:10 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов ДенисIBExpert, icu требуют msvc10 скопируй из тройки msvcp100.dll и msvcr100.dll или установи VC Redistr 2010 А почему нельзя включать в дистрибутив ICU скомпилированные с msvcr120.dll? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2017, 17:56 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
bazilio77, это вопрос не ко мне. К релизу всё нормально будет ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2017, 17:59 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Кстати до сих проблема имеет место ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 15:20 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
bazilio77, Адриано собирается обновить ICU когда будет мержить ветку с тайм-зонами. Кстати там судя по всему будет забавный сюрприз. Те кто хочет обновится на 4.0 надо начинать готовить базы. В следующих пострелизах 3.0 и 2.5 будет добавлены контекстные переменные LOCALTIME, LOCALTIMESTAMP как синонимы CURRENT_TIME, CURRENT_TIMESTAMP и надо будет переводить приложения и базу использование новых переменных, потому что с 4.0 CURRENT_TIME, CURRENT_TIMESTAMP будут возвращать TIME WITH TIMEZONE и TIMESTAMP WITH TIMEZONE. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 15:31 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денис> с 4.0 CURRENT_TIME, CURRENT_TIMESTAMP будут возвращать Симонов Денис> TIME WITH TIMEZONE и TIMESTAMP WITH TIMEZONE. Ну ппц. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 15:51 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
в конфиг вынесите галку. ибо. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 15:55 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисbazilio77, Адриано собирается обновить ICU когда будет мержить ветку с тайм-зонами. Кстати там судя по всему будет забавный сюрприз. Те кто хочет обновится на 4.0 надо начинать готовить базы. В следующих пострелизах 3.0 и 2.5 будет добавлены контекстные переменные LOCALTIME, LOCALTIMESTAMP как синонимы CURRENT_TIME, CURRENT_TIMESTAMP и надо будет переводить приложения и базу использование новых переменных, потому что с 4.0 CURRENT_TIME, CURRENT_TIMESTAMP будут возвращать TIME WITH TIMEZONE и TIMESTAMP WITH TIMEZONE. Так делать нельзя! Никаких синонимов. Введите новое что то вроде CURRENT_TIMSTAMP_WITH_TZ ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 16:21 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
bazilio77, Гаджимурадов Рустам, Мимопроходящий с этим в fbdevel надо. Адриано категорически против всяких параметров в конфиге ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 16:29 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
детство юношеский максимализм в голове у вундеркинда. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 16:33 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
В стандарте CURRENT_TIME, CURRENT_TIMESTAMP должны возвращать TIME WITH TIMEZONE и TIMESTAMP WITH TIMEZONE. Без таймзоны - LOCALTIME, LOCALTIMESTAMP. В 3.0.4 (и, возможно, в 2.5.9) специально добавятся LOCALTIME, LOCALTIMESTAMP, чтобы можно было заранее подготовиться. Что не так ? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 16:42 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Мимопроходящий, согласно стандарту CURRENT_TIME, CURRENT_TIMESTAMP и должны возвращать значения с тайм-зоной, а LOCALTIME, LOCALTIMESTAMP без тайм-зоны. Но с другой стороны обратная совместимость... Большинству эти тайм-зоны на фиг не упали в ближайшей перспективе, а вот другие фичи из 4.0 очень даже хороши. И красивые решения с обратной совместимостью с ходу не придумаешь. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 16:45 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad, да всё хорошо, кроме того что народу лень заранее готовится к переходу на новую версию. Привыкли backup/restore и заработало, ну или почти заработало. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 16:47 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов ДенисКстати там судя по всему будет забавный сюрприз. Вывели бы совместимость со стандартом в отдельный диалект (четвёртый). Текущий (третий) объявили бы устаревшим и создали бы классный пятый. Сомневаюсь что кто-то оценит такую поломку совместимости. Адриано лет 10 назад наверняка сам бы кого угодно приструнил за такое. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 16:52 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисс 4.0 CURRENT_TIME, CURRENT_TIMESTAMP будут возвращать TIME WITH TIMEZONE и TIMESTAMP WITH TIMEZONE. Может, они ещё прислушаются к голосу разума и отложат этот шаг на пятёрку, поскольку делать умолчанием необкатанную функциональность - редкостный авантюризм. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 16:55 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Все значимые аргументы нужно приводить в fb-devel. Где они ? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 17:14 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladВсе значимые аргументы нужно приводить в fb-devel. Где они ? Уже там были. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 17:22 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovhvladВсе значимые аргументы нужно приводить в fb-devel. Где они ? Уже там были.Значит не значимые ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 17:29 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, ты да, остальные удивлённые похоже fbdevel не читают ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 17:33 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Тема TimeZones от 30.04.2018 Вперёд, всёзнающие ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 17:38 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladВ 3.0.4 (и, возможно, в 2.5.9) специально добавятся LOCALTIME, LOCALTIMESTAMP, чтобы можно было заранее подготовиться. Что не так ? фигасе, радикалы :) зы. только хотел спросить, а где почитать про это можно и заодно пошшупать ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 18:25 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Док, кого ты там щупать собрался? LOCALTIME, LOCALTIMESTAMP? Так там ничего особенного, это просто синонимы CURRENT_TIME и CURRENT_TIMESTAMP, которые скоро появятся в 2.5 и 3.0. А если ты про тайм-зоны, то это пока не мержили в снапшоты 4.0. Если только сам собирать будешь https://github.com/FirebirdSQL/firebird/tree/1c7e25051015a6b1023d7a900ea62c98c247d141 Про новые типы https://github.com/FirebirdSQL/firebird/blob/1c7e25051015a6b1023d7a900ea62c98c247d141/doc/sql.extensions/README.time_zone.md ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 19:54 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Я правильно понимаю, что select current_timestamp at time zone '00' from rdb$database; получит текущее время в UTC? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 20:24 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Василий 2, Код: sql 1.
проще ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 20:32 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денис, такая ссылка лучше, зачем на какой-то коммит ссылаться https://github.com/FirebirdSQL/firebird/blob/work/time-zone-support/doc/sql.extensions/README.time_zone.md ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 20:41 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad, во! найти не смог правильную ссылку :( ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2018, 20:46 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денискоторые скоро появятся в 2.5 и 3.0. хорошо, у меня база в процессе проектирования. Дождусь следующего релиза тройки hvlad, за ссыль спасибо. Изменения уже будут в 3.0.4. - это точно? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.06.2018, 08:14 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
ДокИзменения уже будут в 3.0.4. - это точно?Скорее да, чем нет Описание тут https://github.com/FirebirdSQL/firebird/blob/work/time-zone-support-3.0/doc/README.time_zone_forward_compatibility.md ... |
|||
:
Нравится:
Не нравится:
|
|||
29.06.2018, 09:34 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Может быть добавить в firebird.conf настройку текущего часового пояса (отличного от системного)? Для совместимости со старым поведением CURRENT_TIME нужно будет поставить часовой пояс +0 ... |
|||
:
Нравится:
Не нравится:
|
|||
29.06.2018, 10:51 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Шавлюк Евгений, это не то. Типы всё равно разные будут, старые клиенты их не скушают. А CURRENT_TIME тебе вернёт то же самое время что и раньше, только допишет пояс сервера ... |
|||
:
Нравится:
Не нравится:
|
|||
29.06.2018, 10:55 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Шавлюк Евгений, TIME [WITHOUT TIMEZONE] и TIME WITH TIMEZONE это разные типы данных. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.06.2018, 10:59 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Шавлюк Евгений> Может быть добавить в firebird.conf настройку Сказали же нет, стандарт-с, привыкайте-с, возмущения в fb-devel-c. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
29.06.2018, 17:24 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad, https://github.com/FirebirdSQL/firebird/blob/work/time-zone-support-3.0/doc/README.time_zone_forward_compatibility.md кто-то грохнул документ. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2018, 14:56 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
kdv, Адриано смержил ветку time-zone-support-3.0 в B3_0_Release и удалил её. Теперь всё в B3_0_Release https://github.com/FirebirdSQL/firebird/blob/B3_0_Release/doc/README.time_zone_forward_compatibility.md ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2018, 15:34 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladkdv, Адриано смержил ветку time-zone-support-3.0 в B3_0_Release и удалил её. Теперь всё в B3_0_Release https://github.com/FirebirdSQL/firebird/blob/B3_0_Release/doc/README.time_zone_forward_compatibility.md Торпеды на подводных лодках хранятся в перевернутом состоянии, поэтому, во избежание путаницы, на верху торпеды написано "низ". ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2018, 15:37 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
pastor, ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2018, 15:38 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Сразу вспомнил анекдот о новом работнике, подписавшем "Х" и "П" хорошие и плохие материалы. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.07.2018, 15:44 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Добрый день! Сегодня установил FB4 из снапшотов (билд 1433). Когда залил базу из бекапа с FB2.5, при попытке подключиться получил subj. Посмотрел в папку - там имена icu*.dll заканчиваются на 63, типа icudt63, а в ранее установленной альфе (которая БД открывала нормально) - на 52. Скопировал все icu*52.dll из папки с альфой в папку с новым снапшотом - соединение прошло нормально. Это у меня с БД было что-то не так или так и должно быть? Кодировка БД Win1252. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2019, 19:49 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
dedRasta, Небось подцеляешься к базе которую ещё на альфе разворачивал? Базу надо разворачивать из бекапа заново. На этапе альфа->бета такое бывает ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2019, 19:52 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Требуется рантайм от студии 2017. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2019, 19:53 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов ДенисНебось подцеляешься к базе которую ещё на альфе разворачивал? Точно! ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2019, 20:02 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, кстати да. У меня просто VS 2017 установлена, поэтому и не заметил ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2019, 20:11 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
На десктопе Win7(x64) разархировал в папку архив Firebird-4.0.0.1433-0_x64.7z В папке запускаю из командной строки: Код: plsql 1.
Сервис создан и стартовал. Далее в той же папке выполняю команду: Код: plsql 1.
после долгого раздумья получаю ответ: Код: plsql 1. 2.
Копирую в папку файлы icu*52*.* из альфы (Firebird-4.0.0.1062-0_x64). Повторяю Код: plsql 1.
Все пролетает с песнями. После этого добавляю пользователей, восстанавливаю БД - все нормально. В логе, правда, ругается на часовые пояса: Код: plsql 1. 2. 3.
Но с этим буду разбираться дальше. Далее, согласно директиве Dimitry SibiryakovТребуется рантайм от студии 2017. скачиваю vc_redist.x64.exe и устанавливаю. Удаляю из папки файлы icu*52*.* и перезагружаюсь. Все работает нормально. Спасибо за помощь. Но есть вопрос: как называются и где лежат файлы, которые установил vc_redist.x64.exe, чтобы их можно было залить в папку вместо msvc*120.dll? Я что-то не смог найти. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 09:50 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
dedRasta, да не парся ты. К релизу нужные mvcr и так будут лежать где надо. А сейчас всё равно себе на пробу fb ставишь ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 09:59 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
dedRastaНо есть вопрос: как называются и где лежат файлы, которые установил vc_redist.x64.exe, чтобы их можно было залить в папку вместо msvc*120.dll?Там не так просто теперь. Кроме обычных vcruntime140.dll и msvcp140.dll нужны ещё и ucrtbase.dll + api-ms-crt-XXX.dll (ищи их в system32). ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 11:56 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad, эти dll в итоге будут включены в снапшоты, или просто теперь будет написано в readme что надо устанавливать msvc 2017 студии? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 11:59 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Это Update for Universal C Runtime in Windows - уже (давно) должно быть (у всех) установлено. Ну или даже "в образ закатано". ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 12:01 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денис, в снапшоты пока не включали, посмотрим что будет в инсталляторе беты. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 12:18 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
рядом с бинарниками ФБ будут vcruntime140.dll и msvcp140.dll, плюс отдельно будет redist. Устанавливать Universal CRT (если ее нет) придется самостоятельно. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 12:24 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
dimitr, вы на сборку 2015 студией переходите или будет лежать два набора рантаймов? Просто в снапшотах лежат ещё msvc*120.dll ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 12:38 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
снапшоты допилим попозже, там пока не установлен MSVC17 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 13:02 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
dimitrснапшоты допилим попозже, там пока не установлен MSVC17 У MS на сайте доступны какие-то "Build Tools", типа, как раз и предназначенные для сборки софта на серверах, где студии нет. И Пол в девеле вроде бы написал инструкции по их использованию. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 13:21 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, Пол писал про необходимые галочки при установке студии ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 13:22 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Значит он не понял вопроса и придётся экспериментировать самостоятельно. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 13:31 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, он написал, что именно надо включить/выключить, чтобы не ставить "whole Visual Studio". Что именно ты понимал под "whole" ему неведомо. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 13:33 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
dimitrЧто именно ты понимал под "whole" ему неведомо. Я под этим понимал то, что не "Build Tools". Видимо, не стоило выпендриваться и растекаться по древу. Сейчас попробую ещё раз. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2019, 13:46 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
сегодняшние снапшоты уже собраны MSVC17 и включают минимально достаточный рантайм ... |
|||
:
Нравится:
Не нравится:
|
|||
16.02.2019, 13:05 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
через ISQL всё работает хорошо. Однако, если я пытаюсь выполнить в IBExpert запрос Код: sql 1.
вываливается ошибка Код: plaintext 1. 2. 3. 4. 5.
Firebird 4.0 Beta 1 x64. Для 32-битного клиента выделена отдельная папка в которую всё что нужно включено msvcp140.dll vcruntime140.dll icudt63.dll icuin63.dll icuuc63.dll icudt63l.dat firebird.msg Одновременно на разных портах установлены Firebird 2.5 и 3.0. В чём может быть дело? Дополнительные подробности тут https://www.sql.ru/forum/1309674-1/firebird-4-pro-nego-poka-pishite-suda ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2019, 17:24 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов ДенисВ чём может быть дело? В том, что поиск ICU сделан... хммм... затейливо и, вероятнее всего, первой находится уже загруженная библиотека от старого сервера. Process Monotor и Explorer покажут подробности процесса. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2019, 19:32 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, похоже ты прав. Посмотрел process explorer никаких icu*63 не подгружается, зато видно что подгружены icu*30 которые используются Firebird 2.5 embedded для БД настроек. Попробовал отрубить User Database в IBE и всё заработало. В общем процесс поиска ICU в 4.0 надо бы доработать ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2019, 09:46 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денис, напиши в fb-devel, плс ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2019, 11:55 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad, сделал, надеюсь не правильно описал проблему ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2019, 12:18 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денис, Спасибо. И - там ты написал лучше, чем здесь :) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2019, 12:27 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов ДенисПосмотрел process explorer никаких icu*63 не подгружается, зато видно что подгружены icu*30 которые используются Firebird 2.5 embedded для БД настроек. За это скажи "спасибо" Адриано, который начинает сканирование всех возможных и невозможных версий ICU начиная с младших. Хотя по идее 63 указана как "предпочтительная", так что должна бы пробоваться первой. Но, очевидно, что-то пошло не так... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2019, 13:42 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, да я удочку закинул, разберутся. Это ж не релиз ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2019, 13:46 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисда я удочку закинул, разберутся. Тема поиска ICU поднималась Владом ещё месяц или два назад. Как обычно всё заглохло сразу как только дошло до стадии "сесть и начать кодить". Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2019, 13:52 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, авторЗа это скажи "спасибо" Адриано, который начинает сканирование всех возможных и невозможных версий ICU начиная с младших. там дело даже не в том как поиск идёт, а в том что другая версия ICU загружена раньше. Пока не было часовых поясов было как то всё равно. По идее те же проблемы должны были ещё в 3.0 существовать, но там для fbclient icu видимо не так уж и требовалась. А в 4.0 декодировать часовые пояса по их названиям без ICU никак. А серверу по идее должно быть всё равно, он грузит ровно одну версию ICU, там нет варианта другая ICU уже загружена. В приложении это надо решать в любом случае. Даже если оно не будет грузить другие fbclient/fbembedded, то само приложение может требовать ICU через другие библиотеки. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2019, 14:04 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денистам дело даже не в том как поиск идёт, а в том что другая версия ICU загружена раньше. У сервера нет возможности получить список уже загруженных библиотек, так что дело именно в поиске. Судя по коду, сначала должна пытаться загружаться версия 63 (для свежих снапшотов), а если что-то этому помешало, то дважды пробуются все 1770 вариантов пока один из них не сработает. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2019, 14:08 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов ДенисА в 4.0 декодировать часовые пояса по их названиям без ICU никак.Ты уверен в этом ? Я не вникал, но если это так, то зависимость клиента от наличия ICU - совсем не хорошо. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2019, 14:12 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad, Всё началось вот тут https://www.sql.ru/forum/1309674-1/firebird-4-pro-nego-poka-pishite-suda Александр никак не мог правильно декодировать часовые пояса, на что я посоветовал ему воспользоваться (IUtil.decodeTimeTz) UtilInterface::decodeTimeTz. И только тогда всплыла проблема с ICU. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2019, 14:21 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
То есть теперь для клиента, даже если он не использует таймзоны или локали, требуется тащить три вагона всяких либ? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2019, 14:52 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Василий 2, нет. Пока значение типа TIME[STAMP] WITH TIME ZONE не дёргаешь ICU не нужна клиенту. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2019, 17:03 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов ДенисВасилий 2, нет. Пока значение типа TIME[STAMP] WITH TIME ZONE не дёргаешь ICU не нужна клиенту. Фух! Гора с плеч ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2019, 17:42 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Василий 2, я бы на твоём месте не радовался преждевременно. Намучаешься ещё с CURRENT_TIMESTAMP, CURRENT_TIME ... |
|||
:
Нравится:
Не нравится:
|
|||
17.05.2019, 18:24 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов ДенисВасилий 2, я бы на твоём месте не радовался преждевременно. Намучаешься ещё с CURRENT_TIMESTAMP, CURRENT_TIME В моем случае это применяется очень редко, а где применяется - мне как раз намного удобнее UTC ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2019, 10:28 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Может кто-нибудь по-человечески объяснить, как правильно положить dll-ки и заставить отработать запрос Код: sql 1.
В наличии: winsrv2012R2 x64 - чистый, только для тестов Fb4, предыдущих версий Firebird не устанавливал Firebird 4.0.0.1436 x64 В c:\Program Files\Firebird\Firebird_4_0\ есть icu*63.dll, msvcp100.dll, msvcp140.dll, msvcr100.dll В c:\Program Files\Firebird\Firebird_4_0\WOW64\ есть msvcp140.dll Через isql все запросы с timezone выполняет нормально. Подключаюсь локально, для подключения использую C:\Program Files\Firebird\Firebird_4_0\WOW64\fbclient.dll version 4.0.0.1436 подключаюсь IBExpert 2019.6.4.1 в ibexpert\IBEUDB\ есть icu*30.dll, msvc*80.dll, msvc*100.dll На выполнении запроса падает с ранее упомянутой ошибкой: SQLCODE: -902 GDSCODE: 335545167 Process Explorer показывает, что IBExpert пользует icu*30.dll, в то время как firebird.exe подгрузил icu*63.dll Попробовал установить свежий HQBird Firebird Admin 2018R4, SQL Studio build 6.0.2.504 В списке серверов нет Fb4. Использую ту же клиентскую библиотеку, регистрирую бд как fb3 Process Explorer показывает, что FirebirdSQLStudio.exe использует c:\Program Files (x86)\IBSurgeon\HQBird Firebird Admin 2018R4\FirebirdSQLStudio\icu*30.dll Выполнение запроса завершается ошибкой Unknown SQL Data type (32754) Как заставить клиента использовать нужные библиотеки? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2019, 15:54 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
alex deeepзаставить отработать запрос Замени current_timestamp на localtimestamp. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2019, 16:12 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
alex deeepподключаюсь IBExpert 2019.6.4.1 в ibexpert\IBEUDB\ есть icu*30.dll, msvc*80.dll, msvc*100.dll На выполнении запроса падает с ранее упомянутой ошибкой: SQLCODE: -902 GDSCODE: 335545167 Process Explorer показывает, что IBExpert пользует icu*30.dll, Это не сам эксперт, это firebird embedded, который живет в ibexpert\IBEUDB\. Попробуй нормальный сервер поднять для работы с IBExpert UserDatabase. Меня тоже интересует, как разруливать эту проблему. Юзеры уже начинают спрашивать. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2019, 16:14 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
alex deeepПодключаюсь локально, для подключения использую C:\Program Files\Firebird\Firebird_4_0\WOW64\fbclient.dll в этой папке не хватает 32-битных версий icu*63.dll и icudt63l.dat Лично я скачал снапшот 32-битного Fb 4.0 и скопировал все необходимые клиентские библиотеки в отдельную папку. Можешь засунуть icu файлы в Firebird_4_0\WOW64 от 32 снапшота ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2019, 17:04 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисв этой папке не хватает 32-битных версий icu*63.dll и icudt63l.dat Т.е., это просто инсталлятор недовешивает? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2019, 06:13 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
IBExpert, раз теперь клиенту требуется icu, то наверное да, инсталлятор не доделан ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2019, 16:09 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисраз теперь клиенту требуется icuТы в этом на 100% уверен ? У меня всё никак не дойдут руки проверить. Можешь выяснить, в каком случае нужен ICU, что происходит если его нет - и описать это всё в f-d ? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2019, 16:48 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad, так писал уже Сейчас icu дёргается в UtilInterface::decodeTimeTz() и UtilInterface::decodeTimestampTz() AdrianoI suppose that any "real" dependency here is to transform TZ-id to string and vice-versa. As that is present in IUtil, changing that to require the server (or transform IDs to string in data structures and wire protocol) would be a significant architecture change that for me is going to make things worse in the end. Могу конечно освежить ту тему, но просто не знаю что уж ещё туда писать. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2019, 17:14 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов ДенисМогу конечно освежить ту тему, но просто не знаю что уж ещё туда писать.Тебе нравится эта новая зависимость ? Напиши об этом. Пусть включает мозги. Если я его пну - будет флейм о чём угодно, но только не об этом ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2019, 17:23 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad, не нравится конечно. Описал проблему alex deeep может с этой стороны проще будет убедить ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2019, 18:03 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денис, спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
08.06.2019, 19:40 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovЗамени current_timestamp на localtimestamp. С этим как раз все хорошо. Я именно с таймзонами хочу делать тесты. Симонов Денисв этой папке не хватает 32-битных версий icu*63.dll и icudt63l.dat Лично я скачал снапшот 32-битного Fb 4.0 и скопировал все необходимые клиентские библиотеки в отдельную папку. Можешь засунуть icu файлы в Firebird_4_0\WOW64 от 32 снапшота Спасибо, так и сделал. Теперь клиент подхватывает эти библиотеки. И, да, 64х инсталятор не содержит 32хбитных icu*63.dll IBExpertЭто не сам эксперт, это firebird embedded, который живет в ibexpert\IBEUDB\. Попробуй нормальный сервер поднять для работы с IBExpert UserDatabase. Указал Эксперту работать с UserDatabase на сервере и использовать другую dll, и всё сработало. Спасибо! Примечание : HQBird SQL Studio библиотеки так не подхватывает, продолжает тянуть свои icu*30.dll ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2019, 16:12 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
alex deeepИ, да, 64х инсталятор не содержит 32хбитных icu*63.dll с этим не стоит торопиться, может нам с Владом ещё удастся убедить Адриано сделать по человечески ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2019, 16:16 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
alex deeep, загляни сюда: 21890968 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2019, 16:22 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисalex deeepИ, да, 64х инсталятор не содержит 32хбитных icu*63.dll с этим не стоит торопиться, может нам с Владом ещё удастся убедить Адриано сделать по человеческиВ каком смысле "по-человечески"? Это же обычные shared library, используемые множеством программ и, соответственно, должны находится в соответствующем каталоге системы. Таская их пачками за каждым проектом теряем весь смысл shared library. По хорошему, надо проверять - лежат ли эти библиотеки в соответствующем каталоге системы и при необходимости их туда копировать. На венде вообще можно использовать систему side-by-side, но, к сожалению, она не портабельна, хотя, ничто не мешает на Линухе создавать хардлинки к нужным версиям файлов shared библиотек из каталога приложения. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2019, 16:30 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисможет нам с Владом ещё удастся убедить Адриано сделать по человечески Это хоть раз хоть кому-то за всю историю удалось? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2019, 16:39 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, в линуксах как раз никаких проблем с ICU нет. А вот таскать ICU вместе с клиентом fbclient.dll в Windows как-то не очень хочется. Тем более получается что при установке глобального fbclient.dll придётся ещё и копировать соответствующие ICU ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2019, 16:39 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
alex deeepПримечание: HQBird SQL Studio библиотеки так не подхватывает, продолжает тянуть свои icu*30.dll насколько я знаю он ещё не готов для работы с 4.0. IBExpert хотя бы здесь обитает, и я помню как лично долго и упорно с ним обсуждал каким образом работать с тайм-зонами. Это не самая простая задача. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2019, 16:59 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисв линуксах как раз никаких проблем с ICU нет... потому, что там они устанавливаются как системный пакет. С ньюансами для Debian-based.А вот таскать ICU вместе с клиентом fbclient.dll в Windows как-то не очень хочетсяА какие, собственно варианты? Статически собирать fbclient с нужной версией icu?Тем более получается что при установке глобального fbclient.dll придётся ещё и копировать соответствующие ICUА ещё глобальному fbclient требуется рантайм видимостудии. Ну добавится в этот комплект ещё dll-ек - в чём проблема-то? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 06:56 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Basil A. SidorovСтатически собирать fbclient с нужной версией icu? воткнуть эти две несчастные функции в fbclient. а не вызывать их из icu. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 07:40 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Basil A. Sidorov, ты просто ещё не внимательно разбирался с тайм-зонами. Там помимо uci dll требуется ещё и файлик icudt63l.dat в котором собственно и содержится база данных часовых поясов. Часовые пояса имеют свойство меняться время от времени (как у нас в стране с непонятным законодательством). Если делать как предлагает rdb_dev, то я думаю ему будет очень весело в один прекрасный день обновлять в системном каталоге этот файлик на 300 рабочих местах. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 09:26 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисrdb_dev, в линуксах как раз никаких проблем с ICU нет. А вот таскать ICU вместе с клиентом fbclient.dll в Windows как-то не очень хочется. Тем более получается что при установке глобального fbclient.dll придётся ещё и копировать соответствующие ICUВ линухах без проблем, потому что эти библиотеки ставятся из репозитория при установке FirebirdSQL из пакета и определения зависимостей пакетов. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 10:23 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисты просто ещё не внимательно разбирался с тайм-зонами. Там помимо uci dll требуется ещё и файлик icudt63l.dat в котором собственно и содержится база данных часовых поясов. Часовые пояса имеют свойство меняться время от времени (как у нас в стране с непонятным законодательством).Да, когда я разбирался с проблемой, то обратил внимание на присутствие DAT файла в дистрибутиве ФБ и ещё тогда подумал о том, что данный файл, возможно, тоже нужен, но мне было лень опять лезть в телефон, качать ещё один пакет и перебрасывать его на комп по USB, так как в нашей конторке из-за СБ доступ по HTTPS через "Ж" и я не даже могу по-человечески скачать файл с облака amazonaws.com. Симонов ДенисЕсли делать как предлагает rdb_dev, то я думаю ему будет очень весело в один прекрасный день обновлять в системном каталоге этот файлик на 300 рабочих местах.Какая разница - обновлять программу в каталоге, либо программу в каталоге + обновлять библиотеки в системном каталоге? Прописал логон-скрипт на вход пользователя и скриптом под учёткой системы распихал нужные файлы по нужным каталогам. Делов-то... Для удалённых клиентов вообще можно использовать старый, добрый фидошный binkd через VPN. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 10:37 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов ДенисТам помимо uci dll требуется ещё и файлик icudt63l.datПро это я уже в курсе и даже в курсе про разницу между "большим" icu*dat и "маленьким" icu*empty.dat.Если делать как предлагает rdb_dev, то я думаю ему будет очень весело в один прекрасный день обновлять в системном каталоге этот файлик на 300 рабочих местах.Это точно также (не)весело, как и обновление в этом же каталоге fbclient.dll и вообще как и любые обновления на клиентских местах. И, в этом смысле, проблем не вижу: если процедура массовых клиентских обновлений отлажена, то ситуация никак не изменится, если не отлажена - тоже не изменится. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 12:03 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_devПрописал логон-скрипт на вход пользователяВот только не надо в очередной раз учить плохому. Обновления делаются на уровне системы, а не пользователя. Dixie. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 12:05 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Basil A. SidorovА какие, собственно варианты? Статически собирать fbclient с нужной версией icu? Выкинуть ICU и использовать WinAPI функции. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 12:39 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
11.06.2019 12:39, Dimitry Sibiryakov пишет: > Выкинуть ICU и использовать WinAPI функции. +500 Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 12:42 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovBasil A. SidorovА какие, собственно варианты? Статически собирать fbclient с нужной версией icu? Выкинуть ICU и использовать WinAPI функции.На линуксе это будет особенно хорошо работать. PS Win10 уже включает в себя ICU, правда старую версию. Но нам это мало помогает, увы. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 12:48 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladНа линуксе это будет особенно хорошо работать. Новая политика партии уже запрещает функции с реализацией, обнесённой "#ifdef __WIN32__"? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 12:52 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
11.06.2019 12:48, hvlad пишет: > PS Win10 уже включает в себя ICU, правда старую версию. > Но нам это мало помогает, увы. плевать на Win10. ХР живее всех живых! Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 12:52 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, а оно будет работать? Идентификаторы часовых поясов стандартизированы и одинаковы в ICU и WinAPI? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 12:59 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovhvladНа линуксе это будет особенно хорошо работать. Новая политика партии уже запрещает функции с реализацией, обнесённой "#ifdef __WIN32__"?Моя твоя не понимает. Что именно ты предлагаешь заменить на WinAPI ? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:02 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов ДенисИдентификаторы часовых поясов стандартизированы и одинаковы в ICU и WinAPI? Понятия не имею. Но если кое-кто использовал "чисто ICU-шные" идентификаторы вместо стандартных - ССЗБ, ему придётся составлять таблицу соответствия. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:02 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов ДенисDimitry Sibiryakov, а оно будет работать? Идентификаторы часовых поясов стандартизированы и одинаковы в ICU и WinAPI?Очень сильно в этом сомневаюсь. Очень. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:02 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovСимонов ДенисИдентификаторы часовых поясов стандартизированы и одинаковы в ICU и WinAPI? Понятия не имею. Но если кое-кто использовал "чисто ICU-шные" идентификаторы вместо стандартных - ССЗБ, ему придётся составлять таблицу соответствия.И что такое "стандартные" по твоему ? И что ты скажешь, если вдруг стандарной окажется сисема из ICU ? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:04 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Basil A. Sidorovrdb_devПрописал логон-скрипт на вход пользователяВот только не надо в очередной раз учить плохому. Обновления делаются на уровне системы, а не пользователя. Dixie.Если мне не изменяет память, логон-скрипт отрабатывает от имени учётки локальной системы, но инициируется да - входом пользователя. На самом деле, с современным шедулером венды запустить скрипт от имени администратора привязавшись к старту какой-нибудь службы не составляет труда. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:07 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
11.06.2019 12:59, Симонов Денис пишет: > Идентификаторы часовых поясов стандартизированы и одинаковы в ICU и WinAPI? "нет в мире таких крепостей, которых большевики не могли бы взять" (С) - И. В. Сталин Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:08 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Мимопроходящийплевать на Win10. ХР живее всех живых!При учёте, что хрюшка давно снята с поддержки и к ней более не выпускаются заплатки безопасности? Не, дружище, дохтар сказал в морг - значит в морг! ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:09 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladЧто именно ты предлагаешь заменить на WinAPI ? Реализацию функций decodeTimeTz() и decodeTimestampTz() ради которой клиенту и требуется ICU. hvladИ что ты скажешь, если вдруг стандарной окажется сисема из ICU ? Что нужна встроенная в клиент таблица или функция перевода этой системы в TIME_ZONE_INFORMATION, используемый для работы TzSpecificLocalTimeToSystemTime(). Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:11 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
МимопроходящийХР живее всех живых!4-ка на ней уже не факт, что будет работать. Хотя... клиент может и будет. Но не нужно на это рассчитывать. В любом случае, есть ещё Win7, которая будет есть ещё лет 5-7 как минимум, имхо ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:13 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
11.06.2019 13:11, Dimitry Sibiryakov пишет: > Что нужна встроенная в клиент таблица или функция перевода этой системы в > TIME_ZONE_INFORMATION, используемый для работы TzSpecificLocalTimeToSystemTime(). +1 у Оракела, кстати, оно таки реализовано задолго до появления всяких там ICU. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:15 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovhvladЧто именно ты предлагаешь заменить на WinAPI ? Реализацию функций decodeTimeTz() и decodeTimestampTz() ради которой клиенту и требуется ICU.Ты демагог или просто поржать вышел ? Есть ещё 3-ий вариант, но я пока его придержу... Dimitry SibiryakovhvladИ что ты скажешь, если вдруг стандарной окажется сисема из ICU ? Что нужна встроенная в клиент таблица Если встраивать в клиент таблицу, то что он должен делать когда она отстанет от сервера ? Dimitry Sibiryakovили функция перевода этой системы в TIME_ZONE_INFORMATION, используемый для работы TzSpecificLocalTimeToSystemTime().На каком принципе должна основываться такая "функция перевода" ? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:20 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
На самом деле, ID региона можно легко превратить в ASCII название региона и без ICU. Эти ID - чисто наше понятие (как выяснилось при изучении кода) и таблица соответствия кодов названиям тоже наша. Это не снимает проблемы старого клиента и нового сервера, но пока отложим этот момент. Т.е. проблема не в том, чтобы найти имя региона. Проблема в том, чтобы вычислить смещение в данном регионе в данный момент времени от UTC, т.к. время передаётся именно в UTC. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:40 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladТы демагог или просто поржать вышел ? Тебя весь топик послать перечитывать или достаточно http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1276348&msg=21905188 ? hvladЕсли встраивать в клиент таблицу, то что он должен делать когда она отстанет от сервера ? Что должен делать клиент если его версия не соответствует версии сервера... Интересный риторический вопрос. Можно, я отвечу "с громкими воплями в падать в панику"? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:41 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovТебя весь топик послать перечитывать или достаточно https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1276348&msg=21905188 ?Это чушь, см выше Dimitry SibiryakovЧто должен делать клиент если его версия не соответствует версии сервера... Интересный риторический вопрос. Можно, я отвечу "с громкими воплями в падать в панику"?Это ты своему другу Адриане расскажи, его код именно так сейчас и работает. Независимо от версии сервера - это бонус ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:43 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
11.06.2019 13:13, hvlad пишет: МП>> ХР живее всех живых! > 4-ка на ней уже не факт, что будет работать. > Хотя... клиент может и будет. > Но не нужно на это рассчитывать. а 3-м клиентом к ней можно будет цепляться? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:44 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Мимопроходящий11.06.2019 13:13, hvlad пишет: МП>> ХР живее всех живых! > 4-ка на ней уже не факт, что будет работать. > Хотя... клиент может и будет. > Но не нужно на это рассчитывать. а 3-м клиентом к ней можно будет цепляться?Конечно. И 2-ым тоже. Но новые типы данных они не поймут. PS для таких есть set time zone bind legacy, кстати ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:45 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladВ любом случае, есть ещё Win7, которая будет есть ещё лет 5-7 как минимум, имхоИ не мечтай! Поддержка Windows 7 завершается Жизненный цикл Windows 7 Service Pack 1 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:49 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladего код именно так сейчас и работает. О его коде у меня уже давно не осталось цензурных выражений. Как и об архитектурных решениях. Например, в пределах данного топика, это решение вообще добавить названные функций в API. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:56 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
11.06.2019 13:45, hvlad пишет: МП>> а 3-м клиентом к ней можно будет цепляться? > > Конечно. И 2-ым тоже. > Но новые типы данных они не поймут. есть мнение, и не только моё, (С) что большинству контор, которые используют FB, тайм-зоны мягко говоря неактуальны. а вот BIGINT в 1-м диалекте таки необходим всем, кто 1-й диалект юзает. есть ли шансы надеяться? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 13:56 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovО его коде у меня уже давно не осталось цензурных выражений.У тебя их нет ни для кого, я знаю. Это не показатель :) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 14:02 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Мимопроходящийа вот BIGINT в 1-м диалекте таки необходим всем, кто 1-й диалект юзает. есть ли шансы надеяться?Не знаю. Если так сильно надо - пинайте трекер и fb-devel ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 14:03 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
11.06.2019 14:03, hvlad пишет: МП>> а вот BIGINT в 1-м диалекте таки необходим всем, МП>> кто 1-й диалект юзает. МП>> есть ли шансы надеяться? > > Не знаю. > Если так сильно надо - пинайте трекер и fb-devel в трекере оно есть http://tracker.firebirdsql.org/browse/CORE-5669 может не так оформлено? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 14:28 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Мимопроходящийв трекере оно есть http://tracker.firebirdsql.org/browse/CORE-5669 может не так оформлено?Значит нужно привлекать к нему внимание. В трекере есть много хотелок, на всех нас не хватает. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 14:35 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
11.06.2019 14:35, hvlad пишет: > Значит нужно привлекать к нему внимание. в "тут", это мы завсегда. а в "там" вести дискуссию - у-вы. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 15:20 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Мимопроходящийесть мнение, и не только моё, (С) что большинству контор, которые используют FB, тайм-зоны мягко говоря неактуальны. Если не считать актуальной проблемой необходимость иметь 9 серверов с FB для каждой таймзоны, то в принципе можно нормально работать. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 16:07 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
alex deeepЕсли не считать актуальной проблемой необходимость иметь 9 серверов с FB для каждой таймзоны, то в принципе можно нормально работать.Позволь полюбопытствовать - чем обоснована сия необходимость? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 16:11 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_devчем обоснована сия необходимость? Ленью работать с UTC. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 16:23 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
11.06.2019 16:23, Dimitry Sibiryakov пишет: > Ленью работать с UTC. для меня было откровением, когда обнаружил что Linux перенастраивает системные часики (те что в BIOS) с локального времени на UTC. имхо, это таки правильно. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 16:28 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_devПозволь полюбопытствовать - чем обоснована сия необходимость? Логикой работы, когда разрешение на изменение объекта зависит от current_timestamp сервера. Т.е., образно, в объект можно внести изменения только пока в Новосибирске от 12:00 до 14:00. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 17:24 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Мимопроходящийдля меня было откровением, когда обнаружил что Linux перенастраивает системные часики (те что в BIOS) с локального времени на UTC. имхо, это таки правильно.Это поведение по умолчанию, которое, естественно, можно изменить даже при установке из инсталлятора системы (в некоторых дистрибутивах). ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2019, 19:30 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovО его коде у меня уже давно не осталось цензурных выражений. Как и об архитектурных решениях. Например, в пределах данного топика, это решение вообще добавить названные функций в API.Меня несколько смущает, на мой взгляд, не достаточно продуманное решение Андреаса с часовыми поясами. Чего проще было не трогать существующий функционал штампа времени, добавить новый тип данных - 'UNIVERSAL TIMESTAMP', который предполагал бы хранение штампа времени исключительно по UTC без нагрузки в два байта, а также добавить новый функционал в виде: таблицы часовых поясов, установку/получение часового пояса для соединения? Зная часовой пояс сервера и часовой пояс клиента, сервер прекрасно конвертировал бы данные из одного типа в другой - 'TIMESTAMP'<->'UNIVERSAL TIMESTAMP' без двух байт в штампе на хранение часового пояса. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 09:53 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, в сад. Не надо добавлять нестандартные говнотипы ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 09:57 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_devа также добавить новый функционал в виде: таблицы часовых поясов, установку/получение часового пояса для соединения? вот получается что ты даже текущую реализацию не смотрел. Такая таблица уже есть, только она более хитрая чем ты думаешь, и для неё требуется icu63.dat ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 10:07 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисrdb_devа также добавить новый функционал в виде: таблицы часовых поясов, установку/получение часового пояса для соединения? вот получается что ты даже текущую реализацию не смотрел. Такая таблица уже есть, только она более хитрая чем ты думаешь, и для неё требуется icu63.datСмотрел и знаю, что там есть и выставление часового пояса подключения и таблица часовых поясов. Кстати, в существующем функционале не хватает Extract(TIMEZONE_ID FROM ...) и не хватает получения из контекстной переменной строки-идентификатора часового пояса подключения (либо я этого не нашёл). ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 10:11 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисrdb_dev, в сад. Не надо добавлять нестандартные говнотипыНу да, добавить говнотип из 10-ти байт, конечно же, лучше! ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 10:12 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, ещё раз повторяю. Firebird ориентирован по большей части на SQL стандарт. Нет в стандарте твоего "чудесного" типа. И таки да, типы с часовым поясом по стандарту обязаны нести информацию не только о времени, но и о часовом поясе. Меня в текущей реализации беспокоит даже не столько зависимость клиента от ICU, что уже не хорошо, но терпимо, сколько то, что таблица часовых поясов не централизована. А два лишних байта это не так уж и страшно, кому информация о часовом поясе не нужна всегда могут воспользоваться старыми типами без тайм-зон. Вон DECFLOAT(34) занимает аж 16 байт и ничего страшного. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 10:37 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денис, тогда мне не понятно - почему вместо стандартного функционала SCHEMA был использован нестандартный оракловский PACKAGE. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 11:18 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_devСимонов Денис, тогда мне не понятно - почему вместо стандартного функционала SCHEMA был использован нестандартный оракловский PACKAGE. это перпендикулярные фичи ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 11:31 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, потому что SCHEMA <> PACKAGE И предназначены для совершенно разных целей. В Oracle есть и то и другое. В плане процедурного языка стандарт сильно отстал, там вообще ХП появились спустя 10 лет, после того как все основные СУБД уже внедрили данный функционал. MySQL единственные кто опирался на стандарт, но язык ХП у них полное г... ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 11:33 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисс этим не стоит торопиться, может нам с Владом ещё удастся убедить Адриано сделать по человечески Похоже, попытка провалилась. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 19:11 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, не удивительно. Впрочем при желании можно и не использовать UtilInterface::decodeTimeTz() и UtilInterface::decodeTimestampTz(), а юзать rdb$time_zone_util.transitions + RDB$TIME_ZONES. Но это полностью на совести компонентописателей. В последнем случае и ICU на клиенте не потребуется. А вот удалять UtilInterface::decodeTimeTz() и UtilInterface::decodeTimestampTz() не надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 19:43 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Дениспри желании можно и не использовать UtilInterface::decodeTimeTz() и UtilInterface::decodeTimestampTz() То есть повторяется история со старыми isc_encode/decode_timestamp(), которые формально есть, но пользоваться ими не надо, ибо кривые от рождения. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 21:11 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, ну я вот почитал обсуждения в devel и никаких разумных предложений не увидел. Тогда уж лучше так как есть чем совсем никак ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 21:27 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денися вот почитал обсуждения в devel и никаких разумных предложений не увидел Предложение Влада, по-моему, вполне ништяк. Приложение получает идентификатор и смещение, а дальше вольно делать с ними всё, что угодно. Вышеназванные функции идут лесом, для получения названий часовых поясов используется либо таблица на сервере, либо захаркоденная. Второе удобнее, ибо решает ещё и проблему с локализацией. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 21:40 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, а... это да, я за ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 21:48 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисэто да, я за Там даже Кейн был не против, что весьма редкое явление. Хотя я так и не понимаю зачем ему в исторических данных секундная точность смещения у пояса. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 22:32 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovСимонов Денисс этим не стоит торопиться, может нам с Владом ещё удастся убедить Адриано сделать по человечески Похоже, попытка провалилась.Я так не считаю пока что ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 23:14 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovПриложение получает идентификатор и смещение, а дальше вольно делать с ними всё, что угодно.Я пока что не вижу обоснования - почему приложение вообще получает время в UTC. Так что, пока меня не убедят в том, что так и надо - я считаю что нужно на клиента передавать региональное время, как оно было изначально. И, есс-но, с клиента тоже передавать региональное время, а сервер уже сам пусть его превращает в UTC для хранения и сравнения. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 23:16 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladЯ так не считаю пока что Я буду мысленно болеть за тебя. Удачи. PS: На твой вопрос в девеле "почему UTC": боюсь, что за это в ответе я. Когда это ещё только обсуждалось, я был молод и наивен, а потому написал "UTC + offset, что может быть проще?" Ну, внезапно Адриано повёлся. Хотя именно в форме "нечто + смещение" это сугубо всё равно. Что напишете в доке, то и ладненько. Проблема выползла когда Адриано начал выдавать ид вместо смещения. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 23:24 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladя считаю что нужно на клиента передавать региональное время, как оно было изначально. Тут есть один нюанс: когда время передаётся в виде литерала в запроса, оно, конечно, удобнее региональное. Ибо читабельность. А вот в бинарной форме через API будет удобнее UTC тупо потому, что time() его возвращает и не надо париться с дальнейшим переводом в localtime(). Хотя, конечно, на вкус и цвет фломастеры разные, но я придерживаюсь паттерна KISS... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 23:28 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladЯ пока что не вижу обоснования - почему приложение вообще получает время в UTC. Так что, пока меня не убедят в том, что так и надо - я считаю что нужно на клиента передавать региональное время, как оно было изначально. И, есс-но, с клиента тоже передавать региональное время, а сервер уже сам пусть его превращает в UTC для хранения и сравнения. теоретически время в UTC может потребоваться если клиент решит преобразовать его в другой часовой пояс, не тот что пришёл с сервера. Других случаев я не вижу ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 23:48 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денис можно тебя попросить написать тикет в трекер, чтобы добавили контекстную переменную 'TIME_ZONE', хранящую строковый идентификатор часового пояса, в пространства имён 'SYSTEM'(часовой пояс сервера) и 'USER_SESSION'(часовой пояс клиента)? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 09:27 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, сам не умеешь что ли? Вроде уже тикеты писал ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 09:34 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денис, по всей видимости, я малопонятно формулирую. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 09:55 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, чтобы я захотел за кого-то оформить тикет меня надо убедить в его необходимости. Давай сначала с понятиями разберёмся. С точки зрения сервера никакого клиентского часового пояса нет. Есть часовой пояс установленный для сессии. Серверного часового пояса вроде как нет совсем, есть часовой пояс который ставится для сессии по умолчанию, если иное указание не пришло с клиента. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 10:11 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денис, тогда почему: Код: plsql 1. 2.
возвращает правильное значение UTC для сервера, стоящего на ОС в которой выбран часовой пояс 'Europe/Moscow', при том, что клиент, сделавший SET TIME ZONE 'UTC', на том же самом сервере? Код: plaintext 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 10:25 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
UTC обеспечивает монотонно возрастающую последовательность удобную для сравнений. Технически, в базе лучше хранить именно UTC. Проблема, как я её понимаю: UTC отличается точкой отсчёта от "времени InterBase" - потребуется обновление всех существующих значений времени в полях записей базы или учёт сдвига в зависимости от используемого варианта времени. Локальное время или время в заданном часовом поясе удобно или даже необходимо при работе с литералами. Проблемы, как я их понимаю: 1. Клиент может работать с неверным UTC из-за некорректной установки часового пояса и отсутствия синхронизации с серверами точного времени; 2. Клиент может неверно вычислять смещение от UTC из-за некорректной базы часовых поясов; 3. Эти две проблемы могут комбинироваться. Лично я считаю, что клиент должен передавать на сервер три элемента: 1. UTC, вычисленное клиентом; 2. Смещение локального времени клиента для этого момента UTC; 3. Идентификатор часового пояса на котором клиент делал вычисления. Чтобы не хранить длинные строки идентификаторов часовых поясов предлагается добавить системную таблицу, где будут храниться "код, идентификатор часового пояса". Напомню, на всякий случай, что идентификатор это "Страна/Место" и их может быть сильно больше 256. Таблицу добавить или в security.db (server-wide) или индивидуально в каждую базу. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 10:38 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
14.06.2019 10:38, Basil A. Sidorov пишет: > Проблема, как я её понимаю: UTC отличается точкой отсчёта от "времени InterBase" - > потребуется обновление всех существующих значений времени в полях записей базы > или учёт сдвига в зависимости от используемого варианта времени. дык тип данных новый, а не старый. старое как жило, так и нехай себе. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 13:42 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Basil A. SidorovЛично я считаю, что клиент должен передавать на сервер три элемента: 1. UTC, вычисленное клиентом; 2. Смещение локального времени клиента для этого момента UTC; 3. Идентификатор часового пояса на котором клиент делал вычисления.Почему клиент должен корячиться вычисляя UTC, и зачем серверу смещение, вычисленное клиентом (при условии наличия (3)) ? Вот я, как клиент, имею БД, хранящую некоторые события, и записываю, что конференция в Бразилии начнётся 3.08.2019 в 9:00 по местному времени. Накуа я должен при этом вычислять UTC и смещение ? Я хочу положить в БД местное бразильское время и потом получить обратно его же. Как его там внутри будет хранить сервер - мне, как клиенту, до лампочки. Basil A. SidorovЧтобы не хранить длинные строки идентификаторов часовых поясов предлагается добавить системную таблицу, где будут храниться "код, идентификатор часового поясаЭта таблица живёт в данных TZ, и её не нужно тащить в каждую БД. В данный момент её копия есть в коде fbclient. Basil A. Sidorovидентификатор это "Страна/Место" и их может быть сильно больше 256.632 в данный момент. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 13:53 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladBasil A. SidorovЧтобы не хранить длинные строки идентификаторов часовых поясов предлагается добавить системную таблицу, где будут храниться "код, идентификатор часового поясаЭта таблица живёт в данных TZ, и её не нужно тащить в каждую БД. В данный момент её копия есть в коде fbclient.Дополню - в каждой БД есть системная таблица RDB$TIME_ZONES, показывающая эти данные. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 13:57 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladВот я, как клиент, имею БД, хранящую некоторые события, и записываю, что конференция в Бразилии начнётся 3.08.2019 в 9:00 по местному времени. Накуа я должен при этом вычислять UTC и смещение ? Я хочу положить в БД местное бразильское время и потом получить обратно его же.Это всё замечательно работает, пока все клиенты в одном часовом поясе. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 14:27 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladПочему клиент должен корячиться вычисляя UTC Чем это хуже получения UTC из time() и коряченья с результатом localtime()? Вообще, ничто не мешает иметь SQL_LOCALTIMESTAMP_TZ рядом с SQL_TIMESTAMP_TZ и использовать в XSQLVAR.sqltype тот, который больше подходит под имеющиеся (требующиеся) данные. Серверу-то всё равно коерцить хранимое значение. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 14:28 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Basil A. SidorovhvladВот я, как клиент, имею БД, хранящую некоторые события, и записываю, что конференция в Бразилии начнётся 3.08.2019 в 9:00 по местному времени. Накуа я должен при этом вычислять UTC и смещение ? Я хочу положить в БД местное бразильское время и потом получить обратно его же.Это всё замечательно работает, пока все клиенты в одном часовом поясе.С чего ты взял ? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 14:32 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovhvladПочему клиент должен корячиться вычисляя UTC Чем это хуже получения UTC из time() и коряченья с результатом localtime()?Откуда в моём сценарии выше вообще time() ? Если юзеру нужно текущее время, он с гораздо большей вероятностью использует CURRENT_TIMESTAMP. Но тут речь о другом. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 14:34 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladBasil A. SidorovЛично я считаю, что клиент должен передавать на сервер три элемента: 1. UTC, вычисленное клиентом; 2. Смещение локального времени клиента для этого момента UTC; 3. Идентификатор часового пояса на котором клиент делал вычисления.Почему клиент должен корячиться вычисляя UTC, и зачем серверу смещение, вычисленное клиентом (при условии наличия (3)) ? Вот я, как клиент, имею БД, хранящую некоторые события, и записываю, что конференция в Бразилии начнётся 3.08.2019 в 9:00 по местному времени. Накуа я должен при этом вычислять UTC и смещение ? Если бы TIMESTAMP хранился на сервере в UTC и также передавался до клиентской библиотеке, то вовсе не обязательно вычислять смещение саомому, так как все нормальные операционные системы имеют у себя актуальную информацию о часовых поясах (если регулярно обновляются) и соответствующие API функции, позволяющие конвертировать LocalTime<->UTC. В винде, например, начиная с Windows 2000: SystemTimeToTzSpecificLocalTime (UTC в локальное) TzSpecificLocalTimeToSystemTime (Локальное в UTC) Перед передачей штампа времени на сервер делаешь TzSpecificLocalTimeToSystemTime, а при получении с сервера - SystemTimeToTzSpecificLocalTime прямо внутри fbclient. Делов-то... ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 14:35 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_devЕсли бы TIMESTAMP хранился на сервере в UTCОн там хранится в UTC rdb_devи также передавался до клиентской библиотекеНакуа клиенту UTC ? rdb_devтак как все нормальные операционные системы имеют у себя актуальную информацию о часовых поясах (если регулярно обновляются)Вот это вот ЕСЛИ тебя губит. И не надо мне рассказывать про WinApi, я немножко его знаю. В отличие от тебя, показывающего не те ф-ции и не понимающего что в них не так. И если потрудишься таки почитать доку, то узнаешь, что строковые идентификатры регионов в Win ни разу не соответствуют оным в ICU (IANA) ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 14:54 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
А откуда сервер узнает часовой пояс клиента? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 15:06 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Тьфу, сорри, уже спросили. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 15:07 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Гаджимурадов Рустам, его клиент сам должен сообщить ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 15:08 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladНакуа клиенту UTC ?Предлагаешь, чтобы клиент каждый раз выполнял запрос к серверу, когда ему потребуется преобразовать отметку времени из одного часового пояса в другой или добавить-вычесть интервал? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 15:10 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladrdb_devЕсли бы TIMESTAMP хранился на сервере в UTCОн там хранится в UTCЯ имею в виду 64-битный штамп времени - 'TIMESTAMP WITHOUT TIME ZONE' hvladrdb_devи также передавался до клиентской библиотекеНакуа клиенту UTC ?А почему БЫ нет, если fbclient экспортирует две функции - с UTC и локальным временем? hvladrdb_devтак как все нормальные операционные системы имеют у себя актуальную информацию о часовых поясах (если регулярно обновляются)Вот это вот ЕСЛИ тебя губит.Лишь меня? Часто ли администраторы серверов ФБ обновляют их из снапшотов, даже при незначительных патчах? Теперь представь, что в государстве поменялся UTC DST или какой-то населённый пункт стал частью другого административно-территориального деления с другим часовым поясом, вы внесли соответствующие изменения, выкатели снапшот и что дальше? Администраторы серверов ФБ все как один ошалело ринулись обновлять свои серваки? Чот сомневаюсь я... hvladИ не надо мне рассказывать про WinApi, я немножко его знаю. В отличие от тебя, показывающего не те ф-ции и не понимающего что в них не так.Ну и ладно!... Добавить суффикс Ex и перед вызовом получать DYNAMIC_TIME_ZONE_INFORMATION вместо TIME_ZONE_INFORMATION. hvladИ если потрудишься таки почитать доку, то узнаешь, что строковые идентификатры регионов в Win ни разу не соответствуют оным в ICU (IANA)Это не самая большая проблема, тем более, что в большинстве случаев это нафиг не надо, так как локальное время в fbclient через функции ОС и так сконвертируется без всяких идентификаторов часовых поясов. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 15:34 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Basil A. SidorovhvladНакуа клиенту UTC ?Предлагаешь, чтобы клиент каждый раз выполнял запрос к серверу, когда ему потребуется преобразовать отметку времени из одного часового пояса в другой или добавить-вычесть интервал? Зачем ему туда-сюда гонять данную метку времени ? Нужно в другой TZ - сразу спроси в другой TZ. Опять же, чтобы преобразовать время между часовыми поясами, нужно знать разницу между ними. И пофигу в каком часовом поясе время изначально: - если оно в UTC и помечено как TZ1, то чтобы получить TZ2 нужно добавить смещение TZ1 - UTC и потом добавить TZ2 - TZ1 - если оно сразу в TZ1 (и помечено как TZ1), то достаточно добавить TZ2 - TZ1 Если клиент умеет вычислять эти смещения, ему всё равно в каком виде ему дали время. Если не умеет - то ой. Зато для того, чтобы показать юзеру время в TZ1 (в котором юзер и ожидает его увидеть), то - если время в UTC, то нужно преобразовать его в TZ1 (и для этого fbclient использует ICU) - если оно сразу в TZ1, то ничего делать не надо ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 15:35 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Гаджимурадов РустамА откуда сервер узнает часовой пояс клиента?Вопрос с отрывом от контекста. Очень сложно понять - ты спрашиваешь или пытаешься кому-то возразить, задавая наводящие вопросы. Вообще, SET TIME ZONE <tz_identifier> ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 15:37 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, я вообще перестал понимать твой словесный поток ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 15:38 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladrdb_dev, я вообще перестал понимать твой словесный потокТы просто устал. Хороших выходных! :) ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 15:44 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_devhvladrdb_dev, я вообще перестал понимать твой словесный потокТы просто устал. Хороших выходных! :)Можно и так завершить :) Взаимно :) ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 15:56 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladЕсли клиент умеет вычислять эти смещения, ему всё равно в каком виде ему дали время. Если не умеет - то ой. Лично у меня интерес, как обычно, чисто шкурный: насколько я понимаю, плагин репликации будет получать данные в формате хранения, то бишь UTC+ID. И то, что я получил на одном конце, мне надо как-то скормить серверу на принимающем конце. Если тот принимает UTC+ID - всё хорошо, а вот если он хочет локальное время + ID - тот самый "ой" в полный рост. Поэтому я ещё раз жалобно попрошу возможность скармливать серверу с клиента UTC+ID. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2019, 18:45 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Форумяне, объясните мне, плз, результат. Сервер FirebirdSQL v4.0 (WI-T6.3.0.1510 Firebird 4.0 Beta 1) и isql (от него же) запущены на одном и том же компе под Win7. Время в системе московское и на момент выполнения запроса соответствует второму результату - '2019-06-21 10:44:46.8510 Europe/Moscow'. при выполнении в isql: Код: plsql 1. 2. 3.
Получаю результат: Код: plaintext 1. 2. 3.
Т.е., CURRENT_TIMESTAMP выдаёт корректный результат, а приведение литерала 'NOW' выдаёт текущее время системы как UTC. Отсюда возникает пара вопросов: 1. Литерал 'NOW' интерпретируется именно как время клиента по UTC+Offset, где Offset определяется путём согласования времени между сервером и клиентом в подключении? 2. Корректность CURRENT_TIMESTAMP означает, что сервер в контексте SYSTEM имеет свой идентификатор часового пояса, определяемый через средства ОС? Чот не догоняю логику сервера... :( ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2019, 11:07 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, у тебя в конфиге сервера часовой пояс прописан? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2019, 12:16 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денис, нет, используется по умолчанию. # Default session or client time zone. # # If empty, the default is the OS time zone. # When set in the server, it defines the default session time zone for attachments. # When set in the client, it defines the default time zone used with client-side API functions. # # Type: string # #DefaultTimeZone = ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2019, 12:20 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_devОтсюда возникает пара вопросов: 1. Литерал 'NOW' интерпретируется именно как время клиента по UTC+Offset, где Offset определяется путём согласования времени между сервером и клиентом в подключении? Про 'NOW' напиши в трекер, чёт мне кажется это поведение не верное rdb_dev2. Корректность CURRENT_TIMESTAMP означает, что сервер в контексте SYSTEM имеет свой идентификатор часового пояса, определяемый через средства ОС? нет. Ещё раз прочитай описания параметра DefaultTimeZone. Да оно выставится в часовой пояс сервера, если ничего не указано, но это не часовой пояс сервера Firebird, а часовой пояс сессии по умолчанию, клиент всегда может его переключить/переопределить. Причём насколько я понял узнать об этом совершенно не возможно ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2019, 13:09 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов ДенисПро 'NOW' напиши в трекер, чёт мне кажется это поведение не верное+1 Симонов ДенисДа оно выставится в часовой пояс сервера, если ничего не указано, но это не часовой пояс сервера Firebird, а часовой пояс сессии по умолчанию, клиент всегда может его переключить/переопределить. Причём насколько я понял узнать об этом совершенно не возможноДумаю, тоже имеет смысл об этом спросить - через трекер или fb-devel ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2019, 14:05 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Дениснет. Ещё раз прочитай описания параметра DefaultTimeZone.Почитал, проверил и в очередной раз убедился, что к часовому поясу сервера этот параметр конфигурации вообще никак не относится. Собственно, там и написано, что параметр конфигурации сервера DefaultTimeZone отвечает за выбор часового пояса по умолчанию для клиентской сессии. Иными словами, для всех подключающихся клиентов сервер будет по умолчанию задавать указанный в параметре DefaultTimeZone часовой пояс, который клиент может переопределить тем же SET TIME ZONE. Для проверки в конфигурационном файле сервера изменил DefaultTimeZone=UTC, перезапустил службу сервера, скопировал isql, fbclient.dll и icu файлы в отдельный каталог, откуда и запустил isql, выдав вышеприведённые "ыудусе" без предварительного SET TIME ZONE 'UTC'. Результат тот же и в точности с описанием параметра в конфигурационном файле: Код: plaintext 1. 2. 3. 4. 5. 6.
Потому в контекстах SYSTEM и USER_SESSION необходимо иметь разные контекстные переменные TIME_ZONE, из которых можно было бы получить часовой пояс сервера и часовой пояс клиента. Проблема только в сопоставлении часовых поясов IANA с представлением на ОС Windows. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2019, 14:40 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladСимонов ДенисПро 'NOW' напиши в трекер, чёт мне кажется это поведение не верное+1Данную проблему в трекере нужно описывать тому, кто способен её изложить на вразумительном инглише. Это не про меня... На форуме даже не всегда понимают то, что я излагаю на русском. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2019, 14:48 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_devизменил DefaultTimeZone=UTC, перезапустил службу сервера, скопировал isql, fbclient.dll и icu файлы в отдельный каталог я надеюсь, у тебя фб 4 не зарегано в реестре через instreg? Потому что в этом случае клиент на этом же компе найдет серверный firebird.conf, и возьмет нужные параметры оттуда. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2019, 16:26 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
kdv, не помню. Надо будет в понедельник проверить. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2019, 16:33 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
kdvу тебя фб 4 не зарегано в реестре через instreg?Поиск конфига\клиента\и т.п. в реестре выпилили ещё в fb3 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2019, 23:03 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladkdvу тебя фб 4 не зарегано в реестре через instreg?Поиск конфига\клиента\и т.п. в реестре выпилили ещё в fb3ФБ3 не ставил. Выпилил всю ветку реестра [HKEY_LOCAL_MACHINE\SOFTWARE\Firebird Project], в ветке [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node] такого раздела не обнаружил, в конфиге сервера выставил DefaultTimeZone=UTC, перезапустил службу сервера. Из каталога сервера скопировал в отдельный каталог файлы: fbclient.dll, firebird.conf, firebird.msg, icudt63.dll, icudt63l.dat, icuin63.dll, icuuc63.dll, isql.exe. В конфиге клиента DefaultTimeZone по умолчанию. Снова выполняю запрос без предварительного SET TIME ZONE, результат неизменен: Код: plaintext 1. 2. 3. 4. 5. 6.
Далее выставил в конфиге клиента "DefaultTimeZone=Europe/Moscow", перезапустил клиент сделал запрос - результат не изменился. Затем сделал SET TIME ZONE 'Europe/Moscow', результат: Код: plaintext 1. 2. 3. 4. 5. 6. 7.
ЧЯДНТ? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.06.2019, 09:57 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, ну так ты будешь Адриано писать? Или за тебя это сделать? Правда я думаю это не в трекер пока надо, а для начала в fb-devel чтобы разъяснили, а то может сам дурак. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.06.2019, 10:05 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Хочу обратить внимание, что параметр конфигурации DefaultTimeZone клиента не перекрыл соответствующий параметр конфигурации сервера, что, на мой взгляд, некомильфо. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.06.2019, 10:05 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисrdb_dev, ну так ты будешь Адриано писать? Или за тебя это сделать? Правда я думаю это не в трекер пока надо, а для начала в fb-devel чтобы разъяснили, а то может сам дурак.Неа, не буду! Dimitr на одном из семинаров как-то говорил, что если не можете внятно на инглише изложить проблему в трекере, пишите на русском здесь - на форуме sql.ru, а мы, дескать, сами создадим тикет в трекере. :) Так что, пользуясь случаем... ... |
|||
:
Нравится:
Не нравится:
|
|||
24.06.2019, 10:08 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_devХочу обратить внимание, что параметр конфигурации DefaultTimeZone клиента не перекрыл соответствующий параметр конфигурации сервера, что, на мой взгляд, некомильфо. ты опять не внимательно читал документацию. Написано же, что если в конфигурации сервера не указан DefaultTimeZone, то берётся часовой пояс сервера из ОС. Если DefaultTimeZone, не указан в конфигурации клиента, то берётся часовой пояс сессии по умолчанию, что равняется, тому что ты указал в конфиге сервера. А вот поведение Cast('Now' AS TIMESTAMP WITH TIME ZONE) мне кажется не корректным, об этом и предлагаю спросить Адриано ... |
|||
:
Нравится:
Не нравится:
|
|||
24.06.2019, 10:15 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисты опять не внимательно читал документацию. Написано же, что если в конфигурации сервера не указан DefaultTimeZone, то берётся часовой пояс сервера из ОС. Если DefaultTimeZone, не указан в конфигурации клиента, то берётся часовой пояс сессии по умолчанию, что равняется, тому что ты указал в конфиге сервера.Когда я указал в конфиге клиента DefaultTimeZone=Europe/Moscow, isql всё равно показал результат в UTC, так как в конфиге сервера DefaultTimeZone=UTC. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.06.2019, 10:22 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
У кого Win10 (не ниже 1709) просьба проверить текущий снапшот на наличие этой ошибки. Есс-но, IBE (isql, и т.п.) не должен брать fbclient из каталога в котором есть ICU. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 12:32 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Уточню hvladWin10 (не ниже 1709)В ней есть предустановленная ICU Подойдёт и другая версия Win, в которой установлена любая версия ICU и её можно найти в PATH. hvladналичие этой ошибкиРечь об "Could not find acceptable ICU library" ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 12:35 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad, пока что доступны снапшоты только от 24 июня ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 12:36 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денис, Плохо :( Но можно использовать сборки AppVeyour: https://ci.appveyor.com/project/FirebirdSQL/firebird Выбираешь нужный image (например Image: Visual Studio 2017; Platform: x64) Переходишь на вкладку Artifacts скачиваешь output.zip ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 12:49 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad, спасибо. Протестирую вечером как домой приду. На работе только win 7. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 13:17 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денис, можно и на win7 попробовать, там может быть другое сообщение об ошибке. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 13:23 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad, IBExpert на Win7 начинает ругаться быстрее, а не ждёт 3 минуты, это уже хорошо ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 13:44 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов ДенисIBExpert на Win7 начинает ругаться быстрее, а не ждёт 3 минуты, это уже хорошоЭто да. А ругается-то как ? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 13:53 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad, эксперт не умеет нормально обрабатывать эту ситуацию там просто access vilation со стеком вызовов ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 14:22 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Ошибка в IBE Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26.
Кстати с ICU файлами в папке с клиентом всё равно ругается. Судя по process explorer эксперт загрузил iсu30 от embedded 2.5, которая используется для хранения настроек и успокоился ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 14:53 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов ДенисКстати с ICU файлами в папке с клиентом всё равно ругается. Судя по process explorer эксперт загрузил iсu30 от embedded 2.5, которая используется для хранения настроек и успокоился Не грузит эксперт icu напрямую, это клиент FB делает. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 15:47 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
IBExpert, это понятно, загрузил её fbembed.dll, а клиент 4.0 просто нашёл загруженный образ и решил, что дальше искать не надо (ну по крайней мере мне так кажется) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 16:13 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
IBE 2019.6.4.1 Win7 Cкопированный в отдельный каталог fbclient.dll + firebird.msg (без ICU) Запрос в IBE select current_timestamp from rdb$database Результат Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28.
Копирую к fbclient'у файлы ICU из каталога сервера. Запрос выполняется без проблем. В процессе IBE два набора ICU - 3.0 от его копии embedded и 63 из каталога с клиентом. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 16:38 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
хах переместил клиент на диск C там же где установлен IBE и всё заработало. Пока fbclient.dll был в отдельной папке на диске D не хотел ни в какую ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 17:24 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Чтобы dll-ка грузила "дополнительные" dll из собственного каталога надо создать рядышком файл нулевого размера с именем "библиотека.dll.local" - Dynamic-Link Library Redirection . Аналогично, если создать каталог "программа.exe.local", то dll-ки для программы будут загружаться из этого каталога. Не работает для Windows 7 без SP1. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 18:10 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
проверил на win-10 без ICU в папке с fbclient. Подгрузились системные icu :) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 20:15 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Дениспроверил на win-10 без ICU в папке с fbclient. Подгрузились системные icu :)Это хорошо. Без паузы, надеюсь ? Кстати, какая у тебя версия Win10 и какая - ICU ? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 20:27 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad, Загрузилось довольно быстро win 10 x64 1809. ICU - 61.0.1 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 20:32 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Спасибо. Обновляют значит, достаточно регулярно: 1709 - 51 1803 - 59 1809 - 61 странно только, что 61.0.1 - 0 - это development версия, по идее ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 20:34 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad, бррр... это я перепутал 61.1.0.0 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.06.2019, 20:42 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Если ICU требуется только для таймзон, почему бы не грузить таблицу с сервера? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 10:56 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
ICU требуется для вычисления UTC времени из регионального и наоборот. Ибо на сервер нужно передать UTC (и смещение\ид региона) и с сервера тоже вернётся UTC (и смещение\ид региона). ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 11:06 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
имхо, вопрошавший интересовался: "почему эти все манипуляции нужно делать на клиенте?". у Оракла NLS-параметры сессии определяют что и как сервер отдаст клиенту. клиент "думать" не обязан. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 11:15 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Мимопроходящий"почему эти все манипуляции нужно делать на клиенте?"Потому что Адриано так решил. Остальным либо плевать, либо лень шевелить мозгами. Марк, который это поддержал, упирает на то, что если он (Jaybird) не понимает код региона, то тогда сможет показать хотя бы UTC время. Более осмысленных агрументов за такую реализацию я не видел. Мимопроходящийу Оракла NLS-параметры сессии определяют что и как сервер отдаст клиенту. клиент "думать" не обязан.Это тоже не всегда правильно. Если я сохранил метку времени с привязкой к региону (скажем Бразилия), то с какого перепуга я должен назад её получить с привязкой к моему локальному региону ? У нас, если задать SET TIME ZONE BIND LEGACY, будет возвращаться старый тип данных (без таймзоны), приведенный к таймзоне сессии. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 11:24 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
02.07.2019 11:24, hvlad пишет: > Потому что Адриано так решил. я всегда говорил, что он пацан. у некоторых это с возрастом проходит. но не у всех. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 11:29 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad, ну ладно в windows 10 это хотя бы нормально работает. А вот в других windows надо будет за актуальностью icudt*.dat следить :-( ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 12:06 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
02.07.2019 12:06, Симонов Денис пишет: > ну ладно в windows 10 это хотя бы нормально работает. А вот в других windows надо будет за актуальностью icudt*.dat следить :-( а у школьников всегда самая последняя версия вындовс... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 12:08 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Мимопроходящий, с чего ты взял что у Адриано вообще windows? У мелкософта вообще планы одну десятку оставит и будет обновлять только её. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 12:13 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Мимопроходящийу Оракла NLS-параметры сессии определяют что и как сервер отдаст клиенту. клиент "думать" не обязан. Но тем не менее у него NLS-файлы как раз часть клиента и без их правильной установки сессию организовать не получится. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 12:18 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
02.07.2019 12:13, Симонов Денис пишет: > У мелкософта вообще планы одну десятку оставит и будет обновлять только её. у мелкософта семь пятниц на неделе - норма жизни. они уже хоронили ODBC. потом откапывали ODBC и хоронили OLEDB. потом снова воскресили OLEDB. и так всегда и во всём... тут надысь Жадный Билли "воскрес". и со слезами на устах поведал миру о своей вселенской скорби, что мало внимания уделил мобильным системам и именно по этой причине расплодились всякие богомерзкие ведроиды... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 12:21 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
02.07.2019 12:18, Dimitry Sibiryakov пишет: > Но тем не менее у него NLS-файлы как раз часть клиента и без их правильной установки > сессию организовать не получится. у них клиенты разные бывают. в том числе и "голые", типа нашенского Jaybird. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 12:24 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов ДенисIBExpert, это понятно, загрузил её fbembed.dll, а клиент 4.0 просто нашёл загруженный образ и решил, что дальше искать не надо (ну по крайней мере мне так кажется)У меня в "%SystemRoot%\SysWOW64" лежат библиотеки icu v3.0, icu v6.4.2, fbembed25.dll, fbclient25.dll и fbclient40.dll. Для работы с "ibexpert.udb" IBExpert грузит fbembed25.dll, который хавает icu 3.0, а при коннекте к прочим БД у меня указан fbclient40.dll, который без вопросов хавает свежие библиотеки icu v6.4.2, причём, без переименования последних. Единственная проблема - dat файл, что надо собирать отдельно под VS, которого у меня нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 13:14 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_devУ меня в "%SystemRoot%\SysWOW64" лежат библиотеки icu v3.0, icu v6.4.2, fbembed25.dll, fbclient25.dll и fbclient40.dll. зачем ты их туда набросал? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 13:21 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_devЕдинственная проблема - dat файл, что надо собирать отдельно под VS, которого у меня нет.А что у тебя есть ? И с чего ты взял, что dat файл сильно нужен ? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 13:24 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денис, что бы работало без прописывания в PATH пути до каталога с сервером Firebird. Тем более, что сервер на архитектуре AMD64, а клиент в SysWOW64 - x86 (из параллельного x86 снапшота). Поэтому, проще закинуть shared библиотеки туда, где им место и оттуда грузить, при том, что "%SystemRoot%\system32" для 32-х разрядных образов мапится на SysWOW64 и по умолчанию присутствует в PATH. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 13:30 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, кстати я уже говорил, как только я каталог с клиентом переместил на системный диск и обитает IBExpert, стандартная ICU которая поставляется с fbclient схавалась без проблем. В win10 вообще системная icu дёргается, даже при наличии своей в каталоге с fbclient. Заметь я не размещал fbclient куда-то глубоко в системные папки. Просто лежит c:/firebird/4.0/client32/fbclient.dll rdb_dev fbclient40.dll после переименования можешь огрести при попытке использовать 4.0 в качестве embedded ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 13:30 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladА что у тебя есть ? 21890968 hvladИ с чего ты взял, что dat файл сильно нужен ? :)Симонов Денис писал, что, вроде как, "icudt##l.dat" нужна, а сам я не вдавался в детали - занафига. Хорошо, если нет... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 13:34 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, насколько я понял таблица смещений для часовых поясов живёт в .dat файле. Хотя есть варианты когда эти данные находятся в .res файлах, либо компилированы в dll. http://userguide.icu-project.org/icudata ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 13:42 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, расжёвываю - icudt64.dll какого размера ? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 14:00 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad, взял из официального релиза проекта icu-project.org , размер "icudt64.dll" - 27 534 336 байт. Понятно, данные, используемые по умолчанию, находятся в ресурсах библиотеки. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2019, 17:51 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladICU требуется для вычисления UTC времени из регионального и наоборот. Ибо на сервер нужно передать UTC (и смещение\ид региона) и с сервера тоже вернётся UTC (и смещение\ид региона). Получать текущий UTC, насколько я знаю, можно и в Линь, и в Вынь. Код региона тоже из системных настроек. А эту самую таблицу смещений можно вытаскивать клиентом с сервера. (Просто мои 5 коп и взгляд со стороны). ... |
|||
:
Нравится:
Не нравится:
|
|||
03.07.2019, 10:14 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Василий 2, Как мне поможет "текущий UTC" определить UTC для даты\времени события в Сингапуре через 4 года (которое я хочу записать в БД - календарь) ? Далее - узнай какие бывают виды кодов регионов. Потом узнай, что такое "таблица смещений" и с чем её едят. Потом поговорим, если ещё будет о чём. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.07.2019, 10:21 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Василий 2Получать текущий UTC, насколько я знаю, можно и в Линь, и в Вынь. Код региона тоже из системных настроек. А эту самую таблицу смещений можно вытаскивать клиентом с сервера. (Просто мои 5 коп и взгляд со стороны). Ага, я тоже так думал... Пока не поигрался с RDB$TIME_ZONE_UTIL.TRANSITIONS ... |
|||
:
Нравится:
Не нравится:
|
|||
03.07.2019, 10:30 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Василий 2, ты размер этой "таблицы" смещений то смотрел? Я имею ввиду полный размер с учётом всех часовых поясов и диапазонов дат ... |
|||
:
Нравится:
Не нравится:
|
|||
03.07.2019, 10:59 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad, мне это не нужно, не сильно мешает и не интересно. Нельзя так нельзя, сам разбираться не полезу. Просто предложение было. Тянуть функцию из локальной либы или получить тот же результат через клиента с сервера FB - на мой взгляд, сильно большой разницы нет, а удобства куда больше. Плюс централизация. Симонов ДенисВасилий 2, ты размер этой "таблицы" смещений то смотрел? Я имею ввиду полный размер с учётом всех часовых поясов и диапазонов дат Никто ж не заставляет целиком гонять всю таблицу. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.07.2019, 14:43 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Василий 2мне это не нужно, не сильно мешает и не интересноИногда лучше молчать... (ц) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.07.2019, 14:56 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladИногда лучше молчать... (ц) Конечно! Надо чтоб вообще все юзеры FB молчали, просто ругаясь про себя на встреченные баги. И не лезли с предложениями. Разработчики же умные, сами знают что делать. Я просто предложил на мой взгляд неплохой и удобный вариант. А ты от меня требуешь вникать, разбираться, может еще половину кодовой базы перелопатить... зачем? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.07.2019, 10:38 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Василий 2Конечно! Надо чтоб вообще все юзеры FB молчали, просто ругаясь про себя на встреченные баги. И не лезли с предложениями. Разработчики же умные, сами знают что делать.Типичный демагог. Василий 2Я просто предложил на мой взгляд неплохой и удобный вариантТебе объяснили, что он никуда не годится. В ответ ты рассказал, что тебе это не нужно и не интересно. И кто здесь ковыряет пальцем в носу ? Василий 2А ты от меня требуешь вникать, разбиратьсяЯ прошу думать головой, перед тем, как что-то предлагать. Да, для этого нужно разбираться в том вопросе, о котором идёт речь. Неожиданно ? Ибо - да - разработчикам приходится быть умными и таки знать, что они делают. Разработчикам любого продукта, заметь. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.07.2019, 10:46 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Мимопроходящий02.07.2019 11:24, hvlad пишет: > Потому что Адриано так решил. я всегда говорил, что он пацан. Да не, в смысле да - сказал и сделал :) Наверное надо было сделать чтобы сервер мог принимать и смещение и зону. Но отдавал только что-то одно. По умолчанию - смещение. Так? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.07.2019, 12:25 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
04.07.2019 12:25, Коваленко Дмитрий пишет: > Но отдавал только что-то одно. По умолчанию - смещение. > Так? йез ыт ыз! Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.07.2019, 12:31 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladВасилий 2, Как мне поможет "текущий UTC" определить UTC для даты\времени события в Сингапуре через 4 года (которое я хочу записать в БД - календарь) ?Очень просто! Прибавляешь к текущему UTC 4 года и получаешь UTC для даты/времени через 4 года где угодно и в Сигнапуре в том числе. UTC, он ведь и в Сигнапуре - UTC. Если тебе надо что-то пнуть на сервере в предполагаемое время, просто пинаешь, когда приходит срок, а если надо вернуть это время клиенту - возвращаешь его клиенту как есть и пусть клиент сам решает, что ему с этим UTC делать - приводить к локальному или хавать как есть. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 09:35 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, перестань маяться фигнёй. В текущей реализации дат с тайм-зонами время и так храниться в UTC + timezone id ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 09:51 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, пользователь вводит свою дату. Причём тут текущее время? Ты что там предлагаешь какие-то идиотские пересчёты через текущее время клиента делать? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 09:55 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_devhvladКак мне поможет "текущий UTC" определить UTC для даты\времени события в Сингапуре через 4 года (которое я хочу записать в БД - календарь) ?Очень просто! Прибавляешь к текущему UTC 4 года и получаешь UTC для даты/времени через 4 года где угодно и в Сигнапуре в том числеЯ хочу записать в БД дату\время '12.5.2024 9:00' по Сингапурскому местному времени. Как мне в этом поможет моё UTC ? rdb_devпусть клиент сам решает, что ему с этим UTC делать - приводить к локальному или хавать как естьЯ такой клиент, который не имеет у себя ICU и не может приводить UTC к локальному (да ещё и не местному). Если бы у меня (клиента) был ICU - всего этого топика не было бы. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 09:59 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladИбо - да - разработчикам приходится быть умными и таки знать, что они делают. Разработчикам любого продукта, заметь. Судя по репликам в адрес одного из главных разработчиков, ему эта истина неведома )) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 10:22 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисrdb_dev, перестань маяться фигнёй. В текущей реализации дат с тайм-зонами время и так храниться в UTC + timezone idИ нафиг мне упёрлись эти два байта в каждой записи со временем, которые, при сильной необходимости, можно хранить в отдельном поле, взяв информацию из контекста сессии? Симонов Дениспользователь вводит свою дату. Причём тут текущее время? Ты что там предлагаешь какие-то идиотские пересчёты через текущее время клиента делать?При установке Линуха пользователь тоже вводит свою дату, а установщик, по умолчанию, предполагает, что RTC хранит время в UTC. Как-то же справляется... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 10:38 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Василий 2, ты сам то fbdevel читал? Адриано вполне обоснованно отстаивает свою реализацию. Единственный разумный контраргумент это зависимость от ICU в Windows. Собственно разумных альтернатив текущей реализации предложено не было, кроме предложения Влада, но там сразу же нашлись противники из стана NET и Java. Так что скорее всего в этом плане ничего не изменится. Хорошо хоть с поиском ICU ситуацию поправили. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 10:44 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_devИ нафиг мне упёрлись эти два байта в каждой записи со временем, которые, при сильной необходимости, можно хранить в отдельном поле, взяв информацию из контекста сессии?Тебя никто не заставляет пользоваться новыми типами данных. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 10:45 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов ДенисТак что скорее всего в этом плане ничего не изменится.Не кажи гоп... (ц) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 10:46 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, ой как страшно целые 2 байта!!! А ничего, что DECFLOAT(34) требует аж 16 байт? rdb_devПри установке Линуха пользователь тоже вводит свою дату, а установщик, по умолчанию, предполагает, что RTC хранит время в UTC. Как-то же справляется... вы сударь фигню молвите. Пользователь может указать дату с другим (не своим) часовым поясом. И получать дату он может не обязательно в своём часовом поясе ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 10:48 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
05.07.2019 10:46, hvlad пишет: > Не кажи гоп... (ц) дядюшка Мокус, можно, я кину в них грязью? (С) Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 10:56 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladЯ хочу записать в БД дату\время '12.5.2024 9:00' по Сингапурскому местному времени. Как мне в этом поможет моё UTC ?Зачем в БД хранить именно Сингапурское время? В этом может быть какой-то особый смысл только в случае, когда необходимо знать из какого часового пояса был клиент, из сессии которого была инициирована в БД запись со штампом времени. hvladrdb_devпусть клиент сам решает, что ему с этим UTC делать - приводить к локальному или хавать как естьЯ такой клиент, который не имеет у себя ICU и не может приводить UTC к локальному (да ещё и не местному). Если бы у меня (клиента) был ICU - всего этого топика не было бы.Венда до WinX как-то справлялась с приведением времени и без icu библиотек - своими силами. Собственно, с этим прекрасно справляется любая нормальная операционная система. Теперь представим ситуацию, что в БД ты записал UTC+сингапурский_id, рассчитанный на 4 года вперёд, а в этой республике за 4 года правительство выкатило постановление об изменении часового пояса и так как, ПРЕДПОЛОЖИМ, администратор сервера или разработчик БД или разработчики СУБД не следили за постановлениями правительства Сингапура и за изменениями IANA таблицы часовых поясов, данные об этих изменениях попали только в регулярно обновляющуюся у сингапурского клиента ОС. И чо? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 10:59 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvladrdb_devИ нафиг мне упёрлись эти два байта в каждой записи со временем, которые, при сильной необходимости, можно хранить в отдельном поле, взяв информацию из контекста сессии?Тебя никто не заставляет пользоваться новыми типами данных.TIMESTAMP WITHOUT TIME ZONE хранит штамп времени в UTC? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 11:01 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_devTIMESTAMP WITHOUT TIME ZONE хранит штамп времени в UTC? Он хранит то, что ты в него положил. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 11:07 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_devЗачем в БД хранить именно Сингапурское время? тебя никто не заставляет. Может ты прежде чем свои предположения делать почитаешь стандарт и узнаешь что именно должно храниться в типе TIMESTAMP WITH TIME ZONE. В самом определении типа ясно указано штамп времени с информацией о часовом поясе. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 11:07 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисой как страшно целые 2 байта!!! А ничего, что DECFLOAT(34) требует аж 16 байт?+2 абсолютно бесполезных, в большинстве случаев, байта на каждую запись. Для хранения чисел с плавающей точкой есть широкий выбор типов данных и, ко всему прочему, в DECFLOAT все биты такого типа используются для необходимой разработчику БД точности числа, но с TIMESTAMP у меня нет такого широкого выбора - нет типа UTCSTAMP на 8 байт. Симонов Денисrdb_devПри установке Линуха пользователь тоже вводит свою дату, а установщик, по умолчанию, предполагает, что RTC хранит время в UTC. Как-то же справляется...вы сударь фигню молвите. Пользователь может указать дату с другим (не своим) часовым поясом. И получать дату он может не обязательно в своём часовом поясеКонечно может! Пользователь выставляет часовой пояс, а ОС предполагает, что RTC хранит UTC и затем для графического отображения локального времени на экране система осуществляет приведение времени из UTC в локальное, в соответствии с выбранным пользователем часовым поясом. Это же очевидно! ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 11:10 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, я тебе ещё раз повторяю. Почитай уже спецификацию TIMESTAMP WITH TIME ZONE. Эта штуковина должна возвращать штамп времени так как он был введён, т.е. локальное время + инфа о часовом поясе. Если нужно иное делают преобразование в другой часовой пояс или локальное время. Если тебе не нужна информация о часовом поясе используй TIMESTAMP WITHOUT TIME ZONE и не морщ нам мозг. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 11:22 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
кстати, в linux'е есть пакет tzdata. который содержит данные о часовых поясах всего мира и правилах перехода на летнее/зимнее время. он периодически обновляется, чтобы отразить изменения, принимаемые в различных странах. и ICU ему для этого нафиг не нужен, вообще-то. мухи отдельно, котлеты отдельно. зы: только что прилетел пакет обновления. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 11:26 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakovrdb_devTIMESTAMP WITHOUT TIME ZONE хранит штамп времени в UTC? Он хранит то, что ты в него положил.И как мне в триггере на добавление/обновление из CURRENT_TIMESTAMP или 'NOW' положить в поле TIMESTAMP WITHOUT TIME ZONE штамп времени в UTC, если в ОС сервера выбран часовой пояс 'Europe/Moscow', да так, чтобы и сервер FirebirdSQL и его клиент - fbclient понимали, что в этом поле имеют дело с UTC? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 11:27 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денис, мне не нужен UTC с двумя байтами часового пояса. Мне нужен просто UTC - 8 байт. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 11:30 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Мимопроходящийкстати, в linux'е есть пакет tzdata. который содержит данные о часовых поясах всего мира и правилах перехода на летнее/зимнее время. он периодически обновляется, чтобы отразить изменения, принимаемые в различных странах. и ICU ему для этого нафиг не нужен, вообще-то. мухи отдельно, котлеты отдельно. зы: только что прилетел пакет обновления.О том и речь! Но пацаны, почему-то, отказываются осознавать, что обновления часовых поясов в ОС прилетают чаще и автоматом, а для обновления информации о часовых поясах на сервере FirebirdSQL придётся делать дополнительные приседания. Вопрос - какие? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 11:41 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, приводи CURRENT_TIMESTAMP к UTC всего делов-то. Или сделай свою UDR возвращающую UTC. Или попроси встроенную функцию в трекере для возврата UTC. Специального типа для UTC не нужно ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 11:41 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, 1. вообще-то в массе Windows распространён куда шире Linux 2. Идентификация часовых поясов в Win, Linux, Mac OS может быть сделана по разному. Влад уже говорил, что как минимум в Win и ICU они отличаются. Если делать таблицу соответствия, то поддерживать её это ничуть не лучше обновления ICU 3. Начиная с Win10 ICU встроена в систему и обновляется регулярно 4. В Firebird ICU и так применяется для различных COLLATE, правда до 4.0 она требовалась только на сервере ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 11:55 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисrdb_dev, 1. вообще-то в массе Windows распространён куда шире Linux 2. Идентификация часовых поясов в Win, Linux, Mac OS может быть сделана по разному. Влад уже говорил, что как минимум в Win и ICU они отличаются. Если делать таблицу соответствия, то поддерживать её это ничуть не лучше обновления ICUОднако, разработчики FirebirdSQL делают сборки для всех этих ОС и я сильно сомневаюсь, что сервер использует исключительно POSIX API и нигде не использует #ifdef с индивидуализацией кода по ОС. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 12:03 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_dev, фразу про таблицу соответствия ты конечно же пропустил ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 12:07 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
rdb_devhvladЯ хочу записать в БД дату\время '12.5.2024 9:00' по Сингапурскому местному времени. Как мне в этом поможет моё UTC ?Зачем в БД хранить именно Сингапурское время?Мне, как клиенту, пофиг что и как хранит БД. Но мне же НЕ пофиг чтобы БД выдала мна обратно то, что я туда положил. И в том же самом виде. rdb_devВ этом может быть какой-то особый смысл только в случае, когда необходимо знать из какого часового пояса был клиент, из сессии которого была инициирована в БД запись со штампом времени.Я сохраняю время события, которое происходит в Сингапуре по местному времени. На кой чёрт мне время этого события в UTC ??? Ещё раз - я клиент и у меня нет возможности конвертировать время между таймзонами. rdb_devВенда до WinX как-то справлялась с приведением времени и без icu библиотек - своими силами.Как-то справлялась - это ты мягко пошутил. rdb_devСобственно, с этим прекрасно справляется любая нормальная операционная система.Ну давай, расскажи как это происходит - в необновляемой Windows - в обновляемой Windows - в обновляемом Linux rdb_devТеперь представим ситуацию, что в БД ты записал UTC+сингапурский_id, рассчитанный на 4 года вперёд, а в этой республике за 4 года правительство выкатило постановление об изменении часового пояса и так как, ПРЕДПОЛОЖИМ, администратор сервера или разработчик БД или разработчики СУБД не следили за постановлениями правительства Сингапура и за изменениями IANA таблицы часовых поясов, данные об этих изменениях попали только в регулярно обновляющуюся у сингапурского клиента ОС. И чо?Какие ко мне претензии, как к разработчику СУБД в этой ситуации ? Способов выстрелить себе в ногу - больше, чем ты можешь придумать. Но это не значит, что мы должны создавать новые. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 12:39 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Мимопроходящийкстати, в linux'е есть пакет tzdata. который содержит данные о часовых поясах всего мира и правилах перехода на летнее/зимнее время. он периодически обновляется, чтобы отразить изменения, принимаемые в различных странах. и ICU ему для этого нафиг не нужен, вообще-то. мухи отдельно, котлеты отдельно.ICU использует именно эти данные. И предоставляет ещё много связанных сервисов. ICU в любом случае используется на стороне сервера. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 12:46 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
05.07.2019 12:46, hvlad пишет: > ICU использует именно эти данные. ну так и нахер тогда ICU на клиенте? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 12:53 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 12:59 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Мимопроходящий, вот если бы вместе с timezone_id передавалось ещё и смещение, то он был не бы нужен. А так по одному id смещение без ICU хрен узнаешь. Влад предложил ещё один вариант передавать не UTC + id, а преобразованное время + id. Собственно в этом варианте ICU всё равно может потребоваться, если надо будет преобразовать время к другому часовому поясу, но это более редкий случай. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 13:00 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
05.07.2019 13:00, Симонов Денис пишет: > Влад предложил ещё один вариант передавать не UTC + id, а преобразованное время + id. дык и я за это обеими ногами! передавать UTC - маразм. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 13:09 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Симонов Денисвот если бы вместе с timezone_id передавалось ещё и смещение, то он был не бы нужен. Влад и предлагал передавать их обеих. Симонов ДенисВлад предложил ещё один вариант передавать не UTC + id, а преобразованное время + id. Почему бы не решать это на этапе data coercion? Если приложение в sqltype запросило SQL_TIMESTAMP_TZ - получает (и отправляет) UTC+TZ, а если какой-нибудь SQL_LOCAL_TIMESTAMP_TZ - то локальное время + TZ. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 13:37 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovСимонов Денисвот если бы вместе с timezone_id передавалось ещё и смещение, то он был не бы нужен. Влад и предлагал передавать их обеих. тут rdb_dev за 2 байта сильно беспокоиться, а это ещё 2 байта добавить ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2019, 13:48 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Мимопроходящийкстати, в linux'е есть пакет tzdata. который содержит данные о часовых поясах всего мира и правилах перехода на летнее/зимнее время. он периодически обновляется, чтобы отразить изменения, принимаемые в различных странах. и ICU ему для этого нафиг не нужен, вообще-то. мухи отдельно, котлеты отдельно. зы: только что прилетел пакет обновления. Имел секас с этим делом. Идея конечно правильная. Но, к сожалению, те люди которые принимают законы о подвижке временных поясов, принятия/отмене летнего/зимнего времени - нихрена про этот tzdata не знают и знать не хотят. Посему информация о реальных изменениях во временных поясах попадает в этот tzdata постфактум, причем через достаточно большое время. И тут у меня возникает вопрос - если при записи времени события с таймзоной эта зона определяется как локальное время + информация о временной зоне ПО ТЕКУЩЕЙ ИНФОРМАЦИИ в tzdata, то после того как информация в tzdata наконец-то поменялась - мы получим из базы другое время? Ну и в моем случае, на сервере стояла очень старая убунта к которой уже не было обновления. Текущий формат tzdata уже не подходит к той программе что была в убунте. Пришлось вручную обновить весь пакет. Однако и в свежайшем tzdata в информации по Новосибирску были неверные (т.е. устаревшие) данные. Пришлось тупо выбрать фиксированное смещение от GMT. Так что ваши надежды на то что где-то там хранится совершенно достоверная информация, мне кажется излишне оптимистичным. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2019, 17:55 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Попробовал в субботу поставить себе четверку, скачал текущий линуксовый снапшот с офсайта, ставлю, получаю "не могу подхватить icu" обновил оную icu с 52 версии до 65, сейчас стоит вот такая: Нет кандидатов на обновление "icu-65.1-141.1.x86_64". Самая последняя версия уже установлена. Какую icu трэба файрберду 4.0? С тройкой ругани на icu не было ни со старой версией, ни с новой. Вернул тройку обратно, все завелось с полтычка. я понимаю, что сделал прыжок сразу на дюжину версий... перепрыгнул нужную? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 12:23 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Ivan_Pisarevsky, 6.3 Кто не может подхватить клиент или сервер? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 12:48 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Ivan_Pisarevsky Попробовал в субботу поставить себе четверку, скачал текущий линуксовый снапшот с офсайта, ставлю, получаю "не могу подхватить icu" Ivan_Pisarevsky обновил оную icu с 52 версии до 65, сейчас стоит вот такая: Нет кандидатов на обновление "icu-65.1-141.1.x86_64". Ivan_Pisarevsky Какую icu трэба файрберду 4.0? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 12:51 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad Можешь найти точное имя файла любой из библиотек, например libicuinXXX.so ? hvlad Собирается с 63-ей, но и 65-я должна работать В текущем 7 центосе в репе вообще 50 лежит, некроманты, блин. hvlad Можно не придумывать свои сообщения об ошибках ? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 16:26 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad Можно не придумывать свои сообщения об ошибках ? Ну не первый день замужем же :( было Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46.
стало Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42.
Мои лыжи определенно не едут. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 18:08 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Ivan_Pisarevsky Код: plaintext
Попробуй сделать такие симлинки libicudata.so.65 libicuuc.so.65 libicui18n.so.65 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 18:46 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Вот, например, официальные пакеты от ICU https://github.com/unicode-org/icu/releases/tag/release-65-1 что для федоры, что для убунты - нормальные единообразные имена libicuXXX.so libicuXXX.so.65 libicuXXX.so.65.1 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 18:50 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
А вот имена без суффиксов (icuXXX.so) Firebird должен был подхватить, но там я вижу небольшую ошибку. Постараюсь исправить на днях. Правда, я не уверен, что это будет работать - но тут уже не к нам вопросы :) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 18:54 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
симлинки добавил, немного поменялась ошибка linux-p3is:/opt/Firebird-4.0.0.1766-Beta1.amd64 # ./install.sh Firebird 4.0.0.1766-Beta1.amd64 Installation Press Enter to start installation or ^C to abort Extracting install data Updated /etc/services Please enter new password for SYSDBA user: masterkey unable to open database Could not find acceptable ICU library Missing entrypoint ucnv_open in ICU library Error loading ICU library version 65.0 Install completed ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 18:55 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Ivan_Pisarevsky, а ты можешь посмотреть - там entrypoint'ы имеют суффиксы с версией, или нет ? Попробуй libicuuc ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 18:58 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Ivan_Pisarevsky, покажи nm -D libicuuc.so | grep ucnv_open ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 13:08 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
взял другой комп с текущей версией 15.1. была мысль, что 15.0 старьё, изначально была 60.2 поставил 65.1 linux-todu:/opt/Firebird-4.0.0.1766-Beta1.amd64 # ./install.sh Firebird 4.0.0.1766-Beta1.amd64 Installation Press Enter to start installation or ^C to abort Extracting install data Updated /etc/services Please enter new password for SYSDBA user: masterkey unable to open database Could not find acceptable ICU library Missing entrypoint ucnv_open in ICU library Error loading ICU library version 65.0 Install completed симлинков наделал на все лады linux-todu:/usr/lib64 # ls | grep libicu libicudata.so libicudata.so.60_2 libicudata.so.60.2 libicudata.so.65 libicudata.so.65_1 libicudata.so.65.1 libicudata.so.suse65.1 libicui18n.so libicui18n.so.60_2 libicui18n.so.60.2 libicui18n.so.65 libicui18n.so.65_1 libicui18n.so.65.1 libicui18n.so.suse65.1 libicuio.so libicuio.so.60_2 libicuio.so.60.2 libicuio.so.65 libicuio.so.65_1 libicuio.so.65.1 libicuio.so.suse65.1 libicutest.so libicutest.so.60_2 libicutest.so.60.2 libicutest.so.65 libicutest.so.65_1 libicutest.so.65.1 libicutest.so.suse65.1 libicutu.so libicutu.so.60_2 libicutu.so.60.2 libicutu.so.65 libicutu.so.65_1 libicutu.so.65.1 libicutu.so.suse65.1 libicuuc.so libicuuc.so.60_2 libicuuc.so.60.2 libicuuc.so.65 libicuuc.so.65_1 libicuuc.so.65.1 libicuuc.so.suse65.1 hvlad покажи nm -D libicuuc.so | grep ucnv_open 000000000007a780 T ucnv_open_65_1 0000000000080fb0 T ucnv_openAllNames_65_1 000000000007a860 T ucnv_openCCSID_65_1 000000000007a7b0 T ucnv_openPackage_65_1 00000000000801e0 T ucnv_openStandardNames_65_1 000000000007a7c0 T ucnv_openU_65_1 Сейчас под руками есть еще и виртуалка с 7 центос, и его помучаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 16:43 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Ivan_Pisarevsky, спасибо. Оставь только libicuXXX.so.65_1 Буду думать, что с этим делать ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 17:05 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Если закинуть либы по ссылке, что ты постил выше на гитхаб, то там картинка чуть другая, но результат тот же. linux-todu:/usr/lib64 # nm -D libicuuc.so | grep ucnv_open 0000000000075f70 T ucnv_open_65 000000000007c160 T ucnv_openAllNames_65 0000000000076040 T ucnv_openCCSID_65 0000000000075fa0 T ucnv_openPackage_65 000000000007b490 T ucnv_openStandardNames_65 0000000000075fb0 T ucnv_openU_65 Есть какая либо дока что делать с ику? практические примеры? типа "бери дистр такой-то и вперед"... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 17:21 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
Ivan_Pisarevsky, я понятия не имею, почему suse распространяет свой "неправильный" ICU с "неправильными" суффиксами. Для того, чтобы Firebird смог его использовать, нужно сделать симлинки вида libicuXXX.so.65_1 Другие "свои" симлинки нужно убрать. Т.е. останутся только такие libicuXXX.so libicuXXX.so.65_1 libicuXXX.so.suse65.1 Если же ты хочешь поставить официальный пакет от ICU (который на гитхабе), то нужно удалить пакет от suse, убедиться что не осталось симлинков и развернуть пакет с гитхаба. Его Firebird должен подхватить без бубна. Если очень хочется докопаться до сути, то читать тут http://userguide.icu-project.org/design http://userguide.icu-project.org/packaging ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 17:47 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
hvlad Для того, чтобы Firebird смог его использовать, нужно сделать симлинки вида libicuXXX.so.65_1 Другие "свои" симлинки нужно убрать. Т.е. останутся только такие libicuXXX.so libicuXXX.so.65_1 libicuXXX.so.suse65.1 Завтра еще попробую варианты, либо с центосом, либо поставлю роллинг suse, там штатно 65.1 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2020, 18:55 |
|
Firebird 4: Could not find acceptable ICU library
|
|||
---|---|---|---|
#18+
С теми либами, что в репах центоса, что сюзи нихрена не работает. Таки придется читать доку и компилировать рпм-ку самому. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2020, 22:18 |
|
|
start [/forum/topic.php?all=1&fid=40&tid=1560436]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
28ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
247ms |
get tp. blocked users: |
2ms |
others: | 15ms |
total: | 337ms |
0 / 0 |