Fix: lỗi đồng bộ khi có 2 bản ghi checkout (state = 2)
Problem Statement
Hiện có một số session có 2 bản ghi gps_logs với state. = 2, bản ghi state =2 mà id cuối cùng, có face_id, thì event_date lại nhỏ hơn bản ghi state = 2 không có ảnh, chưa rõ nguyên nhân
Với những phiên này, có hiển thị chức năng Kết thúc phiên (đối với các phiên state = 2 mà ảnh kết thúc không có) nhưng thực hiện chức năng này thì bị báo lỗi, không thực hiện được
Các phiên bị lỗi có đặc điểm:
Có 2 bản ghi state =2
Data khi query trainee_outdoor_gps_logs (order by id DESC), phiên ví dụ: fc0eaf37-5f34-416c-9955-a67458801fab
Nguyên nhân: có một bản ghi id trước đó bị sai thời gian (event_date > event_date lúc checkout)
Requirement
Cho phép đồng bộ phiện đó bằng cách duyệt gps_logs tới bản ghi cuối cùng để xử lý (đang order by event_date), nếu không có ảnh thì lấy ảnh của bản ghi state = 2 move qua
Future Work
Theo dõi tiếp để tìm nguyên nhân cụ thể của lỗi này, có thể sử dụng cách synced = true nhưng vẫn set sync_error = “abnormal gpslogs”