|
PE 0x20
|
|||
---|---|---|---|
#18+
Приветствую знатоков! Планирую использовать 32-битный Superserver WI-V3.0.7.33374, но тема относится и к 4-ке тоже. Раньше использовал Classic 1.5, там этот вопрос не актуален. Вопрос, наверное, к разработчикам. Почему при сборке не прописывается PE-флаг 0x20 ? Ради теста прописал флаг hex-редактором вручную в firebird.exe. Две тестовые базы с DefaultDbCachePages = 100K и PageSize = 16384 (итого две по 1.6 Гб = 3.2 Гб) запустились одновременно и прекрасно работают. Кэш задействуется полностью. Картинка прилагается. Без флага запускается только одна. Вторая выдает ошибку: Код: plaintext 1. 2.
Может есть какие-то скрытые проблемы, которые я не увидел ? P.S. 64-битный не предлагать. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.12.2020, 21:45 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
ggreggory Вопрос, наверное, к разработчикам. Почему при сборке не прописывается PE-флаг 0x20 ? Никто никогда об этом не просил. Есть х64 системы, зачем эти извраты. PS У флага нет названия и все должны догадываться о его смысле ? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2020, 00:14 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
ggreggory, я вот тоже спрошу, нафиг это надо. Если вы подрихтовали exe чтобы он мог 3.2 гиг сожрать, то вы всё равно его будете запускать его на 64битной операционке, потому что 32битная от таких запросов лопнет. Кроме того, в чем смысл балансирования на грани? Ну дали кэш здоровенный, о, круто. А если еще влепить память для сортировок, или метаданные распухнут, то ФБ брякнется по превышению 3.2 гиг. Я понимаю, на классике на его штатно рекомендуемых настройках пофиг, что 32бит что 64бит. Но супер-то 32битный зачем? Ладно я в такое сижу, потыкиваю, на девелоперско-тестовой машине. А в production это совсем не надо. Да и терять минимум 7% производительности просто так - тоже сомнительная идея. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2020, 00:26 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
kdvЛадно я в такое сижу, потыкиваю, на девелоперско-тестовой машине. да таких машин уже сто лет нету. Любая современная IDE прожорлива и отнимает минимум 2Гб. Это скорее для клиентов с устаревшим говном, где приложения и сервер стоят на одной машине. Правда я не очень понимаю зачем при этом задавать кеш в макс. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2020, 08:16 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
hvlad ggreggory Вопрос, наверное, к разработчикам. Почему при сборке не прописывается PE-флаг 0x20 ? Есть х64 системы, зачем эти извраты. Невозможно собрать UDF нужной разрядности. Часть модулей без исходников. Производителей нет (разорились). Заменить нечем. hvlad PS У флага нет названия и все должны догадываться о его смысле ? На сайте Микрософта он называется IMAGE_FILE_LARGE_ADDRESS_AWARE https://docs.microsoft.com/en-us/windows/win32/debug/pe-format ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2020, 13:25 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
ggreggoryНевозможно собрать UDF нужной разрядности. Часть модулей без исходников. Производителей нет (разорились). Заменить нечем. И это как-то заставляет обслуживать несколько баз с безумно задранным кэшем одним инстансом сервера?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2020, 13:32 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
kdv ФБ брякнется по превышению... Ещё хочется узнать у экспертов-практиков. Он реально брякается или просто statement не выполнится и клиенту вернется какой-нибудь код ошибки? Может файл базы повредиться при возникновении out of memory в процессе firebird.exe? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2020, 16:41 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
ggreggory Невозможно собрать UDF нужной разрядности. ggreggory Заменить нечем. ggreggory Раньше использовал Classic 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2020, 16:52 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov инстансом сервера?.. Мульиинстанс как запасной вариант можно будет использовать. Годится! Но меня больше волнует вопрос дефолтных значений firebird.conf для дистрибутива Firebird исходя из требований: 1) Никто не должен залезать в настройки firebird.conf и что-то менять 2) По кол-ву баз и их размерам достаточно большой разброс В доступных материалах (вот например https://ib-aid.com/en/optimized-firebird-configuration/ ) варианты 32-битного Superserver-а не представлены. Увеличенное адресное пространство даёт больше возможности для маневра при принятии решения (выборе параметров конфигурации). Например, в материалах выше предлагается дефолтный кэш в 20К страниц (я смотрю вариант 64-битной настройки superserver-a). При размере страницы БД 16К с таким кэшем можно запустить не больше 6 баз (на 32-битном Superserver). А с буфером сортировки и того меньше. Т.е. такой размер для 32-битного и без PE-флага 0x20 - не подойдет. А ставим флаг и в принципе предлагаемый дефолтный кэш 20К вполне себе рабочий. Ivan_Pisarevsky ggreggory Заменить нечем. Это вопрос денег, а не трудностей. Стоимость замены не укладывается в имеющийся бюджет. автор ggreggory Раньше использовал Classic 1.5 Как понимаю Superserver это одно из главных преимуществ 3-ей версии. Или я не прав? У меня нет практики. Напишите, было бы интересно! ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2020, 17:55 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
ggreggoryА ставим флаг и в принципе предлагаемый дефолтный кэш 20К вполне себе рабочий. А ты не предполагай, ты загляни в конфиг. Умолчательный размер кэша для суперсервера 2048 страниц. Так что если идиоты не будут залезать в настройки firebird.conf, то они из из доступного ОЗУ не выйдут. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2020, 18:02 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
ggreggoryНевозможно собрать UDF нужной разрядности. Часть модулей без исходников. такие прям кабздец секретные udf что нельзя заменить альтернативами или болванками? ggreggoryОн реально брякается или просто statement не выполнится и клиенту вернется какой-нибудь код ошибки? ну, возьми 32бит приложение на Дельфи, и аллокируй там пару строк по 2 гига. Винда прибьет приложение по переполнению памяти. Ну не может 32бит приложение штатно адресовать больше 2 гиг. https://overcoder.net/q/415486/какой-максимальный-объем-памяти-доступен-для-приложения-c-в-32-битной-windows ggreggoryварианты 32-битного Superserver-а не представлены. помилуй мя, кому они нужны-то??? сидельцам на 32битной Windows XP? Все серверные (да и десктопные ОС) нынче 64битные. ggreggoryУвеличенное адресное пространство даёт больше возможности для маневра при принятии решения (выборе параметров конфигурации). спасибо, оч. смешно. Был лимит на 2 гига, стало 3.2 гига, охрененные возможности для маневра. Я понимаю, что очень сильно хочется на суперсервер, но если у вас невозможно переписать udf, так сидите дальше на 32битном классике, не надо рыпаться на супер с увеличением на 32битное хрен-пойми-чего с мутными перспективами. ggreggoryПри размере страницы БД 16К с таким кэшем можно запустить не больше 6 баз (на 32-битном Superserver). А с буфером сортировки и того меньше. Т.е. такой размер для 32-битного и без PE-флага 0x20 - не подойдет. А ставим флаг и в принципе предлагаемый дефолтный кэш 20К вполне себе рабочий. это мне напомнило как я в 1987 году написал драйвер принтера на ассемблере, который занимал 600 байт в памяти. Но тогда деваться некуда было. ggreggoryКак понимаю Superserver это одно из главных преимуществ 3-ей версии. Или я не прав? У меня нет практики. Напишите, было бы интересно! да ё-мое, я видео по архитектурам фб3 выпустил в марте 2018 года. Сколько можно уже про это... https:// www.youtube.com/watch?v=ewrNLNDOtiE ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2020, 19:09 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
ggreggory В доступных материалах (вот например https://ib-aid.com/en/optimized-firebird-configuration/ ) варианты 32-битного Superserver-а не представлены. потому что 32-битный SS на фиг никому не нужен. авторКак понимаю Superserver это одно из главных преимуществ 3-ей версии. Или я не прав? не совсем прав. Там помимо супера ещё много чего. Некоторые всё равно классик оставляют. Суперсервер раскрывается именно на 64-битном железе, ибо можно поставить большой кеш и под сортировку много памяти. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2020, 20:36 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
kdv ну, возьми 32бит Дима, только не обижайтесь, но вот тут человек таблетки рекламировал: https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=523729&msg=22242699 Просто я не то спрашиваю, а вы не то отвечаете. За видео, конечно, спасибо, очень целостное и внятное, особенно с историческим экскурсом. ggreggory kdv ФБ брякнется по превышению... Ещё хочется узнать у экспертов-практиков. Он реально брякается или просто statement не выполнится и клиенту вернется какой-нибудь код ошибки? Может файл базы повредиться при возникновении out of memory в процессе firebird.exe? Провел разные тесты. Сервер НЕ ПАДАЕТ . При превышении по буферам просто не дает подключиться к базе с выдачей сообщения, которое я привел выше. При превышении по сортировке просто аллокирует не сколько в конфиге, а сколько получится. Не получается - использует диск. В диспетчере это выглядит так: 3.8 Гб смог аллокировать, а дальше массовый ввод-вывод, хотя в конфиге я поставил буфер сортировки 1Гб. Картинка ниже. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2020, 20:59 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
А если кому очень приспичило, то сигнатуры-то UDF известны, написать обёртку-маршаллинг на основе любого знакомого RPC проблем не должно составить. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2020, 21:13 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
ggreggory Как понимаю Superserver это одно из главных преимуществ 3-ей версии. Симонов Денис Некоторые всё равно классик оставляют. Если ОСи достаточно памяти, то классик вполне себе живо работает и гнать попусту на него волну не стОит. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2020, 21:19 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov А если кому очень приспичило, то сигнатуры-то UDF известны, написать обёртку-маршаллинг на основе любого знакомого RPC проблем не должно составить. Можно. Цена будет - увеличение глючности и уменьшение скорости. Но если приспичит - можно! Ivan_Pisarevsky Да. И ничего зазорного в этом не вижу. Если ОСи достаточно памяти, то классик вполне себе живо работает и гнать попусту на него волну не стОит. Да я не гоню, меня классик в 1.5 устраивает. Но тот же Кузьменко в своих видео показывает, что на Super раза в 3 идет быстрее сортировка по индексу за счет большого кэша. Мне это интересно. У нас не-скалярные запросы все с order by если не по полям, то по ключу (искусственному). А искусственный ключ, как понимаю, тоже может иметь плохой фактор кластеризации. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2020, 21:59 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
ggreggoryЦена будет - увеличение глючности и уменьшение скорости. Наоборот: никакая глючная UDF не положит целый сервер и не утечёт всю его память. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
16.12.2020, 22:09 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
ggreggory Провел разные тесты Вы не переходите на 64-разряда из-за сторонних UDF. Уверены, что у них нет проблем "со знаковостью"? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 06:33 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
Basil A. Sidorov ggreggory Провел разные тесты Когда это указатели были signed?.. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 09:20 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
ggreggory, а что в этих UDF какая-то супер-пупер логика? Ты не знаешь что они делают? У меня тоже во времена 1.5 полбазы было обвешано UDF. В основном rfunc + ещё свои. Когда переходил на 2.5, месяца 3 мучился, но в итоге выпилил абсолютно все. Либо заменил на встроенные функции, либо написал ХП, либо перенёс на сторону клиента. А когда переходил на тройку оформил, те ХП как PSQL функции. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 09:47 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
ggreggoryДима, только не обижайтесь, но вот тут человек таблетки рекламировал: Просто я не то спрашиваю, а вы не то отвечаете. За видео, конечно, спасибо, очень целостное и внятное, особенно с историческим экскурсом. это намек на старческо-склеротические явления? :-) я отвечаю именно на то, что вы спрашиваете. ggreggory64-битный не предлагать. Официальный ответ - вы занимаетесь фигнёй. У вас получилось? Я рад за вас. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 10:06 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
alekcvp Когда это указатели были signed?.. Априори утверждать, что все операции с указателями конкретного двоичного кода полностью корректны при любых возможных значениях указателей ... Ну не знаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 12:27 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
Всё что только можно, естественно, переведено на встроенные функции. Они и удобнее, и быстрее работают. Basil A. Sidorov Вы не переходите на 64-разряда из-за сторонних UDF. Уверены, что у них нет проблем "со знаковостью"? Про знаковость слышу первый раз. UDF свои, на Delphi, скомпилированы на 10.3. Но они используют 32-битные объектные модули CodeGear C++ 6.40 и Turbo Assembler 5.0, ещё часть модулей - декомпилированные DCU, т.е. это PAS, но код на ассемблере (32-битном). Резюме. Выводы делать рано. Пока буду оставаться на пропатченном 32-битном superserver-е и патчить все новые версии Firebird-а при обновлении, это не трудно. А там время покажет. Но все предложенные в этой ветке варианты буду держать в уме. Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 15:08 |
|
PE 0x20
|
|||
---|---|---|---|
#18+
Basil A. Sidorov alekcvp Когда это указатели были signed?.. Априори утверждать, что все операции с указателями конкретного двоичного кода полностью корректны при любых возможных значениях указателей ... Ну не знаю. Как бы у ограничения в 2Гб ноги растут как раз из-за signed int. Если бы указатели были со знаком, то x86 OS ни при каких условиях не могла бы адресовать более двух гигабайт памяти (без свопа). А так ей доступно 4 (минус адреса оборудования). Но да, если есть какое-то кривое приложение, писаное индусами которые присваивают адреса в памяти знаковым переменным, то могут быть сюрпризы. Примерно оттуда же растут ноги у борланда, когда все Size и Count у них имеют тип Integer, как будто размер файла может быть отрицательным... ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2020, 22:51 |
|
|
start [/forum/topic.php?fid=40&fpage=9&tid=1560161]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
57ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
95ms |
get tp. blocked users: |
2ms |
others: | 11ms |
total: | 212ms |
0 / 0 |