当我尝试使用 oracles UTL_SMTP 包向自己发送电子邮件时,我从 UTL_SMTP.MAIL 过程中收到传输超时错误 (ORA-29276),但仅当发件人变量使用landmail.com 域时。其他地址可以正常工作,例如 fake@email.com - 但无论@landmail.com 不能。
我已经尝试重新输入它以确保没有奇怪的隐藏字符或任何东西,但我完全感到困惑,我的 google-fu 什么也没返回。
我们最近从 10g 更新到 11g 可能是相关的。
超时之前的代码非常简单 - 它看起来如下所示,其中检查点 C 从未到达...
PROCEDURE send_email(sender_email_chr IN VARCHAR2
,other_stuff IN WHATEVER)
IS
connection_col UTL_SMTP.CONNECTION;
reply_col UTL_SMTP.REPLY;
BEGIN
reply_col := UTL_SMTP.OPEN_CONNECTION('localhost',25,connection_col,60);
DBMS_OUTPUT.PUT_LINE('Checkpoint A');
reply_col := UTL_SMTP.HELO(connection_col,'localhost');
DBMS_OUTPUT.PUT_LINE('Checkpoint B');
UTL_SMTP.MAIL(connection_col, sender_email_chr);
DBMS_OUTPUT.PUT_LINE('Checkpoint C');
--rest of procedure snipped
END;