gpt4 book ai didi

sql - ORA-29273 : HTTP request failed intermittent error using the utl_http package

转载 作者:行者123 更新时间:2023-12-04 18:08:30 29 4
gpt4 key购买 nike

我正在使用 utl_http 包向与 Oracle 相同的服务器(本地)上的 IIS 站点发出 HTTP GET 请求。有时它可以工作并且我得到了响应,但通常它会挂起大约 15 秒然后我得到这个错误:

ORA-29273: HTTP request failed ORA-06512: at "SYS.UTL_HTTP", line 1722 ORA-29263: HTTP protocol error

作为测试,我在 IIS 站点中有一个小的静态文本文件,所以这就是我测试它的方式:

select utl_http.request('http://domain.com/test.txt') from dual

如果我在 Oracle Apex 中运行它而不是直接在数据库上运行,我会遇到同样的问题。

我尝试过的另一件事是创建一个我自己的包,它使用长 utl_htp.begin_request() 方法而不是 utl_http.request( ) 快捷方式。这给出了完全相同的问题(有时有效但大部分错误 - 同样的错误)。

我看到的模式是,如果我等待一段时间然后尝试,它在前 2-10 次有效,然后开始出错。当它正常工作时,我会立即得到响应,当它出错时,在出错之前总是有延迟。

如果我使用远程网络浏览器请求文本文件 URL(或站点中的任何其他资源),那么我每次都会得到正确的响应。

我试过像下面这样设置超时,但没有任何效果。例如,不是在 3 秒后超时,而是在显示错误之前持续 10 或 15 秒。

UTL_HTTP.set_transfer_timeout(3);

我想我可以排除 ACL,因为它有时会起作用。

有谁知道可能导致这种行为的原因是什么?

最佳答案

可能的原因

-> 您的 TNS-Listener 可能有问题。

从命令提示符窗口中,尝试运行 TNSPING service_name ..尝试快速运行几次并检查是否在其中一些失败。

我曾经遇到过类似的问题。尝试重新配置您的 TNS-Listener。

还必须有一个选项,您可以在其中在 TNS 监听器定义中提供 IP 号。这有时也解决了这类问题。

-> IIS 问题。

关于sql - ORA-29273 : HTTP request failed intermittent error using the utl_http package,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20271592/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com