1
0
Эх сурвалжийг харах

更改轨迹保存方式,防止死锁

ting.yin 1 жил өмнө
parent
commit
a3c45962f8

+ 5 - 2
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/mark/service/Impl/MarkServiceImpl.java

@@ -739,14 +739,17 @@ public class MarkServiceImpl implements MarkService {
         // 保存阅卷轨迹
         int unansweredCount = 0;
         if (result.getTrackList() != null && !result.isUnselective()) {
-            trackDao.deleteByLibraryId(library.getId());
+            // trackDao.deleteByLibraryId(library.getId());
+            List<MarkTrack> oldTracks = trackDao.findByPkLibraryId(library.getId());
+            trackDao.delete(oldTracks);
             List<MarkTrack> tracks = result.getTrackList(library, marker);
             for (MarkTrack markTrack : tracks) {
-                trackDao.saveAndFlush(markTrack);
+                // trackDao.saveAndFlush(markTrack);
                 if (markTrack.isUnanswered()) {
                     unansweredCount++;
                 }
             }
+            trackDao.save(tracks);
             libraryDao.updateUnansweredCount(library.getId(), unansweredCount);
         }
         // 保存特殊标记