BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 23 июн 2025, 18:24

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Mysql 5.1 и Mysql 5.5. Валидатор
СообщениеДобавлено: 20 окт 2012, 14:10 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Предыстория: Решил вытащить базу на отдельный сервер. На сервере поднял Percona Mysql 5.5
Код:
Server version: 5.5.25a-27.1 Percona Server (GPL), Release rel27.1, Revision 277
mysql  Ver 14.14 Distrib 5.5.25a, for Linux (x86_64) using readline 5.1

Поднял репликацию все дела. Чтобы в день Y в час Х выключить все это дело и просто переключить обращение к другому серверу.

История: Сегодня с утра смотрю в show slave status\G и вижу
Код:
 Last_Error: Error 'BIGINT UNSIGNED value is out of range in '(`bgbilling`.`contract_balance`.`mm` - 1)'' on query. Default database: 'bgbilling'. Query: 'CREATE TEMPORARY TABLE _validator_balance_dump( UNIQUE(cid) ) SELECT cid, MAX(yy*12+(mm-1))%12 + 1 AS mm,FLOOR(MAX(yy*12+(mm-1)) / 12) AS yy FROM contract_balance WHERE (yy*12 + mm)<(2012*12 + 10) GROUP BY cid'


Собственно как оказалось присутствует проблема с тем, что в mysql 5.1 версии выборка слишком больших значений возвращала минусовое значение, в 5.5 версии на это уже ругается
Код:
mysql> SELECT 9223372036854775807 + 1;
+-------------------------+
| 9223372036854775807 + 1 |
+-------------------------+
|    -9223372036854775808 |
+-------------------------+
1 row in set (0.00 sec)


Код:
mysql> SELECT 9223372036854775807 + 1;
ERROR 1690 (22003): BIGINT value is out of range in '(9223372036854775807 + 1)'
mysql>

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Mysql 5.1 и Mysql 5.5. Валидатор
СообщениеДобавлено: 21 окт 2012, 01:28 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Изображение
Изображение
договора с ID = 0 у меня нет.

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Mysql 5.1 и Mysql 5.5. Валидатор
СообщениеДобавлено: 21 окт 2012, 01:31 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Но была запись в contract_balance
Изображение
Удалил - запустил реплику дальше. Проверим ночью )

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Mysql 5.1 и Mysql 5.5. Валидатор
СообщениеДобавлено: 22 окт 2012, 12:30 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
Phricker писал(а):
Код:
mysql> SELECT 9223372036854775807 + 1;
ERROR 1690 (22003): BIGINT value is out of range in '(9223372036854775807 + 1)'
mysql>


Странно, т.к. у unsigned bigint (выше написано, что unsigned) максимум 18446744073709551615.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Mysql 5.1 и Mysql 5.5. Валидатор
СообщениеДобавлено: 22 окт 2012, 12:35 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Там вся проблема оказалась в этой нулевой записи. Руки поотрывать тому кто это сделал :) Надеюсь не я :D

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Mysql 5.1 и Mysql 5.5. Валидатор
СообщениеДобавлено: 22 окт 2012, 13:02 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
Таки ХЗ откуда оно у тя взялось. У меня так:
Код:
mysql> SELECT id FROM contract ORDER BY id LIMIT 3;
+----+
| id |
+----+
|  1 |
|  2 |
|  3 |
+----+
3 rows in set (0.00 sec)

Код:
mysql> SELECT * FROM contract_balance ORDER BY cid LIMIT 3;
+------+----+-----+---------+--------+--------+--------+
| yy   | mm | cid | summa1  | summa2 | summa3 | summa4 |
+------+----+-----+---------+--------+--------+--------+
| 2012 |  4 |   1 |    0.00 |   0.00 |   0.00 |   0.00 |
| 2008 |  9 |   2 |    0.00 |   0.00 | 441.70 |   0.00 |
| 2008 | 10 |   2 | -441.70 |   0.00 | 341.52 |   0.00 |
+------+----+-----+---------+--------+--------+--------+
3 rows in set (0.02 sec)


Кстати, как перкона в бою?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Mysql 5.1 и Mysql 5.5. Валидатор
СообщениеДобавлено: 22 окт 2012, 13:32 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
snark писал(а):
Кстати, как перкона в бою?

Пока висит как реплика ничего толком сказать и не могу :) mysql mysql'ом )

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


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

Найти:
Перейти:  
POWERED_BY
Русская поддержка phpBB
[ Time : 0.038s | 29 Queries | GZIP : On ]