问题排查报告
问题跟踪
##
执行语句取出所有非重复数据:
select t.stateid,t.fk_statelistcst,t.code,t.label,t.functionid,t.pk_id,
t.dlu,
t.dluunit,
t.cpt,
t.haseqpimpact from EQP_STATEVALUE t group by t.stateid,
t.fk_statelistcst,
t.code,
t.label,
t.functionid,
t.pk_id,
t.dlu,
t.dluunit,
t.cpt,
t.haseqpimpact
然后删除并还原,本以为应该就好了,发现一会数据又上来了,说明脏数据不只是这个,停掉服务继续排查
在设备管理点修改设备,发现弹出下面的报错:
根据提示,找到该Function:

发现该函数第30行有个PK_ID=….. 这里报错,说明后面的语句查询到的值不止一个!
对数据追踪:
SELECT EQP_PTYVAL.FK_PROPERTYTYPE, EQP_PTYVAL.ENTITYID, EQP_PTYVAL.ENTITYCSTID
FROM EQP_PTYVAL
WHERE FK_CLASSID = 1016 AND FK_PROPERTYID = 730

继续追:

发现这个重复了,备份并删除!
本以为好了,点击更新出现如下报错:

然后根据提示,排查Eqp_Eqpexe_Statustransmgt这个表,发现并没有什么重复数据,崩溃!!!!
只能一个个表去排查,最终发现EQP_TRANVALUE下面数据有异常!

按照上面的去重方法,把这里数据去除重复,在去更新:

完美!!!
总结
- EQP_PTYVAL
表有一个脏数据,导致服务在自动更新设备状态的时候重复的向``EQP_STATEVALUE和EQP_TRANVALUE插入了数据
如何避免
在PI运行的时候切勿去操作设备类或修改属性,如果这个设备正在被PI占用,就会出现这个情况。




21 条回复
[…] what is rybelsus 3mg used for […]
[…] clomid without insurance generic […]
[…] buy viagra 50mg online […]
[…] how to buy cialis […]
[…] 50 mg sildenafil […]
[…] cialis online no prescription […]
[…] natural testosterone boosters ginseng […]
[…] viagra pfizer 100 mg online […]
[…] cialis coupons […]
[…] viagra 50 off coupon […]
[…] cialis without a prescription […]
[…] sildenafil 100 […]
[…] sildenafil citrate 50mg tablets […]
[…] sildenafil citrate tablets 100 mg […]
[…] lilly cialis coupon […]
kamagra gel
kamagra gel
doxycycline monohydrate 100mg for acne
doxycycline monohydrate 100mg for acne
flagyl
flagyl
lasix diuretic medicine
lasix diuretic medicine
finasteride hair reddit
finasteride hair reddit
semaglutide afvallen vergoeding
semaglutide afvallen vergoeding