BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 28 апр 2024, 15:26

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 12 ] 
Автор Сообщение
СообщениеДобавлено: 26 июн 2017, 17:58 
Не в сети

Зарегистрирован: 05 дек 2016, 12:10
Сообщения: 87
Карма: 0
Добрый день!
С некоторых пор наблюдается странное поведение BGBilling.
Примерно раз в месяц в server.error.log появляются сообщения
FlowListenerWorker - Lock wait timeout for ContractRuntime

При этом в почту начинаются сыпаться уведомления
[BGIPNNetflowCollector] Ошибка соединения с Master базой данных,  [BGScheduler] Ошибка соединения с Master базой данных

Оказывается недоступен вход в ЛК для абонентов.
При проверке mysqld никакой повышенной нагрузки на БД не наблюдается.
Лечится все только перезапуском сервисов /etc/init.d/bginetaccounting_server, причем сервис приходится убивать через kill -9 PID, поскольку команда /etc/init.d/bginetaccounting_server stop не выполняется, висит просто без всякого результата.

Подскажите,пожалуйста в чем может быть дело.
Спасибо!
Код:
Информация о версии:

  Клиент: вер. 7.0.891 / 29.05.2017 13:00:15
    os: Windows 10; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_131
  Сервер: вер. 7.0.1236 / 29.05.2017 13:02:07
    os: Linux; java: Java HotSpot(TM) Client VM, v.1.8.0_121

  bill: вер. 7.0.120 / 03.05.2017 16:51:03
  card: вер. 7.0.43 / 21.03.2017 15:12:24
  dba: вер. 7.0.167 / 08.04.2016 17:40:39
  inet: вер. 7.0.751 / 29.05.2017 13:02:37
  ipn: вер. 7.0.267 / 13.03.2017 11:35:50
  npay: вер. 7.0.206 / 15.03.2017 18:44:23
  phone: вер. 7.0.291 / 13.03.2017 11:36:18
  reports: вер. 7.0.231 / 15.03.2017 18:48:01
  rscm: вер. 7.0.185 / 19.04.2017 15:13:51
  ru.bitel.bgbilling.plugins.crm: вер. 7.0.198 / 07.11.2016 18:45:32
  ru.bitel.bgbilling.plugins.documents: вер. 7.0.176 / 21.11.2016 19:01:57
  ru.bitel.bgbilling.plugins.helpdesk: вер. 7.0.196 / 15.02.2017 18:12:55
  ru.bitel.bgbilling.plugins.organizer: вер. 7.0.75 / 05.10.2016 13:43:02
  voiceip: вер. 7.0.195 / 22.05.2017 15:57:12
  yamoney: вер. 7.0.71 / 29.05.2017 13:03:28

Окружение:

  Клиент:
    os: Windows 10 amd64, 10.0
    java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_131
    jre home: C:\Program Files\Java\jre1.8.0_131_x64
    memory (use/total/max): 72M/95M/455M
    default tz: 26.06.2017 14:58 MSK +0300 (Europe/Moscow)
    user tz: 26.06.2017 14:58 MSK +0300 (Europe/Moscow)
    locale: ru_RU
  Сервер:
    os: Linux i386, 2.6.32-71.el6.i686
    java: Java HotSpot(TM) Client VM, v.1.8.0_121
    jre home: /opt/java/jdk1.8.0_121/jre
    default tz: 26.06.2017 14:58 MSK +0300 (Europe/Moscow)
    memory (use/total/max): 89M/98M/494M
    db time: master: 26.06.2017 14:58 MSK
    db charset: connection: utf8(utf8_general_ci), database: cp1251(cp1251_general_ci)
    locale: en_US
    uptime: Started: 26.06.2017 08:26:45 Uptime: 0 d 06:31:26


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 июн 2017, 14:25 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
логи целиком надо смотреть

ещё: 494M - это не мало для сервера?

это тоже надо поправить:
db charset: connection: utf8(utf8_general_ci), database: cp1251(cp1251_general_ci)

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 июн 2017, 14:45 
Не в сети

Зарегистрирован: 05 дек 2016, 12:10
Сообщения: 87
Карма: 0
Спасибо за ответ!

Скажите, эти параметры относятся непосредственно к ОС или к базе?
dimOn писал(а):
ещё: 494M - это не мало для сервера?

Нужно конвертировать базу в UTF8?
dimOn писал(а):
это тоже надо поправить:
db charset: connection: utf8(utf8_general_ci), database: cp1251(cp1251_general_ci)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 июн 2017, 14:47 
Не в сети

Зарегистрирован: 05 дек 2016, 12:10
Сообщения: 87
Карма: 0
Или память это сколько выделено под JVM?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 июн 2017, 15:19 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
494M - это сколько у вас выделено для JVM , на которой запущен сервер биллинга. Это скорее всего мало, может быть просто залипает по OutOfMemory (потому и сказал в логах надо порыться внимательнее) и начинает всё падать, симптомы похожие вполне. Про БД тут про память ничего нет, там надо тоже по логам порыться, или в момент этих проблем зайти на БД и посмотреть состояние - может она тоже висит.

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 июн 2017, 15:19 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
Цитата:
Нужно конвертировать базу в UTF8?

не обязательно, можете оставить в 1251, но в data.properties надо написать в коннекшене вместо utf8 нужную кодировку
https://docs.bitel.ru/pages/viewpage.ac ... d=43384846

по умолчанию там так стоит:
characterEncoding=UTF-8&connectionCollation=utf8_unicode_ci&
но у вас utf8_general_ci так что либо вы сами писали там
characterEncoding=UTF-8&connectionCollation=utf8_general_ci&
или скорее всего у вас там
characterEncoding=UTF-8

в общем оба два этих уберите и поставьте просто
characterEncoding=cp1251

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 июн 2017, 15:23 
Не в сети

Зарегистрирован: 05 дек 2016, 12:10
Сообщения: 87
Карма: 0
dimOn писал(а):
494M - это сколько у вас выделено для JVM , на которой запущен сервер биллинга. Это скорее всего мало, может быть просто залипает по OutOfMemory (потому и сказал в логах надо порыться внимательнее) и начинает всё падать, симптомы похожие вполне. Про БД тут про память ничего нет, там надо тоже по логам порыться, или в момент этих проблем зайти на БД и посмотреть состояние - может она тоже висит.


а как увеличить максимальное количество памяти под JVM на сервере? Пробую вот так export JAVA_OPTS="-Xms256m -Xmx1024m", но пока изменений не вижу.
в момент залипания база не висит совсем, наоборот коннекшенов мало.

Спасибо


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 27 июн 2017, 15:37 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
ну да, надо в лаунчере менять Xmx, потом перезагрузить сервер и в about смотрите - там изменились цифры то эти memory (use/total/max) в сервере?

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 29 июн 2017, 10:59 
Не в сети

Зарегистрирован: 05 дек 2016, 12:10
Сообщения: 87
Карма: 0
dimOn писал(а):
ну да, надо в лаунчере менять Xmx, потом перезагрузить сервер и в about смотрите - там изменились цифры то эти memory (use/total/max) в сервере?

да, теперь так, посмотрим повторится ситуация или нет.
Спасибо
Код:
Сервер:
    os: Linux i386, 2.6.32-71.el6.i686
    java: Java HotSpot(TM) Client VM, v.1.8.0_121
    jre home: /opt/java/jdk1.8.0_121/jre
    default tz: 29.06.2017 07:59 MSK +0300 (Europe/Moscow)
    memory (use/total/max): 94M/123M/989M
    db time: master: 29.06.2017 07:59 MSK
    db charset: connection: cp1251(cp1251_general_ci), database: cp1251(cp1251_general_ci)
    locale: en_US
    uptime: Started: 27.06.2017 14:37:00 Uptime: 1 d 17:22:01


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 29 июн 2017, 16:12 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
В SHOW ENGINE INNODB STATUS есть "latest detected deadlock"? Какое время назад он произошел?

Когда последний раз было такое - делали SHOW PROCESSLIST? Не сохранился вывод?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 29 июн 2017, 16:59 
Не в сети

Зарегистрирован: 05 дек 2016, 12:10
Сообщения: 87
Карма: 0
Amir писал(а):
В SHOW ENGINE INNODB STATUS есть "latest detected deadlock"? Какое время назад он произошел?

Секция LATEST DETECTED DEADLOCK отсутствует в выводе команды.
Amir писал(а):
Когда последний раз было такое - делали SHOW PROCESSLIST? Не сохранился вывод?

К сож не сохранился, если такое вдруг еще произойдет соберу более детальную статистику.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 29 июн 2017, 17:15 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Если снова возникнет нужно будет сохранить перед перезагрузкой:

SHOW PROCESS LIST
SHOW ENGINE INNODB STATUS
top
iotop
(на машине с БД)

Посмотреть, нет ли ошибок в логах MySQL,
нет ли иных, кроме Lock wait timeout for ContractRuntime в логах InetAccess/Accounting.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 12 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
POWERED_BY
Русская поддержка phpBB
[ Time : 0.126s | 42 Queries | GZIP : On ]