|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
Вот дамп, но я не уверен что это тот, который нужен - т.к. после падения база тут же перезапускается. https://yadi.sk/d/rUeYqOHCtPomc ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 14:30 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
Снова упал с ошибкой в логе: DBS Mon Jul 18 14:31:45 2016 Access violation. The code attempted to access a virtual address without privilege to do so. This exception will cause the Firebird server to terminate abnormally. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 14:33 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
db20mlnПришлось поставить DefaultDbCachePages = 640000а) накой назначать огромный кеш ВСЕМ БД ? б) FileSystemCacheThreshold отредактировал ? db20mlnСперва база упала из-за udf - может и не из-за нее, но в логах дважды появилась ошибкаОднозначно из-за неё db20mlnЗаменил ее на udrНа что ??? db20mlnПосле чего вообще все упалоА до этого падало как-то иначе, не вообще ? firebird.log во время падения что-то содержит, кроме INET ошибок ? db20mln Общие наблюдения: Выборка и апдейт выполняются дольше, т.е. в сумме все делается в 1.5 - 3 раза дольше.Потому что ты отключил файловый кеш db20mlnПо монитору ресурсов: загрузка диска на 90-99%, при этом ввод/вывод = 7-20 Мб/с. При классике было: загрузка диска на 85-95%, ввод/вывод = 20-70 Мб/с.Потому что ты отключил файловый кеш db20mlnВ время работы воркеров, даже в IB Expert не зайдешь - тупит сильно, по несколько минут не реагирует.Потому что ты отключил файловый кеш ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 14:36 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
db20mlnВот дамп, но я не уверен что это тот, который нужен - т.к. после падения база тут же перезапускается.Как ты его получил ? Для получения дампа в момент падения чти про WER (windows error reporting) ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 14:39 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
db20mln, а ты через новый fbclient работаешь или через тот что от 2.5 остался? Подключаешься через алиас БД? В databases.conf никакие параметры не переопределял? P.S. UDF была однозначно кривой. За UDR не скажу от неё вроде как логах ничего не было, но и не факт что если что не так туда оно попадает. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 14:42 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
db20mln, ваша UDR тоже кривая. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 14:46 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
hvladНа что ??? он имеет ввиду новые внешние функции. Хотя я сильно сомневаюсь что он её правильно написал, ибо сложнее это чем Legacy UDF. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 14:48 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
Симонов Денисон имеет ввиду новые внешние функцииЯ значение букв UDR понимаю :) Но очень сильно сомневаюсь, что ТС имел в виду именно их. Ставлю на PSQL ф-цию или встроенный хеш. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 14:52 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
hvladdb20mlnПришлось поставить DefaultDbCachePages = 640000а) накой назначать огромный кеш ВСЕМ БД ? БД всего одна. При меньшем кеше скорость работы падает. При работе воркеров они читают большую таблицу - но каждый свою часть данных. Т.е. кеш слишком быстро забивается и освобождается (воркеры запускаются 1500 - 3500 раз, но не более 40-60 одновременно). Я прикинул что если при классике я ставил 16000 (выбрано после ряда экспериментов), то при 40 одновременных воркерах - это как раз 640000. hvladб) FileSystemCacheThreshold отредактировал ? Нет. Подскажите пож-та какое значение установить. Мануалы читал, но 2 недели этих проблем уже высушили мозг. hvladdb20mlnЗаменил ее на udrНа что ??? udr.dll У меня одна самописная внешняя функция - перед переходом с 2.5 на 3.0 реализовал ее в виде UDR. hvladdb20mlnПосле чего вообще все упалоА до этого падало как-то иначе, не вообще ? firebird.log во время падения что-то содержит, кроме INET ошибок ? До этого клиентские приложения продолжали работать - т.е. я так думал, а после отправки поста понял, что скорее всего юзеры перезапустили прогу и благополучно продолжили работать. При последнем падении было только то что выше писал DBS Mon Jul 18 14:31:45 2016 Access violation. The code attempted to access a virtual address without privilege to do so. This exception will cause the Firebird server to terminate abnormally. hvladПотому что ты отключил файловый кеш Я понял что он отключился из-за FileSystemCacheThreshold, подскажите плз какое значение поставить. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 17:05 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
Симонов Денисdb20mln, а ты через новый fbclient работаешь или через тот что от 2.5 остался? Подключаешься через алиас БД? В databases.conf никакие параметры не переопределял? P.S. UDF была однозначно кривой. За UDR не скажу от неё вроде как логах ничего не было, но и не факт что если что не так туда оно попадает. Через GDS32.dll. databases.conf не трогал. Я ночью запускал тестовый прогон - все прошло без сбоев, просто очень медленно (видимо отключился файловый кеш). Раньше на классике - тоже иногда все проходило без сбоев, но чем больше данных запускаешь обрабатывать, тем больше шансов сбоя. Ну и супер при сбое просто перезапускается и отрубаются все коннекты. А классик - ну я писал в начале, другое поведение и другие ошибки в логе. Симонов Денисdb20mln, ваша UDR тоже кривая. Даже если и так - как мне об этом узнать, если сообщений об ошибках нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 17:19 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
db20mln, больше чем DefaultDbCachePages. А вообще логика кажется странной. Почему требуется апдейтить хренову тучу строк? Это же порождает мусор и его сборку. Оно реально всё апдейтится или всё же часть апдейтов просто работают в холостую? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 17:22 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
GDS32.dll - конечно же новый, который ставится тройкой. Он и в C:\Windows\SysWOW64\ и в папке с приложением. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 17:26 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
hvladДля получения дампа в момент падения чти про WER (windows error reporting) WER не был включен по умолчанию. Сейчас включу, снова переключусь на СС и буду ждать сбой :( ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 17:28 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
Симонов Денисdb20mln, больше чем DefaultDbCachePages. А вообще логика кажется странной. Почему требуется апдейтить хренову тучу строк? Это же порождает мусор и его сборку. Оно реально всё апдейтится или всё же часть апдейтов просто работают в холостую? Это не лучшее решение, но оно было частью архитектуры и работало на 2.5. Сейчас думаю как изменить эту части системы, чтобы радикально уменьшить кол-во апдейтов и инсертов. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 17:35 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
db20mlnhvladа) накой назначать огромный кеш ВСЕМ БД ?БД всего однаНет. Есть ещё security database db20mlnЯ прикинул что если при классике я ставил 16000 (выбрано после ряда экспериментов), то при 40 одновременных воркерах - это как раз 640000.Ну почему никто никогда не вспоминает про файловый кеш ??? db20mlnudr.dll У меня одна самописная внешняя функция - перед переходом с 2.5 на 3.0 реализовал ее в виде UDR.Я правильно поинмаю, что была UDF, которая приводила к падениям, и вместо неё была написана UDR (что на порядок сложнее) ? А смысл где ? db20mlnhvladПотому что ты отключил файловый кеш Я понял что он отключился из-за FileSystemCacheThreshold, подскажите плз какое значение поставить.Уже написали - больше, чем кеш БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 17:48 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
db20mlnПри меньшем кеше скорость работы падает. А статистика работы кэша вообще собиралась или все изменения параметров проводятся исключительно на "партийном чутье"? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 17:50 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
hvladЕсть ещё security database Для которой в databases.conf гвоздиками прибито DefaultDbCachePages = 50. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 17:54 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
hvladЯ правильно понимаю, что была UDF, которая приводила к падениям, и вместо неё была написана UDR (что на порядок сложнее) ? А смысл где ? Нет. Была UDF - 32 битная - в ней всего одна функция, она 4 года работала на FB 2.5, ошибок не выдавала. Когда скомпилировали ее под 64 бита - подключить так и не получилось, выдавала ошибки (под 64 битной FB). После выхода тройки решил сделать UDR чтобы перейти на 64 битную базу, пока делал - разобрался и с 64 битной версией UDF. Т.е. по сути могу сейчас использовать и UDF, и UDR. Ошибки UDF появились первый раз сегодня - при запуске в SS. Поэтому я и переключился на UDR. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 18:05 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovА статистика работы кэша вообще собиралась или все изменения параметров проводятся исключительно на "партийном чутье"? Нет, не собиралась. Все делалось замерами времени выполнения. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 18:08 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
db20mln, давай сюда код своей UDR/UDF вместе с объявлением метаданных. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 18:26 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
Симонов Денисдавай сюда код своей UDR/UDF вместе с объявлением метаданных. https://yadi.sk/d/khuy3SX4tQPXh ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 18:45 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
db20mln, 1. Надо память явно выделить, а не возвращать указатель на автоматическую переменную, неужели не ясно. 2. При чем - не просто выделить, а из менеджера памяти FB. Т.е. чз ib_util_malloc и объявить с FREE_IT. (в случае с SS можно иногда вывернуться через ThreadVar и не использовать ib_util_malloc/FREE_IT, но смысла я не вижу в подобных извращениях). ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 18:56 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
db20mln, Пример: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 18:59 |
|
Зависание базы - новые коннекты не реагируют, старые работают
|
|||
---|---|---|---|
#18+
* для тебя - PChar в PAnsiChar и String в AnsiString заменить надо будет наверно в моем коде. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.07.2016, 19:02 |
|
|
start [/forum/topic.php?fid=40&msg=39275883&tid=1560798]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
85ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
others: | 302ms |
total: | 493ms |
0 / 0 |