Перейти до

ошибка при попытке редактировать свич


Рекомендованные сообщения

После обновления до последней версии при попытке отредактировать любой свич вываливается ошибка:


Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 72 bytes) in /usr/local/www/apache24/data/billing/api/libs/api.mapscommon.php on line 21

до этого была ошибка о том что за 30 секунд страница не была сгенирована, решилось

max_execution_time = 180

также увеличил

memory_limit = 512M

был 256M

Ссылка на сообщение
Поделиться на других сайтах
8 минут назад, sergey104 сказал:

После обновления до последней версии при попытке отредактировать любой свич вываливается ошибка:


Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 72 bytes) in /usr/local/www/apache24/data/billing/api/libs/api.mapscommon.php on line 21

до этого была ошибка о том что за 30 секунд страница не была сгенирована, решилось

max_execution_time = 180

также увеличил

memory_limit = 512M

был 256M

 

так может отрабатывать детекция петель (когда свичи друг другу как аплинки указаны)

Відредаговано l1ght
Ссылка на сообщение
Поделиться на других сайтах
27 минут назад, pashaumka сказал:

тогда стоит допилить кусочек биллинга на такое "зацикливание"

У нас опенсурц. Всегда рады пулреквестам на Гите.

А вообще эта ошибка и есть попытки починить зацикливание свичей.

 

Пока вижу только возможность ручками сбросить в БД аплинки у свичей. Либо у всех сразу (если день разбираться) либо у проблемных.

Відредаговано l1ght
  • Like 1
Ссылка на сообщение
Поделиться на других сайтах

ну... в чужой код я не полезу ибо у меня старгазер не стоит... у меня свое..

ну типа сделать массив "посещенных" портов и если порт уже существует в списке - выплюнуть ошибку.... если нет - добавить

и типа тут-же можно отрисовать трассу "пройденнных" коммутаторов

заодно пропинговать коммутаторы и отрисовать ,  какой не отвечает..

Відредаговано pashaumka
Ссылка на сообщение
Поделиться на других сайтах
46 минут назад, pashaumka сказал:

ибо у меня старгазер не стоит.

спасибо, что поделились своими переживаниями на тему того, чего там у вас не стоит

 

47 минут назад, pashaumka сказал:

ну типа сделать массив "посещенных" портов и если пор

и прочее бла-бла-бла, которое давно у всех нормальных людей есть, реализовано и работает годами. Просто некоторым, такие банальные идеи поданные в виде поучительных советов, кажутся гениальными открытиями.

 

1 час назад, pashaumka сказал:

тогда стоит допилить кусочек биллинга на такое "зацикливание" 

И вот такие тоже.

 

Очевидно, такое происходит в тех случаях, когда люди в принципе не в теме, того что из вебморды уже хз сколько лет невозможно выставить аплинками самого себя, либо что-то что по петле к самому себе придет, либо свитч без указанных гео-координат. Или о том, что даже для таких случаев как лупы в отслеживании путей по свитчам есть штатный модуль для вылавливания и рихтовки таких проблем.

Ссылка на сообщение
Поделиться на других сайтах
3 часа назад, sergey104 сказал:

можете поделиться запросом в базу почистить аплинки? Хорошо если всех сразу.

Почему сразу не всю табличку грохнуть и облить сервер бензином? Ничего более радикального в голову не пришло?

 

"Свитчи" -> "Инструменты" -> "Проверка целостности".

 

Ну либо если вам хочется и кажется, что решения с бензином таки адекватные, можете сделать UPDATE `switches` set `parentid`=NULL

 

 

 

Ссылка на сообщение
Поделиться на других сайтах
1 hour ago, nightfly said:

 

"Свитчи" -> "Инструменты" -> "Проверка целостности". 

 

выдало:

Всего свитчей в базе: 125

Родительских свитчей найдено: 35

Это значит что проблем с зацикливанием нет?

Ссылка на сообщение
Поделиться на других сайтах
2 часа назад, sergey104 сказал:

Это значит что проблем с зацикливанием нет?

Нет, это только означает, то что ваша база имеет шанс на жизнь. Можете обновиться до Ubilling CURRENT 0.9.0 rev 6197 и повторить. Улучшил немного детектирование неочевидных колец.

Ссылка на сообщение
Поделиться на других сайтах

Сегодня еще вспомнил, что забыл нарисовать проверку на слишком близкородственные связи и инцест. Теперь и они есть в Ubilling CURRENT 0.9.0 rev 6198.

 

loops.png

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, sergey104 сказал:

спасибо, попробуем через пару дней: сейчас начало месяца, не удобно откатываться если что.

Действительно, обновления это же так сложно, и так долго.

 

 

Ссылка на сообщение
Поделиться на других сайтах

обновились. Запускаем Проверка целостности свитчей:

Всего свитчей в базе: 125

Родительских свитчей найдено: 35

Взаимоотношения следующих свитчей могут произвести к петлям: [13] [84]

Ссылка на сообщение
Поделиться на других сайтах

Чисто из интереса, покажите ка

 

SELECT `id`,`parentid` from `switches` WHERE `id`='13' OR `id`='84'

и поведайте, как вы умудрились это сделать?

 

Ну и исправьте заодно

UPDATE `switches` SET `parentid`='' WHERE `id`='13'
UPDATE `switches` SET `parentid`='' WHERE `id`='84'

 

Ссылка на сообщение
Поделиться на других сайтах
mysql> SELECT `id`,`parentid` from `switches` WHERE `id`='13' OR `id`='84';
+----+----------+
| id | parentid |
+----+----------+
| 13 |       84 |
| 84 |       13 |
+----+----------+
2 rows in set (0.02 sec)

после

UPDATE `switches` SET `parentid`='' WHERE `id`='13'
UPDATE `switches` SET `parentid`='' WHERE `id`='84'

проблема была решена. Спасибо!

Провел убедительный разговор с теми кто это сделал.

Ссылка на сообщение
Поделиться на других сайтах
8 минут назад, sergey104 сказал:

Провел убедительный разговор с теми кто это сделал.

В том и фишка, что нормальными средствами веб-интерфейса это сделать невозможно. Их друг у друга в принципе не должно быть в выбирушках, как только вы один из них выберете родительским второго. Итого вопрос - "как у вас это получилось?"

 

9 минут назад, sergey104 сказал:

проблема была решена. Спасибо!

было бы странно если бы она не решилась :)

  • Like 1
Ссылка на сообщение
Поделиться на других сайтах
В 06.06.2018 в 13:57, nightfly сказал:

В том и фишка, что нормальными средствами веб-интерфейса это сделать невозможно. Их друг у друга в принципе не должно быть в выбирушках, как только вы один из них выберете родительским второго. Итого вопрос - "как у вас это получилось?"

 

Дарю идею:

1. открыть Свичи

2. открыть 1й свич во 2й вкладке, выбрать аплинком 2й свич

3. открыть 2й свич во 3й вкладке, выбрать аплинком 1й свич

4. нажать Сохранить по очереди в обеих вкладках.

5. наслаждаться восстановительными процедурами.

P.S.: при условии отсутствия проверки постфактум (при внесении в БД).

Ссылка на сообщение
Поделиться на других сайтах
2 часа назад, Tris сказал:

 

Дарю идею:

1. открыть Свичи

2. открыть 1й свич во 2й вкладке, выбрать аплинком 2й свич

3. открыть 2й свич во 3й вкладке, выбрать аплинком 1й свич

4. нажать Сохранить по очереди в обеих вкладках.

5. наслаждаться восстановительными процедурами.

P.S.: при условии отсутствия проверки постфактум (при внесении в БД).

Никак не могу отговорить от идей стрелять себе в ногу

Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

×
×
  • Створити нове...