Форум OlegON > Программы и оборудование для автоматизации торговли > Кассовые программы > УКМ-4

Ошибка при расчете купонами. Query failed: Error(1205) Lock wait timeout exceeded : УКМ-4

29.03.2024 14:24


05.04.2014 05:45
Tiger
 
В течении нескольких месяцев практикуем суммовые купоны, выдача которых производится на кассе, после чего покупатель может им расплатиться, но на недели возникла такая ошибка:

Цитата:
10:32:27: 0x00004000: WARNING: debug#/usr/local/storage/home/ukm/build-br-52-2013_05_30_18_56_46/ukm/libukm/ccore.cpp(2951) ReceiptAppendPayment: Query failed: Error(1205) Lock wait timeout exceeded; try restarting transaction: SQL UPDATE trm_coupon_data SET status=0, version=0 WHERE global_id=0 AND id='123050073Q9YAZM9'
InnoDB status:
=====================================
140405 10:32:27 INNODB MONITOR OUTPUT
=====================================
Per second averages calculated from the last 24 seconds
----------
SEMAPHORES
----------
OS WAIT ARRAY INFO: reservation count 1675141, signal count 1671923
Mutex spin waits 0, rounds 476798030, OS waits 640393
RW-shared spins 1012382, OS waits 206642; RW-excl spins 642892, OS waits 489659
------------
TRANSACTIONS
------------
Trx id counter 0 342388481
Purge done for trx's n:o < 0 342386853 undo n:o < 0 0
History list length 22
Total number of lock structs in row lock hash table 443
LIST OF TRANSACTIONS FOR EACH SESSION:
---TRANSACTION 0 342388480, not started, process no 13379, OS thread id 409613
MySQL thread id 15, query id 6338870 192.168.10.240 ukmremote
---TRANSACTION 0 342388135, ACTIVE 51 sec, process no 13371, OS thread id 344075
1 lock struct(s), heap size 320
MySQL thread id 11, query id 6338871 localhost 127.0.0.1 ukm_terminal
show innodb status
---TRANSACTION 0 342386841, ACTIVE 122 sec, process no 13376, OS thread id 376844
446 lock struct(s), heap size 44352, undo log entries 83514
MySQL thread id 13, query id 6337073 192.168.10.240 ukmremote
Trx read view will not see trx with id >= 0 342386842, sees < 0 342386842
--------
FILE I/O
--------
I/O thread 0 state: waiting for i/o request (insert buffer thread)
I/O thread 1 state: waiting for i/o request (log thread)
I/O thread 2 state: waiting for i/o request (read thread)
I/O thread 3 state: waiting for i/o request (write thread)
Pending normal aio reads: 0, aio writes: 0,
ibuf aio reads: 0, log i/o's: 0, sync i/o's: 0
Pending flushes (fsync) log: 0; buffer pool: 0
23874 OS file reads, 477194 OS file writes, 204476 OS fsyncs
0.00 reads/s, 0 avg bytes/read, 1.25 writes/s, 0.25 fsyncs/s
-------------------------------------
INSERT BUFFER AND ADAPTIVE HASH INDEX
-------------------------------------
Ibuf: size 1, free list len 9, seg size 11,
13922 inserts, 13922 merged recs, 4651 merges
Hash table size 1117, used cells 0, node heap has 1 buffer(s)
0.00 hash searches/s, 36.54 non-hash searches/s
---
LOG
---
Log sequence number 54 2635510727
Log flushed up to 54 2635510727
Last checkpoint at 54 2635510727
0 pending log writes, 0 pending chkp writes
189761 log i/o's done, 0.12 log i/o's/second
----------------------
BUFFER POOL AND MEMORY
----------------------
Total memory allocated 151664828; in additional pool allocated 3044352
Buffer pool size 7680
Free buffers 1
Database pages 7676
Modified db pages 0
Pending reads 0
Pending writes: LRU 0, flush list 0, single page 0
Pages read 36593, created 1170105, written 2030115
0.00 reads/s, 0.00 creates/s, 1.21 writes/s
Buffer pool hit rate 1000 / 1000
--------------
ROW OPERATIONS
--------------
0 queries inside InnoDB, 0 queries in queue
2 read views open inside InnoDB
Main thread process no. 2422, id 147465, state: sleeping
Number of rows inserted 338426, updated 474496211, deleted 268548, read 2863698894
0.00 inserts/s, 0.00 updates/s, 0.00 deletes/s, 4980.96 reads/s
----------------------------
END OF INNODB MONITOR OUTPUT
============================
С чем это может быть связано?
05.04.2014 17:46
Mtirt
 
В БД сервера больше никаких проблем нет? Очень похоже на ситуацию, когда касса запрос послала, а сервер вовремя не ответил из-за каких-то блокировок.
05.04.2014 18:11
Tiger
 
Цитата:
Mtirt В БД сервера больше никаких проблем нет? Очень похоже на ситуацию, когда касса запрос послала, а сервер вовремя не ответил из-за каких-то блокировок.
Просто это не на одном магазине, а на нескольких! При чем после перезапуска mysql все отрабатывает нормально!
05.04.2014 18:33
OlegON
 
В своп мускул не заваливается? Мусорные сервера? Антивирусы?
05.04.2014 19:01
Tiger
 
Цитата:
OlegON В своп мускул не заваливается? Мусорные сервера? Антивирусы?
Сервера разные с различными параметрами! Один совсем новый, мусор отсутствует, антивируса не на одном нет! Думаю где-то нужно увеличить таймаут при обращении касс к серверу при проверки купона на сервере в момент активации! Ну какой?
05.04.2014 19:14
OlegON
 
Это, похоже, , но ты предлагаешь лечить симптомы, а не проблему.
Хорошо бы подловить момент ошибки и сделать
Код:
SHOW FULL PROCESSLIST;
Я не понимаю, что делает эта сессия
Код:
---TRANSACTION 0 342386841, ACTIVE 122 sec, process no 13376, OS thread id 376844
446 lock struct(s), heap size 44352, undo log entries 83514
MySQL thread id 13, query id 6337073 192.168.10.240 ukmremote
но, боюсь, что покупатель не будет ждать больше двух минут, даже если ты и подкрутишь параметр. Может, где-то табличка распухла слишком и неоправданно?
05.04.2014 19:19
OlegON
 
Версию бы MySQL узнать, а то тут баг такой есть неприятный...
09.04.2014 14:15
Onesoft
 
От версии MySQL это, скорее всего, не зависит. Вероятно, купоны реплицируются в обе стороны (домен "Интерактивный маркетинг"), и тут наблюдается одно из двух:

1. это ошибка 4892, исправленная в 55 версии УКМ: "Нестабильная связь между кассой и сервером -> Висят в БД коннекшены и таблицы заблокированы
". Предыдущая транзакция по гашению купона не успела откатиться (например, из-за разрыва связи), старый коннекшен остался висеть, заблокировав запись, новый не может к ней пробиться. Лечится обновлением до 55+, либо работой над улучшением качества связи, либо своевременным прибитием зависших коннекшенов (show processlist в БД кассы покажет несколько коннекшенов пользователя ukmremote, которых должно быть только два, а если их больше - то надо прибивать все кроме двух последних).

2. у нас в логах касс (правда, это была ещё 49sp3 версия) ругалось на другое:
select get_lock('version_control_mysterious_id_0_table_trm_in_discount_card_stop_list', 60
это т.наз. glassstorm, обусловленный двунаправленной репликацией таблицы trm_coupon_data, сервер может не справляться от потоков погашаемых купонов: принимая с кассы погашенный купон, он реплицирует его на остальные кассы, в этот момент с других касс тоже приходят купоны, которые реплицируются на остальные кассы, сервер не успевает их закоммитить, включая в пакеты данных для всех касс (ну или как-то так), в итоге накапливая снежный ком на каждую из касс.. в общем, ужас страшный. Вот что в логах сервера при этом происходит:

21:31:22: 0x00005858: INFO: replication#экспорт на терминал Краснознаменск Молодёжная (S0219) - Терминал №1#152ed5b0: trm_coupon_data, 0. Передано записей: 10464, удалено: 0
21:31:22: 0x00006334: INFO: replication#импорт с терминала Тверь Луначарского (S0210) - Терминал №2#153b15f8: trm_coupon_data, 0 (с 949 по 973)
21:31:22: 0x00006e7c: INFO: replication#экспорт на терминал Химки Лига (S0010) - Терминал №2#15351c10: trm_coupon_data, 0. Передано записей: 10465, удалено: 0
21:31:22: 0x00008dcc: INFO: replication#экспорт на сервер Balashiha#151802f0: trm_coupon_data, 0 (с 8374 по 8388)
21:31:22: 0x000053b0: INFO: replication#экспорт на терминал Марьино (S0020) - Терминал №2#14f5faf0: trm_coupon_data, 0. Передано записей: 10465, удалено: 0
21:31:22: 0x00009cb0: INFO: replication#экспорт на терминал Химки Лига (S0010) - Терминал №1#1973b360: trm_coupon_data, 0 (с 8387 по 8388)
21:31:22: 0x000063a8: INFO: replication#экспорт на терминал Ярославль Авиаторов (S0079) - Терминал №2#150f72e0: trm_coupon_data, 0. Передано записей: 10465, удалено: 0
21:31:22: 0x0000506c: INFO: replication#экспорт на терминал Мытищи Перловский (S0047) - Терминал №1#14f785b8: trm_coupon_data, 0. Передано записей: 10464, удалено: 0
21:31:23: 0x00006620: INFO: replication#экспорт на терминал Дмитров (S0009) - Терминал №1#1551d278: trm_coupon_data, 0. Передано записей: 10469, удалено: 0
21:31:23: 0x00004f3c: WARNING: replication#импорт с терминала Саранск Советская (S0224) - Терминал №2#19616808: Истёк таймаут ожидания освобождения блокировки 'version_control_mysterious_id_0_table_trm_coupon_data'. Пауза 30 сек.
21:31:23: 0x0000806c: INFO: replication#экспорт на терминал Саранск Советская (S0224) - Терминал №2#196169c0: trm_coupon_data, 0 (с 8375 по 8376)
21:31:23: 0x00005910: INFO: replication#экспорт на терминал Раменское (S0027) - Терминал №2#153e9450: trm_coupon_data, 0. Передано записей: 10468, удалено: 0
21:31:23: 0x00001ee8: INFO: replication#экспорт на сервер Chekhov_Msk#19258f28: trm_coupon_data, 0. Передано записей: 10465, удалено: 0
21:31:24: 0x00003040: INFO: replication#экспорт на сервер SW_Vernadskogo#1972baf0: trm_coupon_data, 0 (с 8371 по 8374)
21:31:24: 0x00002630: INFO: replication#экспорт на сервер Alexeevskaya#192a6e38: trm_coupon_data, 0 (с 8387 по 8388)
21:31:24: 0x00003798: INFO: replication#экспорт на сервер Mytischi_Alta#15508b40: trm_coupon_data, 0. Передано записей: 10474, удалено: 0
21:31:24: 0x00002504: INFO: replication#экспорт на сервер Odintsovo Makovskogo#1996cbd0: trm_coupon_data, 0. Передано записей: 10473, удалено: 0
21:31:24: 0x0000253c: INFO: replication#экспорт на терминал Красногорск (S0026) - Терминал №3#197b0f50: trm_coupon_data, 0. Передано записей: 10474, удалено: 0

Лечится обновлением до 53 (ошибка 5327 по утверждениям разрабов исправлена там), но мы обошлись отключением импорта таблицы trm_coupon_data с касс и серверов и еже15секундным запуском скрипта обработки принятых с касс и серверов чеков: берём из таблицы trm_out_receipt_discount_coupons_accept свежего чека купон, ставим ему status=0,version=0 и формируем пустой incr в конвертере import4. Всем этим занимается SQL-скрипт, запускаемый event schedulerом MySQL (у нас оно версии 5.6.12).
09.04.2014 16:12
Tiger
 
Цитата:
OlegON SHOW FULL PROCESSLIST;
Удалось подловить:

Цитата:
mysql> show processlist;
+----+--------------+---------------------+-----------+---------+------+-------- --+----------------------------------------------------------------------------- ---------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+--------------+---------------------+-----------+---------+------+-------- --+----------------------------------------------------------------------------- ---------------+
| 1 | ukm_terminal | localhost:55060 | ukmclient | Query | 41 | Updatin g | UPDATE trm_coupon_data SET status=0, version=0 WHERE global_id=0 AND id='543 210073Q9AHNGT' |
| 54 | ukmremote | 192.168.10.240:4428 | ukmclient | Sleep | 59 | | NULL |
| 56 | ukmremote | 192.168.10.240:4430 | ukmclient | Sleep | 4 | | NULL |
| 57 | root | localhost | ukmclient | Query | 0 | NULL | show processlist |
+----+--------------+---------------------+-----------+---------+------+-------- --+----------------------------------------------------------------------------- ---------------+
4 rows in set (0,00 sec)

mysql> show processlist;
+----+--------------+---------------------+-----------+---------+------+-------- --+----------------------------------------------------------------------------- ---------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+--------------+---------------------+-----------+---------+------+-------- --+----------------------------------------------------------------------------- ---------------+
| 1 | ukm_terminal | localhost:55060 | ukmclient | Query | 43 | Updatin g | UPDATE trm_coupon_data SET status=0, version=0 WHERE global_id=0 AND id='543 210073Q9AHNGT' |
| 54 | ukmremote | 192.168.10.240:4428 | ukmclient | Sleep | 61 | | NULL |
| 56 | ukmremote | 192.168.10.240:4430 | ukmclient | Sleep | 6 | | NULL |
| 57 | root | localhost | ukmclient | Query | 0 | NULL | show processlist |
+----+--------------+---------------------+-----------+---------+------+-------- --+----------------------------------------------------------------------------- ---------------+
4 rows in set (0,00 sec)

mysql> show processlist;
+----+--------------+---------------------+-----------+---------+------+-------- --+----------------------------------------------------------------------------- ---------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+--------------+---------------------+-----------+---------+------+-------- --+----------------------------------------------------------------------------- ---------------+
| 1 | ukm_terminal | localhost:55060 | ukmclient | Query | 51 | Updatin g | UPDATE trm_coupon_data SET status=0, version=0 WHERE global_id=0 AND id='543 210073Q9AHNGT' |
| 54 | ukmremote | 192.168.10.240:4428 | ukmclient | Sleep | 69 | | NULL |
| 56 | ukmremote | 192.168.10.240:4430 | ukmclient | Sleep | 3 | | NULL |
| 57 | root | localhost | ukmclient | Query | 0 | NULL | show processlist |
+----+--------------+---------------------+-----------+---------+------+-------- --+----------------------------------------------------------------------------- ---------------+
4 rows in set (0,00 sec)

mysql> show processlist;
+----+--------------+---------------------+-----------+---------+------+-------+ ------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+--------------+---------------------+-----------+---------+------+-------+ ------------------+
| 1 | ukm_terminal | localhost:55060 | ukmclient | Sleep | 6 | | NULL |
| 54 | ukmremote | 192.168.10.240:4428 | ukmclient | Sleep | 75 | | NULL |
| 56 | ukmremote | 192.168.10.240:4430 | ukmclient | Sleep | 9 | | NULL |
| 57 | root | localhost | ukmclient | Query | 0 | NULL | show processlist |
+----+--------------+---------------------+-----------+---------+------+-------+ ------------------+
4 rows in set (0,00 sec)

mysql> show processlist;
+----+--------------+---------------------+-----------+---------+------+-------+ ------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+--------------+---------------------+-----------+---------+------+-------+ ------------------+
| 1 | ukm_terminal | localhost:55060 | ukmclient | Sleep | 7 | | NULL |
| 54 | ukmremote | 192.168.10.240:4428 | ukmclient | Sleep | 76 | | NULL |
| 56 | ukmremote | 192.168.10.240:4430 | ukmclient | Sleep | 10 | | NULL |
| 57 | root | localhost | ukmclient | Query | 0 | NULL | show processlist |
+----+--------------+---------------------+-----------+---------+------+-------+ ------------------+
4 rows in set (0,00 sec)

mysql> show processlist;
+----+--------------+---------------------+-----------+---------+------+-------+ ------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+--------------+---------------------+-----------+---------+------+-------+ ------------------+
| 1 | ukm_terminal | localhost:55060 | ukmclient | Sleep | 10 | | NULL |
| 54 | ukmremote | 192.168.10.240:4428 | ukmclient | Sleep | 79 | | NULL |
| 56 | ukmremote | 192.168.10.240:4430 | ukmclient | Sleep | 0 | | NULL |
| 57 | root | localhost | ukmclient | Query | 0 | NULL | show processlist |
+----+--------------+---------------------+-----------+---------+------+-------+ ------------------+
4 rows in set (0,00 sec)

mysql> show processlist;
+----+--------------+---------------------+-----------+---------+------+-------- --+----------------------------------------------------------------------------- ---------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+--------------+---------------------+-----------+---------+------+-------- --+----------------------------------------------------------------------------- ---------------+
| 1 | ukm_terminal | localhost:55060 | ukmclient | Query | 10 | Updatin g | UPDATE trm_coupon_data SET status=0, version=0 WHERE global_id=0 AND id='543 210073Q9AHNGT' |
| 54 | ukmremote | 192.168.10.240:4428 | ukmclient | Sleep | 93 | | NULL |
| 56 | ukmremote | 192.168.10.240:4430 | ukmclient | Sleep | 2 | | NULL |
| 57 | root | localhost | ukmclient | Query | 0 | NULL | show processlist |
+----+--------------+---------------------+-----------+---------+------+-------- --+----------------------------------------------------------------------------- ---------------+
4 rows in set (0,00 sec)

mysql> show processlist;
+----+--------------+---------------------+-----------+---------+------+-------- --+----------------------------------------------------------------------------- ---------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+--------------+---------------------+-----------+---------+------+-------- --+----------------------------------------------------------------------------- ---------------+
| 1 | ukm_terminal | localhost:55060 | ukmclient | Query | 23 | Updatin g | UPDATE trm_coupon_data SET status=0, version=0 WHERE global_id=0 AND id='543 210073Q9AHNGT' |
| 54 | ukmremote | 192.168.10.240:4428 | ukmclient | Sleep | 106 | | NULL |
| 56 | ukmremote | 192.168.10.240:4430 | ukmclient | Sleep | 15 | | NULL |
| 57 | root | localhost | ukmclient | Query | 0 | NULL | show processlist |
+----+--------------+---------------------+-----------+---------+------+-------- --+----------------------------------------------------------------------------- ---------------+
4 rows in set (0,00 sec)

mysql> show processlist;
+----+--------------+---------------------+-----------+---------+------+-------- --+----------------------------------------------------------------------------- ---------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+--------------+---------------------+-----------+---------+------+-------- --+----------------------------------------------------------------------------- ---------------+
| 1 | ukm_terminal | localhost:55060 | ukmclient | Query | 49 | Updatin g | UPDATE trm_coupon_data SET status=0, version=0 WHERE global_id=0 AND id='543 210073Q9AHNGT' |
| 54 | ukmremote | 192.168.10.240:4428 | ukmclient | Sleep | 132 | | NULL |
| 56 | ukmremote | 192.168.10.240:4430 | ukmclient | Sleep | 14 | | NULL |
| 57 | root | localhost | ukmclient | Query | 0 | NULL | show processlist |
+----+--------------+---------------------+-----------+---------+------+-------- --+----------------------------------------------------------------------------- ---------------+
4 rows in set (0,00 sec)
Попробовал поиграть с параметрами mysql в my.ini результат тот же!
09.04.2014 16:14
Tiger
 
Цитата:
Onesoft От версии MySQL это, скорее всего, не зависит. Вероятно, купоны реплицируются в обе стороны (домен "Интерактивный маркетинг"), и тут наблюдается одно из двух:

1. это ошибка 4892, исправленная в 55 версии УКМ: "Нестабильная связь между кассой и сервером -> Висят в БД коннекшены и таблицы заблокированы
". Предыдущая транзакция по гашению купона не успела откатиться (например, из-за разрыва связи), старый коннекшен остался висеть, заблокировав запись, новый не может к ней пробиться. Лечится обновлением до 55+, либо работой над улучшением качества связи, либо своевременным прибитием зависших коннекшенов (show processlist в БД кассы покажет несколько коннекшенов пользователя ukmremote, которых должно быть только два, а если их больше - то надо прибивать все кроме двух последних).

2. у нас в логах касс (правда, это была ещё 49sp3 версия) ругалось на другое:
select get_lock('version_control_mysterious_id_0_table_trm_in_discount_card_stop_list', 60
это т.наз. glassstorm, обусловленный двунаправленной репликацией таблицы trm_coupon_data, сервер может не справляться от потоков погашаемых купонов: принимая с кассы погашенный купон, он реплицирует его на остальные кассы, в этот момент с других касс тоже приходят купоны, которые реплицируются на остальные кассы, сервер не успевает их закоммитить, включая в пакеты данных для всех касс (ну или как-то так), в итоге накапливая снежный ком на каждую из касс.. в общем, ужас страшный. Вот что в логах сервера при этом происходит:

21:31:22: 0x00005858: INFO: replication#экспорт на терминал Краснознаменск Молодёжная (S0219) - Терминал №1#152ed5b0: trm_coupon_data, 0. Передано записей: 10464, удалено: 0
21:31:22: 0x00006334: INFO: replication#импорт с терминала Тверь Луначарского (S0210) - Терминал №2#153b15f8: trm_coupon_data, 0 (с 949 по 973)
21:31:22: 0x00006e7c: INFO: replication#экспорт на терминал Химки Лига (S0010) - Терминал №2#15351c10: trm_coupon_data, 0. Передано записей: 10465, удалено: 0
21:31:22: 0x00008dcc: INFO: replication#экспорт на сервер Balashiha#151802f0: trm_coupon_data, 0 (с 8374 по 8388)
21:31:22: 0x000053b0: INFO: replication#экспорт на терминал Марьино (S0020) - Терминал №2#14f5faf0: trm_coupon_data, 0. Передано записей: 10465, удалено: 0
21:31:22: 0x00009cb0: INFO: replication#экспорт на терминал Химки Лига (S0010) - Терминал №1#1973b360: trm_coupon_data, 0 (с 8387 по 8388)
21:31:22: 0x000063a8: INFO: replication#экспорт на терминал Ярославль Авиаторов (S0079) - Терминал №2#150f72e0: trm_coupon_data, 0. Передано записей: 10465, удалено: 0
21:31:22: 0x0000506c: INFO: replication#экспорт на терминал Мытищи Перловский (S0047) - Терминал №1#14f785b8: trm_coupon_data, 0. Передано записей: 10464, удалено: 0
21:31:23: 0x00006620: INFO: replication#экспорт на терминал Дмитров (S0009) - Терминал №1#1551d278: trm_coupon_data, 0. Передано записей: 10469, удалено: 0
21:31:23: 0x00004f3c: WARNING: replication#импорт с терминала Саранск Советская (S0224) - Терминал №2#19616808: Истёк таймаут ожидания освобождения блокировки 'version_control_mysterious_id_0_table_trm_coupon_data'. Пауза 30 сек.
21:31:23: 0x0000806c: INFO: replication#экспорт на терминал Саранск Советская (S0224) - Терминал №2#196169c0: trm_coupon_data, 0 (с 8375 по 8376)
21:31:23: 0x00005910: INFO: replication#экспорт на терминал Раменское (S0027) - Терминал №2#153e9450: trm_coupon_data, 0. Передано записей: 10468, удалено: 0
21:31:23: 0x00001ee8: INFO: replication#экспорт на сервер Chekhov_Msk#19258f28: trm_coupon_data, 0. Передано записей: 10465, удалено: 0
21:31:24: 0x00003040: INFO: replication#экспорт на сервер SW_Vernadskogo#1972baf0: trm_coupon_data, 0 (с 8371 по 8374)
21:31:24: 0x00002630: INFO: replication#экспорт на сервер Alexeevskaya#192a6e38: trm_coupon_data, 0 (с 8387 по 8388)
21:31:24: 0x00003798: INFO: replication#экспорт на сервер Mytischi_Alta#15508b40: trm_coupon_data, 0. Передано записей: 10474, удалено: 0
21:31:24: 0x00002504: INFO: replication#экспорт на сервер Odintsovo Makovskogo#1996cbd0: trm_coupon_data, 0. Передано записей: 10473, удалено: 0
21:31:24: 0x0000253c: INFO: replication#экспорт на терминал Красногорск (S0026) - Терминал №3#197b0f50: trm_coupon_data, 0. Передано записей: 10474, удалено: 0

Лечится обновлением до 53 (ошибка 5327 по утверждениям разрабов исправлена там), но мы обошлись отключением импорта таблицы trm_coupon_data с касс и серверов и еже15секундным запуском скрипта обработки принятых с касс и серверов чеков: берём из таблицы trm_out_receipt_discount_coupons_accept свежего чека купон, ставим ему status=0,version=0 и формируем пустой incr в конвертере import4. Всем этим занимается SQL-скрипт, запускаемый event schedulerом MySQL (у нас оно версии 5.6.12).
Согласен, что это напрямую связано с проверкой купона на сервере и репликацией принятых купонов на кассу с других касса в этот момент и происходит ошибка! Как быть в моей версии 52 sp1 на СГО 52 sp2? Может есть пути решения для моей версии?
Часовой пояс GMT +3, время: 14:24.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.