Download Reference Manual
The Developer's Library for D
About Wiki Forums Source Search Contact

Ticket #1756 (closed defect: fixed)

Opened 11 years ago

Last modified 11 years ago

Tango ClusterQueue Message Size > 2048

Reported by: tomni Assigned to: kris
Priority: major Milestone: 0.99.9
Component: Tango Version: 0.99.8 Sean
Keywords: Cc:

Description

If you try to send messages larger than 2048 bytes the QueueClient? always throws a "tango.net.cluster.NetworkClient??.ClusterEmptyException??: No appropriate cluster nodes are available" on the client side.

The problem is related to the ProtocolWriter? which deals with the wrong buffer size retrieved by getContent method. If the buffer grows in case the message doesn't fits into the default buffer of 2048 bytes the messages gets corrupted while trying to write the overall message size into the first two bytes. Just see the attached patch on how to fix the issue. Not much of a big deal.

See the related post in the forum to reproduce the problem!

By calling buffer.getContent after header and message where written to the buffer we get the correct size to jump back to the beginning of the buffer in order to write the overall message size into the first two bytes.

Attachments

patch.txt (1.0 kB) - added by tomni on 10/06/09 12:32:13.

Change History

10/06/09 12:32:13 changed by tomni

  • attachment patch.txt added.

11/09/09 09:34:39 changed by kris

  • status changed from new to closed.
  • resolution set to fixed.

fixed, and thanks!

11/10/09 19:21:13 changed by tomni

fixed? where?