Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

One broken relay stop send messages

Open
#8,836 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
48/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
rust
Domain
backend

Research direction

Start with the SMTP sending and retry flow in src/smtp.rs, especially the permanent-error handling, and its caller in src/scheduler.rs; the logs show a permanent SMTP rejection stops processing after transport 8. Check existing SMTP tests for coverage of multiple configured relays. Done when a failed relay is skipped in favor of another and sending fails only after all relays fail.

Written by the indexing model from the issue text.

Description

bug

loos like not fully fixed in #8806

Adding one broken relay stop send messages
I have account with two relays, i add 3th relay and it's broken (yandex, spam error)
I can gen new messages, but can not send - error in ne relay stop send all, but i still have 2 working relays

  • test on Linux/Android:
  • Core Version: 2.62.0
  • Client Version: 2.62.0

Expected behavior

On fail to send by one relay try next and fail if all broken

Actual behavior

fail after first try

Steps to reproduce the problem
  1. add two relays, one ok, ne broken
  2. send message
Screenshots
Image
Logs
2026-10-17T15:55:53.603Z	core/event            	INFO	""	1	"src/scheduler.rs:664: SMTP fake idle started."
2026-10-17T15:55:53.603Z	core/event            	INFO	""	1	"src/scheduler.rs:676: SMTP has messages to retry, planning to retry 30 seconds later."
2026-10-17T15:55:53.603Z	core/event            	INFO	""	1	"src/scheduler.rs:717: SMTP fake idle interrupted."
2026-10-17T15:55:53.603Z	core/event            	INFO	""	1	"src/smtp.rs:637: Selected rows from SMTP queue: []."
2026-10-17T15:55:53.603Z	core/event            	INFO	""	1	"src/scheduler.rs:664: SMTP fake idle started."
2026-10-17T15:55:53.603Z	core/event            	INFO	""	1	"src/scheduler.rs:706: SMTP has no messages to retry, waiting for interrupt."
2026-10-17T15:55:53.644Z	core/event            	INFO	""	1	"src/imap/select_folder.rs:78: Transport 1: Selected folder \"INBOX\"."
2026-10-17T15:55:53.647Z	core/event            	INFO	""	1	"src/imap.rs:488: Transport 1: No new emails in folder \"INBOX\"."
2026-10-17T15:55:53.772Z	core/event            	INFO	""	1	"src/imap/idle.rs:73: Transport 1: IDLE entering wait-on-remote state in folder \"INBOX\"."
2026-10-17T15:56:22.604Z	core/event            	INFO	""	1	"src/scheduler.rs:717: SMTP fake idle interrupted."
2026-10-17T15:56:22.607Z	core/event            	INFO	""	1	"src/smtp.rs:637: Selected rows from SMTP queue: []."
2026-10-17T15:56:22.607Z	core/event            	INFO	""	1	"src/scheduler.rs:664: SMTP fake idle started."
2026-10-17T15:56:22.607Z	core/event            	INFO	""	1	"src/smtp.rs:637: Selected rows from SMTP queue: []."
2026-10-17T15:56:22.607Z	core/event            	INFO	""	1	"src/scheduler.rs:664: SMTP fake idle started."
2026-10-17T15:56:22.607Z	core/event            	INFO	""	1	"src/scheduler.rs:706: SMTP has no messages to retry, waiting for interrupt."
2026-10-17T15:56:22.903Z	main/menu             	INFO	""	"rebuilding menu with locale ru"
2026-10-17T15:56:22.940Z	core/event            	INFO	""	1	"src/imap/idle.rs:87: \"INBOX\": Received interrupt, stopping IDLE."
2026-10-17T15:56:22.940Z	core/event            	INFO	""	1	"src/imap/idle.rs:102: \"INBOX\": Idle wait was interrupted manually."
2026-10-17T15:56:22.940Z	core/event            	INFO	""	1	"src/imap/idle.rs:87: \"INBOX\": Received interrupt, stopping IDLE."
2026-10-17T15:56:22.940Z	core/event            	INFO	""	1	"src/imap/idle.rs:102: \"INBOX\": Idle wait was interrupted manually."
2026-10-17T15:56:22.940Z	core/event            	INFO	""	1	"src/imap/idle.rs:137: Fake IDLE interrupted."
2026-10-17T15:56:22.940Z	core/event            	INFO	""	1	"src/imap/idle.rs:140: IMAP-fake-IDLE done after 29.6920s"
2026-10-17T15:56:22.940Z	core/event            	INFO	""	1	"src/scheduler.rs:717: SMTP fake idle interrupted."
2026-10-17T15:56:22.944Z	core/event            	INFO	""	1	"src/imap.rs:488: Transport 8: No new emails in folder \"INBOX\"."
2026-10-17T15:56:22.944Z	core/event            	INFO	""	1	"src/smtp.rs:637: Selected rows from SMTP queue: []."
2026-10-17T15:56:22.944Z	core/event            	INFO	""	1	"src/scheduler.rs:579: Transport 8: IMAP session does not support IDLE, going to fake idle."
2026-10-17T15:56:22.944Z	core/event            	INFO	""	1	"src/imap/idle.rs:132: IMAP-fake-IDLEing folder=\"INBOX\""
2026-10-17T15:56:22.944Z	core/event            	INFO	""	1	"src/scheduler.rs:664: SMTP fake idle started."
2026-10-17T15:56:22.944Z	core/event            	INFO	""	1	"src/scheduler.rs:706: SMTP has no messages to retry, waiting for interrupt."
2026-10-17T15:56:22.986Z	core/event            	INFO	""	1	"src/quota.rs:88: Transport 2: Updating quota."
2026-10-17T15:56:23.040Z	core/event            	INFO	""	1	"src/quota.rs:106: Transport 2: Updated quota."
2026-10-17T15:56:23.041Z	core/event            	INFO	""	1	"src/imap.rs:524: fetch_new_msg_batch(INBOX): UIDVALIDITY=1792240308, UIDNEXT=45."
2026-10-17T15:56:23.093Z	core/event            	INFO	""	1	"src/imap.rs:711: 0 mails read from \"INBOX\"."
2026-10-17T15:56:23.093Z	core/event            	INFO	""	1	"src/imap.rs:720: available_post_msgs: 0, download_later: 0."
2026-10-17T15:56:23.145Z	core/event            	INFO	""	1	"src/imap/idle.rs:73: Transport 2: IDLE entering wait-on-remote state in folder \"INBOX\"."
2026-10-17T15:56:30.875Z	core/event            	INFO	""	1	"src/ephemeral.rs:609: Ephemeral loop waiting for deletion in 24h 0m 0s or interrupt"
2026-10-17T15:56:30.889Z	core/event            	INFO	""	1	"src/scheduler.rs:717: SMTP fake idle interrupted."
2026-10-17T15:56:30.889Z	core/event            	INFO	""	1	"src/smtp.rs:637: Selected rows from SMTP queue: [28]."
2026-10-17T15:56:30.889Z	core/event            	INFO	""	1	"src/smtp.rs:110: Trying to connect to transport 8."
2026-10-17T15:56:30.889Z	core/event            	INFO	""	1	"src/smtp.rs:160: SMTP trying to connect to smtp.yandex.ru:465:tls."
2026-10-17T15:56:30.889Z	core/event            	INFO	""	1	"src/net/dns.rs:134: Using memory-cached DNS resolution for smtp.yandex.ru."
2026-10-17T15:56:30.890Z	core/event            	INFO	""	1	"src/net/dns.rs:180: Resolved smtp.yandex.ru into 77.88.21.158."
2026-10-17T15:56:30.890Z	core/event            	INFO	""	1	"src/smtp/connect.rs:87: Attempting SMTP connection to smtp.yandex.ru (77.88.21.158:465)."
2026-10-17T15:56:31.014Z	core/event            	INFO	""	1	"src/smtp.rs:482: Try number 1 to send message Msg#66 (entry 28) over SMTP."
2026-10-17T15:56:32.824Z	core/event            	INFO	""	1	"src/smtp.rs:227: SMTP failed to send: Permanent(Response { code: Code { severity: PermanentNegativeCompletion, category: MailSystem, detail: Four }, message: [\"5.7.1 Message rejected under suspicion of SPAM; https://ya.cc/1IrBc 1792252592-UuZhKnAdR4Y0-tQfu2f3r\"] })."
2026-10-17T15:56:32.824Z	core/event            	INFO	""	1	"src/smtp.rs:260: Permanent error, message sending failed."
2026-10-17T15:56:32.824Z	core/event            	INFO	""	1	"src/smtp.rs:303: Failed to send message over SMTP, disconnecting."
2026-10-17T15:56:32.826Z	core/event            	WARNING	""	1	"src/message.rs:1983: Msg#66 failed: Permanent SMTP error: permanent: 5.7.1 Message rejected under suspicion of SPAM; https://ya.cc/1IrBc 1792252592-UuZhKnAdR4Y0-tQfu2f3r"
2026-10-17T15:56:32.826Z	core/event            	WARNING	""	1	"src/scheduler.rs:642: send_smtp_messages failed: Failed to send message: Permanent SMTP error: permanent: 5.7.1 Message rejected under suspicion of SPAM; https://ya.cc/1IrBc 1792252592-UuZhKnAdR4Y0-tQfu2f3r."
2026-10-17T15:56:32.826Z	core/event            	INFO	""	1	"src/scheduler.rs:664: SMTP fake idle started."
2026-10-17T15:56:32.826Z	core/event            	INFO	""	1	"src/scheduler.rs:676: SMTP has messages to retry, planning to retry 30 seconds later."
2026-10-17T15:56:37.937Z	core/event            	WARNING	""	1	"src/scheduler.rs:456: Transport 1: Failed inbox fetch_idle: idle: INBOX: IMAP IDLE protocol timed out: deadline has elapsed."
2026-10-17T15:56:37.937Z	core/event            	INFO	""	1	"src/scheduler.rs:433: Transport 1: Preparing new IMAP session for inbox."
2026-10-17T15:56:37.937Z	core/event            	INFO	""	1	"src/imap.rs:291: Connecting to IMAP server."
2026-10-17T15:56:37.939Z	core/event            	INFO	""	1	"src/imap.rs:307: IMAP trying to connect to toque.im:993:tls."
2026-10-17T15:56:37.939Z	core/event            	INFO	""	1	"src/net/dns.rs:134: Using memory-cached DNS resolution for toque.im."
2026-10-17T15:56:37.939Z	core/event            	INFO	""	1	"src/net/dns.rs:180: Resolved toque.im into 172.105.104.182."
2026-10-17T15:56:37.939Z	core/event            	INFO	""	1	"src/imap/client.rs:131: Attempting IMAP connection to toque.im (172.105.104.182:993)."
2026-10-17T15:56:38.239Z	core/event            	INFO	""	1	"src/imap/client.rs:131: Attempting IMAP connection to toque.im ([2600:3c04::2000:ceff:fe7e:b725]:993)."
2026-10-17T15:56:38.324Z	core/event            	INFO	""	1	"src/imap.rs:332: Logging into IMAP server with LOGIN."
2026-10-17T15:56:38.604Z	core/event            	INFO	""	1	"src/imap.rs:394: Successfully logged into IMAP server."
2026-10-17T15:56:38.604Z	core/event            	INFO	""	1	"src/scheduler.rs:446: Transport 1: Prepared new IMAP session for inbox."
2026-10-17T15:56:38.604Z	core/event            	INFO	""	1	"src/quota.rs:88: Transport 1: Updating quota."
2026-10-17T15:56:38.731Z	core/event            	INFO	""	1	"src/quota.rs:106: Transport 1: Updated quota."
2026-10-17T15:56:38.859Z	core/event            	INFO	""	1	"src/imap/select_folder.rs:78: Transport 1: Selected folder \"INBOX\"."
2026-10-17T15:56:38.860Z	core/event            	INFO	""	1	"src/imap.rs:488: Transport 1: No new emails in folder \"INBOX\"."
Dominant language
Rust
Stars
937
Forks
150
Avg merge
1d 14h
Merged PRs (30d)
79

Getting set up

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.

More from chatmail/core

All issues in chatmail/core

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.