Sending email fails due to 501 Syntax: HELO hostname error - Bitbucket Data Center

Platform Notice: Data Center Only - This article only applies to Atlassian products on the Data Center platform.

Note that this KB was created for the Data Center version of the product. Data Center KBs for non-Data-Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Except Fisheye and Crucible

Summary

The following error is logged in Bitbucket Server logs:

2012-05-04 14:18:16,863 ERROR [FE-WatchChecker] fisheye.mail com.cenqua.fisheye.mail.Mailer-sendMessage - problem sending email javax.mail.MessagingException: 501 Syntax: HELO hostname at com.sun.mail.smtp.SMTPTransport.issueCommand(SMTPTransport.java:1363) at com.sun.mail.smtp.SMTPTransport.helo(SMTPTransport.java:838) at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:375) at javax.mail.Service.connect(Service.java:275) at javax.mail.Service.connect(Service.java:156) at javax.mail.Service.connect(Service.java:105) at javax.mail.Transport.send0(Transport.java:168) at javax.mail.Transport.send(Transport.java:98) at com.cenqua.fisheye.mail.Mailer.send(Mailer.java:217) at com.cenqua.fisheye.mail.Mailer.sendMessage(Mailer.java:193) at com.cenqua.fisheye.web.DefaultWatchManager.sendWatchEmail(DefaultWatchManager.java:690) at com.cenqua.fisheye.web.DefaultWatchManager.sendEmailForChangesets(DefaultWatchManager.java:611) at com.cenqua.fisheye.web.DefaultWatchManager.access$400(DefaultWatchManager.java:63) at com.cenqua.fisheye.web.DefaultWatchManager$WatchChecker.checkWatchesForRep(DefaultWatchManager.java:279) at com.cenqua.fisheye.web.DefaultWatchManager$WatchChecker.checkWatchesForRep(DefaultWatchManager.java:211) at com.cenqua.fisheye.web.DefaultWatchManager$WatchChecker.run(DefaultWatchManager.java:184) at java.lang.Thread.run(Thread.java:662)

Diagnosis

N/A

Cause

Server's hostname is not defined, so Fisheye sends the server's IP address instead of the hostname.

Solution

Edit /etc/hosts file adding an entry to convert your computer's IP to its hostname.

Updated on June 30, 2025

Still need help?

The Atlassian Community is here for you.