После обновления сервера mysql до mariadb 10.0 и пересборки php (чтобы обновить php клиент) как-то странно стали отображаться даты окончания хостинга и vps .
Если зайти просто в раздел, то показывает, что хостинг у всех заканчивается сегодня.
При этом в учёте заказа всё в порядке. Верные данные отображает.
А если отсортировать по дате, то всё правильно показывает и в датах окончания заказа.
Вот пример со скриншотами:
http://joxi.ru/4AkZ9JEFRjRb2q.jpg
http://joxi.ru/YmEq0Ops3G3lm6.jpg
Подскажите пожалуйста, в каком направлении вообще копать.
С базой наверняка всё в порядке. Пробовал откатить и на несколько дней и на несколько месяцев назад базу. Проблема не пропадает.
Мемкэш тоже чистил.
Странно отображаются даты в заказах хостинга и vps
Странно отображаются даты в заказах хостинга и vps
sasha181 писал(а):Источник цитаты После обновления сервера mysql до mariadb 10.0
простите, а зачем? стояло что-то, работало...
подозреваю, что либо триггеры отвалились, либо ещё чё из этой же оперы.
попробуйте восстановить из дистрибутива
Код: Выделить всё
# mysql db_name < db/billing/triggers.sql
# mysql db_name < db/hosting/triggers.sql
Убей их всех! Бог потом рассортирует...
-
- Сообщения: 134
- Зарегистрирован: 2012-02-27 15:58:24
- Откуда: Краснодар/Саранск
- Контактная информация:
Странно отображаются даты в заказах хостинга и vps
насчёт зачем - это долгая историй. Сервер исторически работает на 32 битах. Периодически в mysql подтекала память и временами из-за этого он подвисал. Последнее время стал чаще, решил для начала обновить, если подвисания не пройдут, прийдётся постепенно мигрировать на 64 бита. Для начала думаю базу перекинуть и через mysql-proxy прокинуть на 64 битный mysql запросы. Но это уже не о том.
Бекапы я делаю с тригерами. Откат базы не помог. На всякий случай накатил тригеры из дистрибутива. Тоже не помогло (( .
Отправлено спустя 4 минуты 41 секунду:
Кстати, как вариант причина может быть опять-таки в экранировании столбцов сортировки (SortOn), о которой в соседней теме говорили.
Где она лежит. Или сразу патч Ваш скиньте пожалуйста.
Отправлено спустя 24 минуты 48 секунд:
Самое интересное, что именно по id заказа если сортировать, слетает отображение даты окончания. При сортировке по любому другому пол. всё отлично.
Исправил у себя SortOn в драйвере DB
Пользователи, например, тоже не сортировались по группе. Теперь сортируются. Но ошибка с датами не исчезла (( (мемкеш ребутил)
У себя сделал так:
Бекапы я делаю с тригерами. Откат базы не помог. На всякий случай накатил тригеры из дистрибутива. Тоже не помогло (( .
Отправлено спустя 4 минуты 41 секунду:
Кстати, как вариант причина может быть опять-таки в экранировании столбцов сортировки (SortOn), о которой в соседней теме говорили.
Где она лежит. Или сразу патч Ваш скиньте пожалуйста.
Отправлено спустя 24 минуты 48 секунд:
Самое интересное, что именно по id заказа если сортировать, слетает отображение даты окончания. При сортировке по любому другому пол. всё отлично.
Исправил у себя SortOn в драйвере DB
Пользователи, например, тоже не сортировались по группе. Теперь сортируются. Но ошибка с датами не исчезла (( (мемкеш ребутил)
У себя сделал так:
Код: Выделить всё
foreach($SortOn as $ColumnID){
#-------------------------------------------------------------------------
$ColumnID = str_replace('`', '', $ColumnID);
$ColumnID = DB_Escape($ColumnID);
#-------------------------------------------------------------------------
$Array[] = SPrintF('`%s`',$ColumnID);
// $Array[] = $ColumnID;
}
-
- Сообщения: 134
- Зарегистрирован: 2012-02-27 15:58:24
- Откуда: Краснодар/Саранск
- Контактная информация:
Странно отображаются даты в заказах хостинга и vps
Нашёл я, в общем, корень проблемы.
При сортировке по Number или ID возращает результат, в котором столбец DaysRemainded переименован в Expiration
Получается в результате выборки имеется 2 столбца Expiration и ни одного DaysRemainded
Если например убрать GROUP BY `ID`, всё как положено возвращается.
Также, если сортировать по другому полю, всё ОК.
Проставил ALGORITHM = TEMPTABLE и всё заработало как надо. Но TEMPTABLE, насколько понял, не поддерживает вставки и апдейты. Биллинг их использует в отображениях?
Код: Выделить всё
SELECT `ID`,`OrderID`,`UserID`,`Domain`,`Parked`,`DaysRemainded`,`StatusID`,`StatusDate`,`ServiceID`,`UserNotice`,`AdminNotice`,ID as `Number`,(SELECT `Email` FROM `Users` WHERE `UserID` = `Users`.`ID`) as `Owner`,(SELECT CONCAT(`Name`,' (',(SELECT `Name` FROM `ServersGroups` WHERE `ServersGroups`.`ID` = `HostingSchemes`.`ServersGroupID`),')') FROM `HostingSchemes` WHERE `HostingSchemes`.`ID` = `HostingOrdersOwners`.`SchemeID`) as `Scheme`,DaysRemainded as `Expiration`,StatusID as `Status`,UNIX_TIMESTAMP() - `StatusDate` as `StatusOver` FROM `HostingOrdersOwners` GROUP BY `ID` ORDER BY Number LIMIT 0, 20
При сортировке по Number или ID возращает результат, в котором столбец DaysRemainded переименован в Expiration
Получается в результате выборки имеется 2 столбца Expiration и ни одного DaysRemainded
Если например убрать GROUP BY `ID`, всё как положено возвращается.
Также, если сортировать по другому полю, всё ОК.
Проставил ALGORITHM = TEMPTABLE и всё заработало как надо. Но TEMPTABLE, насколько понял, не поддерживает вставки и апдейты. Биллинг их использует в отображениях?
Странно отображаются даты в заказах хостинга и vps
сидел полчаса сортировал по всякому заказы на хостинг...
нифига н еполучилось увидеть запрос в котором
сдаётся мне, машка ваша умничает ....
нифига н еполучилось увидеть запрос в котором
sasha181 писал(а):Источник цитаты При сортировке по Number или ID возращает результат, в котором столбец DaysRemainded переименован в Expiration
Получается в результате выборки имеется 2 столбца Expiration и ни одного DaysRemainded
сдаётся мне, машка ваша умничает ....
Убей их всех! Бог потом рассортирует...
- alezhen
- Сообщения: 119
- Зарегистрирован: 2015-02-16 12:22:03
- Откуда: Россия
- Благодарил (а): 5 раз
- Поблагодарили: 1 раз
- Контактная информация:
Странно отображаются даты в заказах хостинга и vps
у меня тоже подобная проблема была с датами
А при попытке сортировки по дате в общем разделе Услуги вообще на 500-ю вылетает.
На почту вывалило это:
А при попытке сортировки по дате в общем разделе Услуги вообще на 500-ю вылетает.
На почту вывалило это:
Код: Выделить всё
[14:37:28.55][19548] [MySQL->Query]: SELECT COUNT(*) FROM OrdersOwners WHERE (`StatusID` IS NOT NULL)
[14:37:28.55][19548] [MySQL->Query]: SELECT COUNT(*) FROM OrdersOwners
[14:37:28.55][19548] [MySQL->Query]: SELECT COUNT(*) FROM OrdersOwners WHERE (`StatusID` IS NOT NULL) GROUP BY ID
[14:37:28.55][19548] [MySQL->Query]: SELECT `ID`,`UserID`,`OrderDate`,`StatusID`,`StatusDate`,`ServiceID`,(SELECT `Services`.`Code` FROM `Services` WHERE `OrdersOwners`.`ServiceID` = `Services`.`ID`) AS `Code`,`AdminNotice`,`UserNotice`,ID as `Number`,(SELECT `Email` FROM `Users` WHERE `UserID` = `Users`.`ID`) as `Owner`,(SELECT `Services`.`Item` FROM `Services` WHERE `OrdersOwners`.`ServiceID` = `Services`.`ID`) as `OrderType`,StatusID as `Status`,UNIX_TIMESTAMP() - `StatusDate` as `StatusOver` FROM `OrdersOwners` WHERE (`StatusID` IS NOT NULL) GROUP BY `ID` ORDER BY Expiration LIMIT 0, 20
[14:37:28.55][19548] [!] [!!1024]-[MySQL->Query]: Unknown column 'Expiration' in 'order clause' в линии 147 файла .../hosts/root/system/classes/auto/MySQL.class.php
[14:37:28.55][19548] [!] [!!1024]-[DB_Query]: невозможно осуществить запрос в линии 47 файла .../hosts/root/system/libs/auto/DB.php
[14:37:28.55][19548] [!] [!!1024]-[DB_Select]: невозможно осуществить запрос в линии 208 файла .../hosts/root/system/libs/auto/DB.php
[14:37:28.55][19548] [!] [!!1024]-500 в линии 155 файла .../core/Load.php(165) : eval()'d code
[14:37:28.55][19548] [!] [!!1024]-[Comp_Load]: не возможно загрузить компонент в линии 48 файла .../hosts/root/system/libs/auto/Comp.php
[14:37:28.55][19548] [!] [!!1024]-500 в линии 411 файла .../core/Load.php(165) : eval()'d code
[14:37:28.55][19548] [!] [!!1024]-[Comp_Load]: не возможно загрузить компонент в линии 48 файла .../hosts/root/system/libs/auto/Comp.php
[14:37:28.55][19548] [!] [!!1024]-500 в линии 165 файла .../core/Load.php(165) : eval()'d code
[14:37:28.55][19548] [!] [!!1024]-[Comp_Load]: не возможно загрузить компонент в линии 48 файла .../hosts/root/system/libs/auto/Comp.php
[14:37:28.55][19548] [!] [!!1024]-[system/modules/Main]: не удалось загрузить основной компонент системы в линии 68 файла .../hosts/billing/system/modules/Main.php
[14:37:28.55][19548] [!] [!!1024]-[JBs core]: не удалось загрузить базовый модуль в линии 660 файла .../core/Load.php
Странно отображаются даты в заказах хостинга и vps
alezhen писал(а):Источник цитаты А при попытке сортировки по дате в общем разделе Услуги вообще на 500-ю вылетает.
гы... и правда.
походу, за 5 лет, что привёрнут этот раздел, я ни разу не додумался отсортировать по дате его =))
Убей их всех! Бог потом рассортирует...
-
- Сообщения: 134
- Зарегистрирован: 2012-02-27 15:58:24
- Откуда: Краснодар/Саранск
- Контактная информация:
Странно отображаются даты в заказах хостинга и vps
alezhen писал(а):у меня тоже подобная проблема была с датами
А при попытке сортировки по дате в общем разделе Услуги вообще на 500-ю вылетает.
На почту вывалило это:Код: Выделить всё
[14:37:28.55][19548] [!] [!!1024]-[MySQL->Query]: Unknown column 'Expiration' in 'order clause' в линии 147 файла .../hosts/root/system/classes/auto/MySQL.class.php
Видимо у Вас база наоборот вернула 2 столбца DaysRemainded , по аналогии с моей. Только у меня 2 столбца Expiration как раз возвращало .
Отправлено спустя 2 минуты 19 секунд:
Alex Keda писал(а):сидел полчаса сортировал по всякому заказы на хостинг...
нифига н еполучилось увидеть запрос в которомsasha181 писал(а):Источник цитаты При сортировке по Number или ID возращает результат, в котором столбец DaysRemainded переименован в Expiration
Получается в результате выборки имеется 2 столбца Expiration и ни одного DaysRemainded
сдаётся мне, машка ваша умничает ....
Не исключено конечно.
А что насчёт вставок и апдейтов через views . Они могут использоваться в биллинге или можно так и оставить ALGORITHM = TEMPTABLE ?
Какая у Вас версия mysql ?
Странно отображаются даты в заказах хостинга и vps
нет, через вьюхи вставок нет
насколько я помню, MySQL такого не поддерживает
--
у меня 5.5
насколько я помню, MySQL такого не поддерживает
--
у меня 5.5
Убей их всех! Бог потом рассортирует...
-
- Сообщения: 134
- Зарегистрирован: 2012-02-27 15:58:24
- Откуда: Краснодар/Саранск
- Контактная информация:
Странно отображаются даты в заказах хостинга и vps
Поставил кстати percona server а 5.6 соседней vps , скинул туда базу биллинга, залил оригинальные views из дистрибутива. Всё работает нормально. Столбцы не дублируются. Видимо действительно перестарались разработчики mariadb с оптимизацией выборок.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 8 гостей