This forum has been archived. Please start a new discussion on GitHub.

A question about memory limit in Ice.

When I use a function with an argument marshalling with more then 2M Bytes, memory limit exception happens. Can anybody help me?
I define the Blob type as follows,
sequence<byte> Blob;
In my ice interface VegaDB, a method is defined as follows,
void setBlob(string table, string szColumn, string szWhere, Blob blob);

When I call setBlob with a blob more than 2M Bytes, the memory limit exception happens.
I'm sure the servant implementation of setBlob is right because I just test it.


  • benoit
    benoit Rennes, France
    You need to increase the maximum message size Ice can transfer. You can do this by setting the Ice.MessageSizeMax property (default is 1MB). See the manual for more information on this property.

  • thank u very much.

    Can u tell me how many connections does the Servant Program support in default?

    I've found that when two clients connect to the server, the application slows down.
  • marc
    marc Florida
    There is no inherent limit for how many connections Ice can support. Whether or not you will get a slow-down with two connections depends on your application. Obviously, if both connections always send large amounts of data for the server to process, then your application will slow down, compared to having just one connection sending large amounts of data. If the connections are mostly idle, then there is no slow-down.