powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Firebird: переход на x64
21 сообщений из 46, страница 2 из 2
Firebird: переход на x64
    #39613062
Коваленко Дмитрий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qwer098Коваленко ДмитрийЕсть два простых совета по использованию FB:
1. Не используйте 32-битные сборки сервера и клиента.
2. Не используйте встроенный сервер.
И все-таки, почему?

1. Я описал выше. И неоднократно ругался здесь . Через месяц будет год как я окончательно забил на 32-битные компоненты сервера.

У меня недавно навернулся и 64-битный FB3 (в системе ресурсы закончилась - один драйвер дескрипторы не освобождал). Правда тогда упало очень много всего интересного ...

Так что, конечно, 64-бита не панацея.

2. У таких вещей (многопоточные DLL) должна быть пара функций - инициализация и деинициализация. Как, к примеру, у WinSock. Инициализации у встроенного сервера нет (?). А деинициализация есть. Если у тебя приложение с одним выходом, то без явной инициализации жить можно. Если что-то более сложное (оформленное в виде DLL) - то скорее всего возникнут проблемы с определением момента вызова деинициализации.

1+2. Если у тебя, при нехватке ресурсов, навернётся приложение со встроенным сервером, то, скорее всего, база будет повреждена.

----
На "нересурсоемких" задачах можно использовать что угодно :)

----
И да, вот что я пока могу (осторожно) сказать хорошего про FB(3) - при нехватке места на диске он не падает и базу не портит.
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39613066
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коваленко Дмитрий2. У таких вещей (многопоточные DLL) должна быть пара функций - инициализация и деинициализация. Как, к примеру, у WinSock. Инициализации у встроенного сервера нет (?). А деинициализация есть. Это можно обсудить.

Коваленко ДмитрийИ да, вот что я пока могу (осторожно) сказать хорошего про FB(3) - при нехватке места на диске он не падает и базу не портит.Это унаследовано от 2.5 :)
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39613071
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коваленко Дмитрий2. У таких вещей (многопоточные DLL) должна быть пара функций - инициализация и
деинициализация. Как, к примеру, у WinSock. Инициализации у встроенного сервера нет (?). А
деинициализация есть. Если у тебя приложение с одним выходом, то без явной инициализации
жить можно. Если что-то более сложное (оформленное в виде DLL) - то скорее всего возникнут
проблемы с определением момента вызова деинициализации.

Ой да какие там проблемы? MSDN прочитать да руку от лица суметь отлепить?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39613530
Василий №2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Коваленко Дмитрий1. Я описал выше. И неоднократно ругался здесь . Через месяц будет год как я окончательно забил на 32-битные компоненты сервера.

У меня недавно навернулся и 64-битный FB3 (в системе ресурсы закончилась - один драйвер дескрипторы не освобождал). Правда тогда упало очень много всего интересного ...

Так что, конечно, 64-бита не панацея.

2. У таких вещей (многопоточные DLL) должна быть пара функций - инициализация и деинициализация. Как, к примеру, у WinSock. Инициализации у встроенного сервера нет (?). А деинициализация есть. Если у тебя приложение с одним выходом, то без явной инициализации жить можно. Если что-то более сложное (оформленное в виде DLL) - то скорее всего возникнут проблемы с определением момента вызова деинициализации.

1+2. Если у тебя, при нехватке ресурсов, навернётся приложение со встроенным сервером, то, скорее всего, база будет повреждена.

----
На "нересурсоемких" задачах можно использовать что угодно :)


Подытожу высказывания Дмитрия:

1. Есть огурцы НЕЛЬЗЯ ни в коем случае, ибо настанет коллапс Вселенной
...
(мелким шрифтом)
10. Только при условии, что перед этим вы погладили баобаб
11. И у вас в левой руке был зажат ориентированный на Полярную звезду хвост тушкана
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39613563
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коваленко Дмитрий2. У таких вещей (многопоточные DLL) должна быть пара функций - инициализация и деинициализацияНафига аж целую пару функций?! DLL всю жизнь обходились одной функцией и для инициализации и для деинициализации.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
  APIENTRY
  BOOL DllMain
          (
            HMODULE hModule,
            DWORD  ul_reason_for_call,
            LPVOID lpReserved
          )
  {
    switch (ul_reason_for_call)
    {
    case DLL_PROCESS_ATTACH:
      break;
    case DLL_THREAD_ATTACH:
      break;
    case DLL_THREAD_DETACH:
      break;
    case DLL_PROCESS_DETACH:
      break;
    }
    return TRUE;
  }
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39613566
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,

ты не сечёшь о чём говорит Коваленко. Речь о fb_shutdown
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39613582
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисты не сечёшь о чём говорит Коваленко. Речь о fb_shutdown

Это тот редкий случай, когда rdb_dev как раз сечёт фишку, а Коваленко мается фигнёй.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39613609
Василий №2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rdb_devНафига аж целую пару функций?! DLL всю жизнь обходились одной функцией и для инициализации и для деинициализации.
Набор вещей, которые можно безнаказанно делать в DLLMain, очень скуден.
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39614734
Коваленко Дмитрий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvУ него там какие-то специфические случаи, которые в остальных 99% не имеют смысла.
Этот специфический случай называется "нагрузочное тестирование", через которое в течении месяца (как гласит предание) проходили релизы InterBase. И, наверное, должны проходить релизы Firebird. Но факты говорят об обратном.

Как то-так, только сразу



hvladКоваленко Дмитрий2. У таких вещей (многопоточные DLL) должна быть пара функций - инициализация и деинициализация.Это можно обсудить.
По-моему надо просто начинать трясти. Правда, я предлагаю сразу, лучше вырвать с корнем и посадить дерево заново :)

Dimitry SibiryakovКоваленко Дмитрий Если что-то более сложное (оформленное в виде DLL) - то скорее всего возникнут
проблемы с определением момента вызова деинициализации.

Ой да какие там проблемы? MSDN прочитать да руку от лица суметь отлепить?..

Ну и чего ты не помог в 2012-ом разрабам FB, когда они прикрутили рабочий поток в fbclient.dll, год с ним помучились, а потом открутили обратно?

Им так тебя не хватало.

rdb_devКоваленко Дмитрий2. У таких вещей (многопоточные DLL) должна быть пара функций - инициализация и деинициализацияНафига аж целую пару функций?! DLL всю жизнь обходились одной функцией и для инициализации и для деинициализации.
Код: plaintext
1.
2.
  APIENTRY
  BOOL DllMain


Месье продает серверные компоненты, оформленные в виде динамически загружаемых модулей?

Можно ссылочку, для ознакомления с достижениями?
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39614753
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коваленко ДмитрийЭтот специфический случай называется "нагрузочное тестирование", через которое в течении месяца (как гласит предание) проходили релизы InterBase. И, наверное, должны проходить релизы Firebird. Но факты говорят об обратном.Всё протестировать невозможно, маемо те, шо маемо (ц) :
http://web.firebirdsql.org/downloads/prerelease/results/
https://ib-aid.com/en/tests/
Плюс сотни часов прогонов того-же tpcc и других тестов мной персонально.
Твои тесты тоже не выявляют "ужас-ужас", насколько мне известно (а насколько ?)
Кроме того, они (твои тесты) таки специфичны и покрывают далеко не всё.
А что покрывают - нужно далеко не всем :)

Коваленко Дмитрийhvladпропущено...
Это можно обсудить.
По-моему надо просто начинать трясти.Ну, ты знаешь как меня найти. И как потрясти :)
Жду предложений

Коваленко Дмитрийприкрутили рабочий поток в fbclient.dll, год с ним помучились, а потом открутили обратно?Я что-то пропустил ? Забыл ?
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39614761
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коваленко ДмитрийИм так тебя не хватало.

Рефакторинг такого размера они от меня добровольно не принимали уже тогда. Сейчас даже
однострочный PR висит уже полгода. Походу, проект избрал путь Линуса и больше не принимает
код извне.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39614770
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

если ты про свой CORE-5631, то тебе в трекере популярно расжевали - почему оно нужно.

И - да - проект не принимает код от упёртых контрибуторов, не следующих разумным советам более опытных разработчиков.
Думаю, это можно сказать о любом уважающем себя проекте.
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39614772
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladпочему оно не нужно.
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39614778
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladесли ты про свой CORE-5631, то тебе в трекере популярно расжевали - почему оно не нужно.

Ага. Поэтому я запасся попкорном и надеюсь дожить до момента когда кто-нибудь соизволит
внедрить unicode в сервисы и бэкап на клиента с опцией verbose. Чисто на посмотреть через
какую проктостоматологию эту будет сделано.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39614781
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
utf8 - нормальный текст.
Собственно, UTF16/UTF32 должны сдохнуть, как неудачное решение.
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39614926
Коваленко Дмитрий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladКоваленко ДмитрийЭтот специфический случай называется "нагрузочное тестирование", через которое в течении месяца (как гласит предание) проходили релизы InterBase. И, наверное, должны проходить релизы Firebird. Но факты говорят об обратном.Всё протестировать невозможно, маемо те, шо маемо (ц) :

Я вот одного тогда понять не смог. Подключаемся к серверу, отключаемся. Второй раз подключаемся (через пару минут) - получаем ошибку подключения. Полгода до релиза, полгода после релиза.

Вот как такое можно прошляпить с такой толпой народа?

Собственно, претензия даже не к вам, а к толпе.
[spoiler] Дальше я вырезал, чтобы сильно тебя не расстраивать. Но видео оставлю, понравилось.
YouTube Video
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39614935
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коваленко ДмитрийЯ вот одного тогда понять не смог. Подключаемся к серверу, отключаемся. Второй раз подключаемся (через пару минут) - получаем ошибку подключения. Полгода до релиза, полгода после релиза.Ты с кем сейчас разговариваешь ? Я не знаю, о чём ты. Уточняй, слишком много версий.
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39659218
scorpion235
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv,
авторс тестом загрузки какая-то фигня полная. Сначала данные грузятся в fibdataset, в память, а потом перегружаются в memory dataset. Нафига эти двойные пляски? Что, если поменять датасет на fibquery ?
это нормальная практика, на каждый грид в проекте создавать свой fibquery - так делают только школьники и студенты
потом любой скролинг или сортировка в гриде будут жутко тормозить
проще и лучше перегрузить данные в оперативку в шустрый memory dataset, это занимает милисекунды даже на 10000 записей
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39659221
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
scorpion235на каждый грид в проекте создавать свой fibquery - так делают только школьники и студенты

Школьники не в курсе что такое fibquery и наивно думают, что их можно привязать к гриду.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39659231
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
scorpion235потом любой скролинг или сортировка в гриде будут жутко тормозить
1. вы перепутали fibdataset и fibquery
2. чушь какая. fibdataset и так все уже держит в памяти, поэтому ничего "жутко не тормозит"
3. для сортировок в гриде тогда уж надо использовать TClientDataSet. Или memorytable + некэширующий источник.
Иначе ваше приложение просто будет жрать памяти в 2 раза больше, чем могло бы, что я и имел в виду в предыдущем комменте.
...
Рейтинг: 0 / 0
Firebird: переход на x64
    #39659240
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvдля сортировок в гриде тогда уж надо использовать TClientDataSet. Или memorytable +
некэширующий источник.

TpFIBDataSet и сам по себе умеет локально сортировать записи.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
21 сообщений из 46, страница 2 из 2
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Firebird: переход на x64
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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