127异常数据同步es:
0208715309, 0208716485, 0208715740, 0208717422, 0208717621, 0208716936, 0208716181, 0208716957, 0208717131, 0208717132, 0208718463, 0208717753, 0208722510, 0208724711, 0208722950, 0208724294, 0208724932, 0208725101, 0208729914, 0208730742, 0208731911, 0208732443, 0208734677, 0208734861, 0208737423, 0208736850, 0208736916, 0208737489, 0208737130, 4864177546, 4864094553, 4864177124, 4864163103, 4864158350, 4864176690, 4864176699, 4864176691, 4864158366, 4864176698, 4864174617, 4864031465, 4864174628, 4864174622, 4864176693, 4864176709, 4864096760, 4864176702, 4864176700, 4864176451, 4864174643, 4863783219, 4864170948, 4864177132, 4864173161, 4864173168, 4864165174, 4864174616, 4864177924, 4864174623, 4864180118, 4864179337, 4864179317, 4864163960, 4864179315, 4864179316, 4864180096, 4864179322, 4864178539, 4864179321, 4864180062, 4864099891, 4864180081, 0208739160, 4864177131, 4864150411, 4864179335, 4864179233, 0208745065, 0208746940, 0208746941, 0208748421, 0208748642, 0208747578, 0208748602, 0208750812, 0208749729, 0208752016, 0208751345, 0208751558, 0208752507, 0208752926, 0208754240, 0208758785, 0208761029
127定时任务1处理数据,两个分配,都是150条左右
分片0
4864774123, 4864777115, 4864179335, 4864179337, 0208784914, 4864737859, 4864768247, 4864836099, 0208764223, 4864777879, 0208775995, 0208777654, 0208780428, 4864733403, 4864179322, 4864176691, 4864179321, 4864176698, 0208779955, 4864176451, 4864766192, 0208752926, 4864176693, 0208762799, 4864766198, 4864177546, 4864745750, 0208748421, 4864679915, 4864769861, 0208747578, 4864176699, 4864765138, 4864158366, 4864710391, 4864655844, 4864777196, 4864765816, 4864165174, 4864774120, 4864682761, 0208751558, 4864772087, 4864778900, 4864768265, 4864179316, 4864762160, 4864179317, 4864179315, 4864730009, 4864177132, 4864639928, 4864177131, 0208780967, 4864770971, 0208776464, 4864765828, 4864770970, 4864770973, 4864770978, 0208731911, 4864765820, 4864765829, 0208778881, 4864176690, 4864778853, 4864774136, 0208732443, 4864173161, 0208734861, 4864774137, 4864778858, 4864177124, 0208752016, 4864094553, 0208746941, 0208748602, 4864772090, 4864762168, 4864177924, 0208746940, 4864762169, 4864180096, 4864173168, 0208736916, 4864778923, 0208762767, 4864174643, 4864774143, 4864765834, 4864778921, 4864158350, 0208762800, 0208750812, 0208745065, 4864176700, 0208762801, 4864099891, 4864031465, 4864765055, 4864176702, 4864180081, 4864765049, 4864765048, 4864895945, 4864163103, 4864777162, 0208751345, 0208778021, 4864763682, 4864176709, 4864766150, 4864753877, 4864723784, 4864660794, 0208736850, 4864180118, 4864713069, 0208761029, 0208734677, 4864763676, 0208758785, 4864763710, 0208762636, 0208749729, 4864647835, 0208739160, 4864767410, 4864174622, 4864179233, 4864180062, 0208770728, 0208737423, 4864174623, 4864774225, 4864704989, 0208730742, 4864170948, 4864150411, 0208777911, 4863783219, 4864174628, 4864096760, 4864660805, 4864163960, 4864889359, 0208748642, 0208752507, 0208762133, 4864895081, 4864753897, 4864737867, 4864174616, 0208737130, 4864662436, 0208737489, 0208754240, 4864178539, 4864174617, 4864768230
分片1
4864092780, 4864777874, 4864177555, 4864179338, 4864765135, 4864769853, 4864165172, 0208749222, 4864177557, 0208732072, 4864768248, 4864165173, 4864160312, 4864162459, 0208733313, 0208734761, 4864179339, 4864718785, 4864037765, 0208731377, 0208772246, 4864179185, 4864160313, 4864180271, 4864179324, 4864158368, 4864765143, 4864766196, 4864768256, 0208768536, 4864176694, 0208733312, 0208744743, 4864765136, 4864744539, 4864769859, 4864173331, 0208751846, 4864177810, 0208753217, 4864177136, 4864768261, 0208751847, 0208740153, 4864178503, 4864765824, 4864770977, 4864176449, 4863983697, 4864762710, 4864176689, 4864179319, 4864744527, 4864657445, 4864762713, 0208764072, 4864762170, 4864665199, 4864765826, 0208737213, 4864689702, 4863926757, 0208737211, 4864173165, 4864770975, 4864180092, 0208731500, 4864177923, 4864765832, 4864765831, 4864177646, 4864358784, 0208753352, 0208757954, 4864765830, 4864140313, 4864177807, 0208781881, 4864728545, 4864741640, 4864764081, 0208783383, 4864774144, 4864177115, 4864176704, 0208749147, 4864764083, 4864765052, 4864175739, 4864765058, 4864176705, 4864180084, 0208768342, 4864762178, 4864167148, 4864763667, 4864177983, 4864163105, 0208742760, 4864163104, 4864778910, 4864715355, 4864763708, 4863887028, 4864674709, 4864753872, 0208731729, 4864180079, 4864163118, 0208747382, 4864762191, 0208750428, 4864176139, 4864895137, 4864715360, 0208770016, 0208769697, 4864647838, 0208777328, 4864169739, 0208752563, 4864774228, 4864169738, 0208750836, 4864763717, 4863733941, 0208747700, 4864174627, 0208747942, 4864111644, 4864174626, 0208783914, 0208762148, 0208769855, 4864768222, 0208740118, 0208776391, 4864163966, 4864165186, 4864168459, 0208740636, 4864170945, 0208754078, 4864767408, 4864737880, 4864763686, 0208735199, 0208749178, 0208770711, 4864174611, 4864650738, 0208787097, 4864178419, 4864768236, 4864647844, 4864177561, 4864027738, 0208778206, 4864613744, 4864766204, 4864767414, 4864179229, 4864767416, 4864766206, 4864174619, 4864027733, 0208739946, 4864766207, 0208772058, 0208780071, 4864579600
定时任务1,1次就可以跑完所有数据,可以索引update范围,原来3天
一,问题
127同步es重复
127同步异常数据出现死锁
二,原因及问题定位
1.死锁原因:
定时任务1,同步延迟超过三天数据,有93条数据。更新状态为2
定时任务2,处理3天内,未处理的数据,分片取到160条数据。(包含定时任务1中93条大部分数据),变更更新时间。
***************
原因再定位,应该不是上面原因。定时任务1同步之后,定时任务2再跑的。两个数据没有交集
从日志上看,
19:16:01.100,跑定时任务处理7天内数据,这个点还是发版前的数据。分片0跑的。
19:16:01.023 这个点 127同步异常数据
19:16:14.154 127同步omp死锁时间点
综上,原因是:发版前分片0数据,与发版生效后,127同步es数据,重复,发生死锁
2.127同步es重复原因
死锁导致
死锁时间:19:16:1
死锁内容:127 同步异常数据到es,导致数据状态回滚,还是初始化状态0(被重复处理),es同步成功
证据1:es 重复数据第一条,创建时间刚好19:16:13,就是死锁发生时间
证据2:被重复处理,第二次127同步异常数据时间:19:18:00.646,es重复数据第二条,创建时间:19:18:10
三,解决方案
1,减少死锁发生
1.1 减少处理数据条数
2.同步es重复
先更新状态,成功后,再同步es。
四,待解决问题