Opened 4 hours ago
Last modified 3 hours ago
#1394 new дефект
Неконсистентность в БД: верный статус несоответствия изделия
Reported by: | alx | Owned by: | Denis_N |
---|---|---|---|
Priority: | critical | Component: | БД изделий АДС |
Keywords: | Cc: |
Description (last modified by )
В БД изделий обнаружены неконсистентности: неверные аггрегированные статусы несоответствий изделий.
Например изделие S/N G05753 имеет запись в таблице products
с mismatch='yes'. Однако согласно истории этого изделия (записям в таблице history
), несоответствие данного изделия было устранено:
MariaDB [adcproducts]> SELECT N, type_write, status, comment, bond FROM history WHERE UID=22178; +-------+------------+--------+--------------------------------------------+-------+ | N | type_write | status | comment | bond | +-------+------------+--------+--------------------------------------------+-------+ | 81147 | record | NULL | | NULL | | 83376 | record | NULL | | NULL | | 86828 | mismatch | fail | Нет линка на порту Ethernet | 88396 | | 88396 | mismatch | ok | Замена D17 | 86828 | | 88397 | testing | ok | | NULL | | 88619 | otk | ok | | NULL | +-------+------------+--------+--------------------------------------------+-------+ 6 rows in set (0.001 sec)
Это не единственный такой обнаруженный случай.
Предлагаю:
- выяснить, каким образом в БД возникли данные неконсистентности и устранить причину;
- исправить уже имеющиеся неконсистентности в БД (перегенеирровать значения поля
mismatch
таблицыproducts
на основании записей таблицыhistory
).
Change History (3)
comment:1 by , 4 hours ago
Description: | modified (diff) |
---|
comment:2 by , 3 hours ago
Провел эксперимент: в историю платы S/N Б2084 (у которой не было несоответствий) внес тестовую запись о несоответствии. В результате поле mismatch
этого изделия получило значение yes. Затем я внес запись об устранении этого несоответствия. Однако поле mismatch
так и осталось в значении yes!!!
Исправил опечатки.