Article Data Loss After Offline Session — Cause and Resolution

Summary

Critical data loss occurs when offline sessions exceed 72 hours without successful sync.

Symptoms

Technicians working in areas with limited connectivity may notice that work orders completed offline appear to save successfully, but upon reconnecting, some or all of that data is missing. In my experience, this typically manifests in one of three ways:

  • Work orders show as "completed" but checklist responses, photos, or notes are empty
  • Jobs completed offline revert to "in progress" status after sync
  • Entire work orders created offline disappear entirely from the technician's device

Affected Versions and Platforms

FieldPulse Mobile App 3.0.8 through 3.1.2 on both iOS and Android. The issue is more prevalent on Android devices with aggressive battery optimization settings, but I have seen it occur on iOS as well.

Cause

What I typically recommend is understanding the root cause before attempting any recovery. The FieldPulse mobile app uses a local SQLite database for offline storage, with a background sync queue that processes changes when connectivity returns. In versions 3.0.8–3.1.2, a race condition was introduced between the sync scheduler and the local data retention policy.

Specifically: the app was configured to retain unsynced data for 72 hours as a safeguard against device storage bloat. However, due to a timer initialization bug, this cleanup routine could trigger before the sync process completed, particularly when the app was backgrounded for extended periods or when the device entered low-power modes. The sync queue would see "no pending changes" because the underlying records had been purged, and would mark the sync as successful—when in fact the data was gone.

In my experience, this is more likely to occur when:

  • A technician works offline for more than 48 hours
  • The device is restarted while offline
  • Multiple apps are competing for background processing time

Resolution

The definitive fix is to update to FieldPulse Mobile App 3.1.3 or later, where the data retention timer is properly gated behind sync completion status. To update:

  1. Open the App Store (iOS) or Google Play Store (Android)
  2. Search for "FieldPulse"
  3. Tap Update if available, or Open if already on 3.1.3+

For teams still on affected versions, what I typically recommend is configuring a forced sync reminder at the 24-hour mark, which can be enabled in SettingsOffline ModeSync Reminders.

Data Recovery

If data loss has already occurred, recovery options are unfortunately limited. The data is removed from the local database without backup. However, in some cases where the app was force-closed rather than backgrounded, the SQLite WAL (Write-Ahead Log) may contain recoverable fragments. Contact FieldPulse Support with the device ID and approximate time of data entry—our team can attempt WAL recovery if the device has not been heavily used since the incident.

Prevention

Beyond updating, I would also recommend:

  1. Adopting a sync-before-end-of-day policy for field teams
  2. Disabling aggressive battery optimization for the FieldPulse app (Android: SettingsAppsFieldPulseBatteryUnrestricted)
  3. Using Wi-Fi sync when returning to the office, as cellular sync can be interrupted more easily

For more on configuring offline mode best practices, see FieldPulse Now Supports Offline Mode on iOS and Android.


Last updated: October 2, 2025. If you are still experiencing this issue after updating to 3.1.3, please reply below with your device model and OS version so we can investigate further.