ChugR opened a new pull request #698: DISPATCH-975: Enforce max message size on message ingress URL: https://github.com/apache/qpid-dispatch/pull/698 This commit has an updated implementation for final review. MaxMessageSize may be specified globally, per vhost, or per vhost user group. The global setting applies to all vhosts for which maxMessageSize is unspecified. The vhost setting applies to all vhost user groups for which maxMessageSize is unspecified. The vhost user group setting overrides all other settings. A maxMessageSize setting of zero disables maxMessageSize enforcement. Links over which maxMessageSize is being enforced will advertise the size in the _max-message-size_ field of the Attach frame. Qpid-dispatch ignores the _max-message-size_ field received in incoming Attach frames. Message size for maxMessageSize purposes is calculated to be the number of AMQP octets in the Annotated Message. This includes the header, delivery-annotations, message-annotations, properties, application-properties, application-data, and footer sections. Administrators and users must be aware that a "message" consisting a single character string (the application-data) will be much larger over the wire after properties and annotations have been inserted. Max message size is enforced on message/transfer ingress only. Once a message has entered the router network it is free to go to any destination. When a message exceeds max size then: * Disposition of _rejected_ is returned to the sender for that delivery. * Copies of the message being delivered through the router network are aborted. * Previous versions of this patch closed the sender's ingress link with an error. This ensured that a sender would know that the message did not get through and would clearly know why. However, spontaneous link closures cause a wide variety of serious problems for many clients. Link closure should not be enforced until, at a minimum, qpid-proton clients handle the closure cleanly. Self test includes a four-router linear network with two interior and two edge routers. Tests try oversize messages with a variety of sender and receiver attachment points in that network.
---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org For additional commands, e-mail: dev-h...@qpid.apache.org