2013-04-10 24 views
1

當我嘗試使用聖言電子郵件myself UTL_SMTP包,我正在從UTL_SMTP.MAIL程序傳輸超時錯誤(ORA-29276),但只有當發送者變量使用landmail.com域名。其他地址正常工作,如[email protected] - 但[email protected]不正確。傳輸暫停時以特定發件人域

我已經試過重新鍵入,以確保沒有任何奇怪的隱藏字符或aything,但我完全否則難住了,我的谷歌福沒有返回。

這可能是相關的,我們最近從10G更新到11g。

超時之前的代碼是非常直接的 - 它看起來像以下,其中從未達到關卡ç...

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; 

回答

1

嗯真奇怪。我認爲這與Oracle無關,但與本地SMTP(sendmail,postfix)配置(或DNS設置)無關。您的本地SMTP可能會在接收時嘗試驗證電子郵件。

嘗試做從Unix命令行相同。或者直接使用「telnet localhost 25」,你會看到多長時間,直到電子郵件將被SMTP接受。

+0

對於遲到的接受,似乎你是正確的,這與甲骨文沒有關係。我們的客戶將它固定在事物的邊上 - 沒有得到完整的概要,但它可能與垃圾郵件過濾器有關。 – Numeron 2013-04-30 05:46:10