thunderbird / thunderbird/thunderbird-android

Gmail no longer syncing - fails silently

Open
#9,424 5 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

unconfirmed
Dominant language
Kotlin
Stars
14k
Forks
2.8k
Avg merge
3d 3h
Merged PRs (30d)
57

Description

Checklist
  • I have used the search function to see if someone else has already submitted the same bug report.
  • I will describe the problem with as much detail as possible.
App

K-9 Mail

App version

10.0

Where did you get the app from?

Google Play

Android version

15

Device model

S24 Plus

Steps to reproduce
  1. Pull down the message list to begin sync
  2. Wait for UI to indicate sync is finished

Hello

Last couple of days, K9 is no longer syncing my Gmail account. I use manual sync.

I have tried the following:

  • deleting and re-adding account (it works once after doing this)
  • checking incoming mail details (it works once after doing this)
  • trying a different app (Gmail works)
  • switching from WiFi to 4G and vice versa

On exporting debug logs, I see below error.

I have been using K9 for years now without any problems. Weird thing is I am not notified of the problem, it was only after checking with Gmail app I realized something was wrong

07-02 16:02:38.190 21830 21857 V RealImapConnection: 
07-02 16:02:38.190 21830 21857 V RealImapConnection: ]]
07-02 16:02:38.191 21830 21857 V RealImapConnection: conn30709357<<<#8# [OK, Success]
07-02 16:02:38.191 21830 21857 D ImapSync: SYNC: Synced unsynced messages for folder INBOX
07-02 16:02:38.191 21830 21857 D ImapSync: SYNC: Have 0 large messages and 1 small messages out of 1 unsynced messages
07-02 16:02:38.191 21830 21857 D ImapSync: SYNC: Fetching 1 small messages for folder INBOX
07-02 16:02:38.192 21830 21857 V RealImapConnection: conn30709357>>> 9 UID FETCH 34322 (UID BODY.PEEK[])
07-02 16:02:41.854 21830 21857 E RealImapFolder: IOException for b9a60008-ea87-4995-964a-65313b253abc:INBOX/MessagingController/conn30709357
07-02 16:02:41.854 21830 21857 E RealImapFolder: java.net.SocketException: Software caused connection abort
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at java.net.SocketInputStream.socketRead0(Native Method)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at java.net.SocketInputStream.socketRead(SocketInputStream.java:118)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at java.net.SocketInputStream.read(SocketInputStream.java:173)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at java.net.SocketInputStream.read(SocketInputStream.java:143)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readFromSocket(ConscryptEngineSocket.java:989)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.processDataFromSocket(ConscryptEngineSocket.java:953)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readUntilDataAvailable(ConscryptEngineSocket.java:868)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.read(ConscryptEngineSocket.java:841)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at java.util.zip.InflaterInputStream.fill(InflaterInputStream.java:303)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:210)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at java.io.BufferedInputStream.fill(BufferedInputStream.java:239)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at java.io.BufferedInputStream.read(BufferedInputStream.java:258)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.fsck.k9.mail.filter.PeekableInputStream.peek(PeekableInputStream.kt:31)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.fsck.k9.mail.store.imap.ImapResponseParser.readResponse(ImapResponseParser.java:37)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.fsck.k9.mail.store.imap.RealImapConnection.readResponse(RealImapConnection.kt:836)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.fsck.k9.mail.store.imap.RealImapFolder.fetch(RealImapFolder.kt:609)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.fsck.k9.backend.imap.ImapSync.downloadSmallMessages(ImapSync.kt:518)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.fsck.k9.backend.imap.ImapSync.downloadMessages(ImapSync.kt:361)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.fsck.k9.backend.imap.ImapSync.synchronizeMailboxSynchronous(ImapSync.kt:203)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.fsck.k9.backend.imap.ImapSync.sync(ImapSync.kt:34)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.fsck.k9.backend.imap.ImapBackend.sync(ImapBackend.kt:56)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.fsck.k9.controller.MessagingController.syncFolder(MessagingController.java:644)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.fsck.k9.controller.MessagingController.synchronizeMailboxSynchronous(MessagingController.java:584)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.fsck.k9.controller.MessagingController.synchronizeFolderInBackground(MessagingController.java:2421)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.fsck.k9.controller.MessagingController.lambda$synchronizeFolder$29(MessagingController.java:2393)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.fsck.k9.controller.MessagingController.$r8$lambda$Sh5trCC-_siPBccOxT_UO3ffdJU(MessagingController.java:0)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.fsck.k9.controller.MessagingController$$ExternalSyntheticLambda31.run(R8$$SyntheticClass:0)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.fsck.k9.controller.MessagingController.runInBackground(MessagingController.java:227)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.fsck.k9.controller.MessagingController.-$$Nest$mrunInBackground(MessagingController.java:0)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at com.fsck.k9.controller.MessagingController$1.run(MessagingController.java:167)
07-02 16:02:41.854 21830 21857 E RealImapFolder: 	at java.lang.Thread.run(Thread.java:1012)
07-02 16:02:41.856 21830 21857 E ImapSync: synchronizeMailbox
07-02 16:02:41.856 21830 21857 E ImapSync: com.fsck.k9.mail.MessagingException: IO Error
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.mail.store.imap.RealImapFolder.ioExceptionHandler(RealImapFolder.kt:1201)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.mail.store.imap.RealImapFolder.fetch(RealImapFolder.kt:649)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.backend.imap.ImapSync.downloadSmallMessages(ImapSync.kt:518)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.backend.imap.ImapSync.downloadMessages(ImapSync.kt:361)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.backend.imap.ImapSync.synchronizeMailboxSynchronous(ImapSync.kt:203)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.backend.imap.ImapSync.sync(ImapSync.kt:34)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.backend.imap.ImapBackend.sync(ImapBackend.kt:56)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.controller.MessagingController.syncFolder(MessagingController.java:644)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.controller.MessagingController.synchronizeMailboxSynchronous(MessagingController.java:584)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.controller.MessagingController.synchronizeFolderInBackground(MessagingController.java:2421)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.controller.MessagingController.lambda$synchronizeFolder$29(MessagingController.java:2393)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.controller.MessagingController.$r8$lambda$Sh5trCC-_siPBccOxT_UO3ffdJU(MessagingController.java:0)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.controller.MessagingController$$ExternalSyntheticLambda31.run(R8$$SyntheticClass:0)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.controller.MessagingController.runInBackground(MessagingController.java:227)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.controller.MessagingController.-$$Nest$mrunInBackground(MessagingController.java:0)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.controller.MessagingController$1.run(MessagingController.java:167)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at java.lang.Thread.run(Thread.java:1012)
07-02 16:02:41.856 21830 21857 E ImapSync: Caused by: java.net.SocketException: Software caused connection abort
07-02 16:02:41.856 21830 21857 E ImapSync: 	at java.net.SocketInputStream.socketRead0(Native Method)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at java.net.SocketInputStream.socketRead(SocketInputStream.java:118)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at java.net.SocketInputStream.read(SocketInputStream.java:173)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at java.net.SocketInputStream.read(SocketInputStream.java:143)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readFromSocket(ConscryptEngineSocket.java:989)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.processDataFromSocket(ConscryptEngineSocket.java:953)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readUntilDataAvailable(ConscryptEngineSocket.java:868)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.read(ConscryptEngineSocket.java:841)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at java.util.zip.InflaterInputStream.fill(InflaterInputStream.java:303)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:210)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at java.io.BufferedInputStream.fill(BufferedInputStream.java:239)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at java.io.BufferedInputStream.read(BufferedInputStream.java:258)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.mail.filter.PeekableInputStream.peek(PeekableInputStream.kt:31)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.mail.store.imap.ImapResponseParser.readResponse(ImapResponseParser.java:37)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.mail.store.imap.RealImapConnection.readResponse(RealImapConnection.kt:836)
07-02 16:02:41.856 21830 21857 E ImapSync: 	at com.fsck.k9.mail.store.imap.RealImapFolder.fetch(RealImapFolder.kt:609)
07-02 16:02:41.856 21830 21857 E ImapSync: 	... 15 more
07-02 16:02:41.860 21830 21857 E ImapSync: Failed
Expected behavior
  • Successful sync
  • Notify of problems
Actual behavior

It displays UI behaviour that it is syncing, e.g. spinning bar, but then stops as if it synced successfully

Logs

k9mail-logs (1).txt

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the attached logs and the failing path in RealImapFolder.kt:609, then follow ImapSync.kt:518 and the sync entry points in MessagingController.java:644 and :584. Reproduce the Gmail manual-sync failure and trace why the socket abort is not surfaced; done means failed syncs are reported and successful sync behavior remains intact.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, kotlin
Domain
mobile-dev, networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.