无法将大型 Oracle AQ 消息排入队列

发布于 2025-01-03 09:57:38 字数 439 浏览 1 评论 0原文

我正在尝试从 .NET 客户端将消息Enqueue到 Oracle 队列中。如果消息超过一定大小,则会出现以下错误:

ORA-01013: 用户请求取消当前操作

XMLTYPEraw 作为队列表的消息类型时,会发生这种情况。

看起来消息的大小是罪魁祸首,但不能确定是 Oracle 错误消息有限的原因。

大小有限制吗?我可以增加大小吗?或者有其他方法可以解决这个问题吗?

更新:

  • 我可以使用dbms_aq.enqueue(...)直接发送消息,
  • 从.NET客户端设置超时没有任何效果。 (无论超时值如何,都会立即超时)

I am trying to Enqueue a message onto an Oracle Queue from a .NET client. If the message exceeds a certain size, the following error occurs:

ORA-01013: user requested cancel of current operation

This happens with both XMLTYPE and raw as the queue table's message type.

It seems that the size of the message is to blame but cannot tell for sure be cause of the limited Oracle error message.

Is there a limit on the size, can I increase the size or is there another way to overcome this issue?

Update:

  • I am able to send the message directly with dbms_aq.enqueue(...)
  • Setting the timeout from the .NET client does not have any effect. (It times out immediately regardless of the timeout value)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

很酷又爱笑 2025-01-10 09:57:38

这听起来像是 .net 客户端的连接超时。尝试增加超时时间。如果这不起作用,请通过 dbms_aq.enqueue(...) 直接插入消息来检查问题是否与消息负载有关。如果您能够插入,那么消息本身就很好。

This sounds like a connection timeout from the .net client. Try increasing the timeout. If that doesn't work, check if the issue is with the message payload by inserting the message directly through dbms_aq.enqueue(...). If you are able insert, then the message itself is fine.

临风闻羌笛 2025-01-10 09:57:38

11.2.0.3 修复了一些与大小相关的问题。请在此处查看此非权威列表:

http://www.eygle.com/Notes/11.2 .0.3.html

一些示例:

9878459  Specific length object binds over 4k may be bound as NULL
10389881 Raw buffered message payload > 8k corrupted when dequeued 
         from a buffered queue

也许您的问题在此列表中?

There are a couple of size-related issues being fixed for 11.2.0.3. See this non-authoritative list here:

http://www.eygle.com/Notes/11.2.0.3.html

Some examples:

9878459  Specific length object binds over 4k may be bound as NULL
10389881 Raw buffered message payload > 8k corrupted when dequeued 
         from a buffered queue

Maybe, your issue is in this list?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文