Separate uploading stream & sample data to server from deleting the local database
Make uploading the data a separate action from deleting the local database records. As it stands now if there is silent failure in the upload process then all the data is lost. Disk space on the device is cheap, human time to collect data is expensive. The database state indicator could play into this.