Клиент довольно заметно подвисает при редактировании тарифного дерева.
Причем когда редактирую новый персональный тариф, то все летает довольно шустро.
Например, сегодня:
Есть глобальный тарифный план (базовый), от которого наследуются штук 15 других глобальных тарифных планов. Завел в базовом тарифе модульную ветку, которой там раньше не было. Добавляю узлы. При каждом действии : добавление, удаление, редактирование узлов клиент подвисает секунд на 10.
Порылся в коде, добавил индекс по parent_tree в module_tariff_tree - не помогло.
Смотрю в innotop во время подвисания - появляются записи:
Код:
UPDATE module_tariff_tree SET lm=1311231645625 WHERE id=12698
Ясно, что долго выполняется TariffTreeBuilder.updateMTreeModifTime(...)
...
Короче, пока писал, понял, в чем скорее всего беда:
TariffTreeBuilder.updateMTreeModifTime(...) обновляет lm для всех модульных веток дочерних тарифов, а не только для переданного mid.
Там присутствует dialup, на который постоянно есть нагрузка, видимо поэтому даже простые update-запросы по id проходят не сразу.
Разработчики, можете пофиксить? А то совсем печально пол дня редактировать тарифы.
Возможно я ошибаюсь, и проблема не в этом или не только в этом. Если так, доступ у вас должен быть.