forum.bitel.ru
http://forum.bitel.ru/

BGCashcheckServer 5.2 пустой cashcheck_payment_log
http://forum.bitel.ru/viewtopic.php?f=28&t=8613
Страница 1 из 1

Автор:  ApostolPetr [ 22 окт 2013, 12:25 ]
Заголовок сообщения:  BGCashcheckServer 5.2 пустой cashcheck_payment_log

Обновились с 5.1 на 5.2, но возникла проблема с cashcheck - не добавляются логи в таблицу cashcheck_payment_log, есть только старые логи от 5.1. Никаких ошибок ни cashcheck-сервер, ни billing-сервер не выдают, чеки печатаются нормально, сам чек формируется скриптом. Пока не знаю, куда копать, таблица нужная очень.

Проверял руками туда добавлять записи - добавляются нормально.
-----
Версия BGCashcheckServer 5.2 322, BGBillingServer 5.2 1551.

Автор:  dimOn [ 22 окт 2013, 12:36 ]
Заголовок сообщения:  Re: BGCashcheckServer 5.2 пустой cashcheck_payment_log

вы что-то путаете. в 5.1 вообще не было таблицы cashcheck_payment_log, только cashcheck_payment_queue_<mid>.
при обновлении на 5.2 всё из cashcheck_payment_queue перенеслось в cashcheck_payment_log с удалением всех неизвестных науке pos_id - ноль и меньше, т.е. тех которые не были напечатаны. потому что теперь cashcheck_payment_log - это только то что уже было напечатано. а раньше было и готовые для печати.
здесь вкратце:
viewtopic.php?f=28&t=6194

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

Автор:  dimOn [ 22 окт 2013, 12:37 ]
Заголовок сообщения:  Re: BGCashcheckServer 5.2 пустой cashcheck_payment_log

точно обновились все компоненты нормально? может плагин старый залип и пытается в старую таблицу писать?

Автор:  ApostolPetr [ 22 окт 2013, 13:50 ]
Заголовок сообщения:  Re: BGCashcheckServer 5.2 пустой cashcheck_payment_log

Еще раз все перепроверили, обновления до 5.2 встали нормально.

Автор:  dimOn [ 22 окт 2013, 14:38 ]
Заголовок сообщения:  Re: BGCashcheckServer 5.2 пустой cashcheck_payment_log

Значит, при корректной печати чека и корректной отработке метода вебсервиса printCheck в таблице cashcheck_payment_log должна появиться запись.

Откуда и как печатаете чеки? Табличка "сдача: NN" рисуется после печати?

Покажите:

SHOW COLUMNS FROM cashcheck_payment_log

Автор:  ApostolPetr [ 22 окт 2013, 14:46 ]
Заголовок сообщения:  Re: BGCashcheckServer 5.2 пустой cashcheck_payment_log

mysql> SHOW COLUMNS FROM cashcheck_payment_log;
+------------+-----------+------+-----+---------------------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------+-----------+------+-----+---------------------+-------+
| payment_id | int(11) | NO | | NULL | |
| dt | timestamp | NO | | 0000-00-00 00:00:00 | |
| pos_id | int(11) | NO | | 0 | |
+------------+-----------+------+-----+---------------------+-------+
3 rows in set (0.00 sec)

Автор:  ApostolPetr [ 22 окт 2013, 15:00 ]
Заголовок сообщения:  Re: BGCashcheckServer 5.2 пустой cashcheck_payment_log

Нашел потерянные платежи. Все логгировалось, но у всех даты стоят '0000-00-00 00:00:00' , сразу их не нашел, тк по полю dt смотрел.

Автор:  dimOn [ 22 окт 2013, 15:44 ]
Заголовок сообщения:  Re: BGCashcheckServer 5.2 пустой cashcheck_payment_log

странно, там вообще должно CURRENT_TIMESTAMP стоять в Default
а в оригинальной cashcheck_payment_queue что в структуре?
а в клиенте они тоже где-то внизу рисуются в таблице лога платежей? какие там даты рисуются?

Автор:  ApostolPetr [ 22 окт 2013, 15:48 ]
Заголовок сообщения:  Re: BGCashcheckServer 5.2 пустой cashcheck_payment_log

В cashcheck_payment_queue по дефолту стоит CURRENT_TIMESTAMP. Поменял в cashcheck_payment_log значение Default поля dt на CURRENT_TIMESTAMP - все стало нормально.

Автор:  dimOn [ 22 окт 2013, 15:51 ]
Заголовок сообщения:  Re: BGCashcheckServer 5.2 пустой cashcheck_payment_log

хм... странно просто что так создалось. сейчас гоняю запросы из init - вроде корректно всё создаётся.

Автор:  dimOn [ 22 окт 2013, 15:52 ]
Заголовок сообщения:  Re: BGCashcheckServer 5.2 пустой cashcheck_payment_log

А можете сделать запрос в редакторе вашем:

CREATE TABLE `cashcheck_test` SELECT * FROM `cashcheck_payment_queue_$mid`;

и проверить структуру новой таблицы, какой там Default будет?

Автор:  dimOn [ 22 окт 2013, 16:00 ]
Заголовок сообщения:  Re: BGCashcheckServer 5.2 пустой cashcheck_payment_log

мда, поймал косяк некоторый. у вас mysql какая версия?
да, это баг мускуля:
http://bugs.mysql.com/bug.php?id=68670
у меня проявляется при прямом запросе тоже. но в данный момент таблицы в старой базе корректно созданы, как так - уже непонятно.
вставлю костыль. в 5.6.11 пофиксили.

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/