UTL_SMTP открытые соединения занимают слишком много времени - PullRequest
0 голосов
/ 18 февраля 2019

Недавно мы обновили базу данных oracle до 12c.

У меня возникла проблема с отправкой почты через utl_smtp.

Наша процедура отправки почты

, поэтому UTL_SMTP.open_connection(p_smtp_host, p_smtp_port)занимает 20 секунд, чтобы открыть соединение.Раньше все работало нормально.

Любое решение?

CREATE OR REPLACE PROCEDURE send_mail_xyz 
    (p_to        IN VARCHAR2,
     p_from      IN VARCHAR2,
     p_message   IN VARCHAR2,
     p_smtp_host IN VARCHAR2,
     p_smtp_port IN NUMBER DEFAULT 25)
AS
    l_mail_conn   UTL_SMTP.connection;
BEGIN
    dbms_output.put_line('9.1'||sysdate);
    l_mail_conn := UTL_SMTP.open_connection(p_smtp_host, p_smtp_port);
    dbms_output.put_line('9.2'||sysdate);
    UTL_SMTP.helo(l_mail_conn, p_smtp_host);
    UTL_SMTP.mail(l_mail_conn, p_from);
    UTL_SMTP.rcpt(l_mail_conn, p_to);
    UTL_SMTP.data(l_mail_conn, p_message || UTL_TCP.crlf || UTL_TCP.crlf);
    UTL_SMTP.quit(l_mail_conn);
END;
/

При отправке почты через send_mail_xyz

и вывод

анонимный блок завершен
9.118-02-2019 12: 11: 25
9.218-02-2019 12: 31: 25

...