Ru-MaNGOS

Вернуться   Ru-MaNGOS > Ядро > Баг-репорты

Важная информация

Баг-репорты Описываем проблемы и ошибки работы ядра

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 07.11.2010, 13:58   #1
KiriX
Умный
Старожил
 
Аватар для KiriX
 
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
KiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человек
По умолчанию Долгая загрузка

Не совсем баг-репорт, но может кто-нить знает что делать.
Очень долго (почти 50% всего времени загрузки сервера) грузится следующий пункт при старте сервера:
Код:
Returning old mails...
=======                                            = 12%
Помню раньше подобная ситуация была с загрузкой таблицы кричеров, Dereka добавил индексы и всё стало ок, может и тут можно как-нить также ускорить процесс??? Я просто в индексах совсем ни бум-бум
KiriX вне форума   Ответить с цитированием
Старый 07.11.2010, 14:51   #2
rsa
Почетный флудер
Старожил
 
Аватар для rsa
 
Регистрация: 08.03.2010
Адрес: Мурманск, Россия
Сообщений: 788
Сказал(а) спасибо: 55
Поблагодарили 333 раз(а) в 151 сообщениях
Записей в дневнике: 1
rsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранита
По умолчанию

это от аукбота. надо периодически удалять возвратные письма - все что идет на аукбот. ручкаи.
rsa вне форума   Ответить с цитированием
Старый 07.11.2010, 15:01   #3
KiriX
Умный
Старожил
 
Аватар для KiriX
 
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
KiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человек
По умолчанию

Цитата:
Сообщение от rsa Посмотреть сообщение
это от аукбота. надо периодически удалять возвратные письма - все что идет на аукбот. ручкаи.
Ну я это понял, однако при большом онлайне, заполненности аука игроками и большом письмообороте возникнет такая же ситуация и без аукбота. Должен быть способ решения
KiriX вне форума   Ответить с цитированием
Старый 07.11.2010, 15:32   #4
Кот ДаWINчи
Умный
 
Аватар для Кот ДаWINчи
 
Регистрация: 07.03.2010
Адрес: Северный Урал (60°сш, 60°вд)
Сообщений: 330
Сказал(а) спасибо: 82
Поблагодарили 399 раз(а) в 120 сообщениях
Записей в дневнике: 30
Кот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человекКот ДаWINчи Реально хороший человек
Отправить сообщение для Кот ДаWINчи с помощью ICQ Отправить сообщение для Кот ДаWINчи с помощью Skype™
По умолчанию

Цитата:
Сообщение от KiriX Посмотреть сообщение
Помню раньше подобная ситуация была с загрузкой таблицы кричеров, Dereka добавил индексы и всё стало ок, может и тут можно как-нить также ускорить процесс??? Я просто в индексах совсем ни бум-бум
только что проверил чистую базу characters - в таблицах mail, mail_items должны быть дополнительные индексы. Проверь у себя.
Если сервер старый, то проверь эти таблицы в каком формате innoDB или MyISAM.

Последний раз редактировалось Кот ДаWINчи; 07.11.2010 в 15:39.
Кот ДаWINчи вне форума   Ответить с цитированием
Старый 07.11.2010, 15:52   #5
virusav
Администратор
 
Аватар для virusav
 
Регистрация: 19.02.2010
Сообщений: 492
Сказал(а) спасибо: 55
Поблагодарили 341 раз(а) в 154 сообщениях
virusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человек
Отправить сообщение для virusav с помощью ICQ
По умолчанию

Возьми запрос, которым берутся данные, запусти с explain перед ним в клиенте мускуля и увидишь, по чем идет выборка.
Потом добавь индексы.
virusav вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
KiriX (07.11.2010)
Старый 07.11.2010, 16:41   #6
KiriX
Умный
Старожил
 
Аватар для KiriX
 
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
KiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человек
По умолчанию

Вирусав, спасибо, глянул - там вот что:
PHP код:
CharacterDatabase.PExecute("DELETE FROM mail WHERE expire_time < '" UI64FMTD "' AND has_items = '0' AND body = ''", (uint64)basetime);
QueryResultresult CharacterDatabase.PQuery("SELECT id,messageType,sender,receiver,has_items,expire_time,cod,checked,mailTemplateId FROM mail WHERE expire_time < '" UI64FMTD "'", (uint64)basetime);
QueryResult *resultItems CharacterDatabase.PQuery("SELECT item_guid,item_template FROM mail_items WHERE mail_id='%u'"m->messageID);
CharacterDatabase.PExecute("DELETE FROM item_instance WHERE guid = '%u'"itr2->item_guid);
CharacterDatabase.PExecute("UPDATE mail SET sender = '%u', receiver = '%u', expire_time = '" UI64FMTD "', deliver_time = '" UI64FMTD "',cod = '0', checked = '%u' WHERE id = '%u'"m->receiverm->sender, (uint64)(basetime 30*DAY), (uint64)basetimeMAIL_CHECK_MASK_RETURNEDm->messageID);
CharacterDatabase.PExecute("DELETE FROM mail WHERE id = '%u'"m->messageID); 
Что-то с трудом понимаю что тут к чему и что пихать в индексы
Запустил один запрос - там ничего толком не понял... По одной таблице выборка...
Может это поможет, так выглядит лог загрузки, если включить лог-левел 3:
http://paste2.org/p/1077394
KiriX вне форума   Ответить с цитированием
Старый 07.11.2010, 17:23   #7
LordJZ
Супер-модератор
 
Аватар для LordJZ
 
Регистрация: 07.03.2010
Сообщений: 647
Сказал(а) спасибо: 100
Поблагодарили 252 раз(а) в 123 сообщениях
LordJZ Как самоцвет среди гранитаLordJZ Как самоцвет среди гранитаLordJZ Как самоцвет среди гранита
По умолчанию

у вас видимо mail сильно заполнена
LordJZ вне форума   Ответить с цитированием
Старый 07.11.2010, 17:24   #8
virusav
Администратор
 
Аватар для virusav
 
Регистрация: 19.02.2010
Сообщений: 492
Сказал(а) спасибо: 55
Поблагодарили 341 раз(а) в 154 сообщениях
virusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человек
Отправить сообщение для virusav с помощью ICQ
По умолчанию

Попробуй так:
Код:
ALTER TABLE `mail` ADD INDEX (`expire_time`,`has_items`,`body`(10));
ALTER TABLE `mail` ADD INDEX (`expire_time`);
ALTER TABLE `mail_items` ADD INDEX (`mail_id`);
virusav вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
KiriX (07.11.2010)
Старый 07.11.2010, 19:45   #9
rsa
Почетный флудер
Старожил
 
Аватар для rsa
 
Регистрация: 08.03.2010
Адрес: Мурманск, Россия
Сообщений: 788
Сказал(а) спасибо: 55
Поблагодарили 333 раз(а) в 151 сообщениях
Записей в дневнике: 1
rsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранита
По умолчанию

Цитата:
Сообщение от KiriX Посмотреть сообщение
Ну я это понял, однако при большом онлайне, заполненности аука игроками и большом письмообороте возникнет такая же ситуация и без аукбота. Должен быть способ решения
не возникнет. траффик аукбота в разы превышает траффик игроков сервера с онлайном ~1000. к тому же только он валяется мертвым грузом в таблице.
rsa вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
KiriX (07.11.2010)
Старый 07.11.2010, 21:31   #10
KiriX
Умный
Старожил
 
Аватар для KiriX
 
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
KiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человек
По умолчанию

Цитата:
Сообщение от rsa Посмотреть сообщение
не возникнет. траффик аукбота в разы превышает траффик игроков сервера с онлайном ~1000. к тому же только он валяется мертвым грузом в таблице.
Так может в коде аукбота отменить его почту?
Залил индексы от вирусова, при перезагрузке проверю и отпишусь...
KiriX вне форума   Ответить с цитированием
Старый 07.11.2010, 23:01   #11
Vladimir
MaNGOS Dev
 
Регистрация: 09.02.2010
Сообщений: 594
Сказал(а) спасибо: 315
Поблагодарили 438 раз(а) в 181 сообщениях
Vladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небес
По умолчанию

по нормальному почта не должна возвращаться, посылаться ботам - если это fake-игрок как вроде делалось когда давно смотрел код - то надо в отсылке писма добавить соответствующую проверку - чтобы дропалось письмо как при посылке мобу..
__________________
Так как устал объяснять знайте ICQ не пользуюсь
Vladimir вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
KiriX (08.11.2010)
Старый 07.11.2010, 23:42   #12
rsa
Почетный флудер
Старожил
 
Аватар для rsa
 
Регистрация: 08.03.2010
Адрес: Мурманск, Россия
Сообщений: 788
Сказал(а) спасибо: 55
Поблагодарили 333 раз(а) в 151 сообщениях
Записей в дневнике: 1
rsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранита
По умолчанию

Цитата:
Сообщение от Vladimir Посмотреть сообщение
по нормальному почта не должна возвращаться, посылаться ботам - если это fake-игрок как вроде делалось когда давно смотрел код - то надо в отсылке писма добавить соответствующую проверку - чтобы дропалось письмо как при посылке мобу..
там есть такая проверка, но пару месяцев назад что-то поломалось - итемы и письма, возвращенные аукботу, больше не удаляются фактически. скорее всего связано с постепенным тотальным переходом на ObjectGuid
rsa вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
KiriX (08.11.2010)
Старый 08.11.2010, 01:16   #13
KiriX
Умный
Старожил
 
Аватар для KiriX
 
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
KiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человек
По умолчанию

Цитата:
Сообщение от rsa Посмотреть сообщение
там есть такая проверка, но пару месяцев назад что-то поломалось - итемы и письма, возвращенные аукботу, больше не удаляются фактически. скорее всего связано с постепенным тотальным переходом на ObjectGuid
Блин, отыскать бы, а то сейчас вручную удалил 380тыс писем...
rsa, у тя отдельно этого патча нет, как я понимаю? В отдельном патче проще искать/смотреть, чем просто в исходниках. Или придётся ваять что-то как с нуля...
KiriX вне форума   Ответить с цитированием
Старый 08.11.2010, 09:43   #14
rsa
Почетный флудер
Старожил
 
Аватар для rsa
 
Регистрация: 08.03.2010
Адрес: Мурманск, Россия
Сообщений: 788
Сказал(а) спасибо: 55
Поблагодарили 333 раз(а) в 151 сообщениях
Записей в дневнике: 1
rsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранитаrsa Как самоцвет среди гранита
По умолчанию

тот патч, что использую я, не поддерживается более года. в чистом виде его можно выцепить в коммитах в районе 10156.
rsa вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
KiriX (08.11.2010)
Старый 08.11.2010, 19:01   #15
zhenya
Пользователь
 
Регистрация: 12.03.2010
Сообщений: 85
Сказал(а) спасибо: 5
Поблагодарили 42 раз(а) в 17 сообщениях
zhenya Скоро придёт к известности
По умолчанию

[B]`body`(10)); сильно..
zhenya вне форума   Ответить с цитированием
Ответ


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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
e-mail=username = загрузка обновления Dragon Баг-репорты 5 05.11.2010 20:00
Загрузка файлов на форум MaNGOS Новости RMDC 4 09.03.2010 17:33


Текущее время: 10:36. Часовой пояс GMT +3.


ru-mangos.ru - Русское сообщество MaNGOS
Главная цель проекта MaNGOS - обучающая, поэтому разрешается использовать исходный код и собранную программу только для образовательных целей.
Вы не можете использовать MaNGOS в коммерческих целях, а также не разрешается устанавливать публичные серверы на базе MaNGOS.
Любое копирование материалов, информации в любом виде без указания источника - форума Ru-MaNGOS будет считаться нарушением авторских прав и нарушением Уголовного Кодекса РФ, ст. 146 ст. 147.
Перевод vBulletin: zCarot