Название: Функция normalize_ippool в последней ревизии 489 Отправлено: Tooreagen от 11 Января 2018, 09:48:00 Обновился до ревизии 489 получил такое сообщение:
Код: You need to create function normalize_ippool! За что отвечает данная функция и что будет если ее не создать? Название: Re: Функция normalize_ippool в последней ревизии 489 Отправлено: Efendy от 11 Января 2018, 10:14:58 Причина ее введения указана в этой ветке: http://forum.nodeny.com.ua/index.php?topic=3034.0
Она вызывается после каждого ручного изменения пула ip и просто физически группирует записи. Это нужно для того, чтобы при выдаче динамических ip помочь mysql быстрее их выдавать. Для этого необходимо изменить процедуру выдачи ip - я там в примерах привел как, если коротко, то выдача свободного ip теперь идет не как "дай первый свободный ip", а как "дай любой свободный ip в данном диапазоне". В первом случае при большой нагрузке, когда много абонов в один момент пытаются получить ip, процедура пытается зарезервировать один и тот же ip, по итогу все разруливается на уровне mysql и один и тот же ip не выдается, но из-за большой нагрузки mysql может попасть в deadlock - запнется на долго, если коротко. Если у вас такой проблемы (с дедлоками) нет - можно процедуры не менять и соответсвенно функцию не создавать. С другой стороны, почему бы в любом случае не повысить производительность системы? Название: Re: Функция normalize_ippool в последней ревизии 489 Отправлено: Fredik от 28 Сентября 2019, 21:30:28 может не в тему но ответа не нашел
при выполнении пишет ошибку выполняем вот это Цитировать DROP FUNCTION IF EXISTS `normalize_ippool`; DELIMITER 21826 CREATE FUNCTION `normalize_ippool` ( ) RETURNS TINYINT NO SQL BEGIN DECLARE mid INTEGER UNSIGNED; SELECT MAX(id) into mid FROM ip_pool; UPDATE ip_pool SET id = id + mid; SET = 0; UPDATE ip_pool SET id = :=+1 ORDER BY realip, type, tags; RETURN 1; END21826 DELIMITER ; пишет вот это Цитировать #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '= 0; UPDATE ip_pool SET id = :=+1 ORDER BY realip, type, tags; RETUR' at line 8 Название: Re: Функция normalize_ippool в последней ревизии 489 Отправлено: Efendy от 29 Сентября 2019, 18:39:45 Пропал символ @ куда-то:
Код: DROP FUNCTION IF EXISTS `normalize_ippool`; Видимо при печати в консоль, инсталлятор отфильтровал эти символы. Исправлю Название: Re: Функция normalize_ippool в последней ревизии 489 Отправлено: WideAreaNetwork от 12 Января 2022, 19:52:48 на насе сделали обновление, далее perl install.pl -x и получили в конце такое
Код: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! это заклинание выполнил в мускуле на билингу, в итоге при выполнении на насе perl install.pl -x получаю в конце вышеуказанное заклинание подскажите плиз так и должно быть? судя по ответам в теме не должно было больше показывать это уведомление Название: Re: Функция normalize_ippool в последней ревизии 489 Отправлено: WideAreaNetwork от 12 Января 2022, 19:53:21 пс. обновляли до версии NEXT
Название: Re: Функция normalize_ippool в последней ревизии 489 Отправлено: Efendy от 14 Января 2022, 16:22:06 Запусти в msql:
Код: SELECT normalize_ippool() AS ok; Название: Re: Функция normalize_ippool в последней ревизии 489 Отправлено: WideAreaNetwork от 14 Января 2022, 17:41:31 Запусти в msql: Код: SELECT normalize_ippool() AS ok; Код: mysql> SELECT normalize_ippool() AS ok; Название: Re: Функция normalize_ippool в последней ревизии 489 Отправлено: Warlock от 14 Января 2022, 20:14:54 Такое у меня было на mysql 5.7. пришлось поставить 5.6, там такой проблемы нет
Название: Re: Функция normalize_ippool в последней ревизии 489 Отправлено: Efendy от 16 Января 2022, 01:47:12 не, ну откатывать мускул из-за предупреждения... Функция работает, возвращает 1. Почему скрипт это не увидел - хз, буду думать. Пока игнорьте это предупреждение
Название: Re: Функция normalize_ippool в последней ревизии 489 Отправлено: WideAreaNetwork от 16 Января 2022, 09:10:19 ок, спасибо
Название: Re: Функция normalize_ippool в последней ревизии 489 Отправлено: Warlock от 16 Января 2022, 18:21:10 Это было на тестовом сервере. В рабочем работает на 5.5. смысл обновлять, если всё работает )
|