thunderbird / thunderbird/thunderbird-android
Gmail no longer syncing - fails silently
Nobody has claimed this yet.
- 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
- Pull down the message list to begin sync
- 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
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- 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