遇到一个bug,往MySQL插入的数据,有一个字段的数据不对,通过Slf4j打印出来的debug日志发现,插入语句中,该字段的参数是正确的,但是表里的数据就是不对,百思不得其解。
将日志里面的语句和参数复制出来,将错误数据那行删掉,执行一遍语句,插入了正确数据。
最后,搜索日志的时候发现,是同一条数据插入了两遍…
第一次插入了错误数据,第二次试图插入正确的数据,然是由于唯一键重复,插入失败,而插入语句又是INSERT IGNORE,所以没有报错。
记录一下这个愚蠢的错误,为遇到类似bug的人提供一种可能的思路。