ORB breaks when going remote with large messages

View: New views
5 Messages — Rating Filter:   Alert me  

ORB breaks when going remote with large messages

by Yves Willems :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Some parts of this message have been removed. Learn more about Nabble's security policy.

Hi all,

 

 

I have an orbit2 client-server app that transfers large objects (images) from server to client app. This works perfect when I run both server and client on the same machine. When I go remote (running the client on a different machine) some calls fail. I have the feeling that it is message size related.

Eg. transferring a grey image of 129600 bytes works OK, Sending the same image in color (3x129600) doesn’t work.

Is there a maximum size that orbit can transfer remotely?

I have set the ORBInitialMsgLimit parameter to 1000000.

 

 

Thanks in advance

 

Yves

 


_______________________________________________
orbit-list mailing list
orbit-list@...
http://mail.gnome.org/mailman/listinfo/orbit-list

Re: ORB breaks when going remote with large messages

by Jules Colding :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On 01/04/2008, at 17.27, Yves Willems wrote:

> Hi all,
>
>
> I have an orbit2 client-server app that transfers large objects  
> (images) from server to client app. This works perfect when I run  
> both server and client on the same machine. When I go remote  
> (running the client on a different machine) some calls fail. I have  
> the feeling that it is message size related.
> Eg. transferring a grey image of 129600 bytes works OK, Sending the  
> same image in color (3x129600) doesn’t work.
> Is there a maximum size that orbit can transfer remotely?
> I have set the ORBInitialMsgLimit parameter to 1000000.

You can use ORBit_get_giop_recv_limit() to retrieve the maximum  
allowed GIOP receive limit. Anything bigger than that must be  
transferred in chunks. Beware that the limit is the total GIOP message  
size. The actual data size is somewhat smaller.

HTH,
   jules

_______________________________________________
orbit-list mailing list
orbit-list@...
http://mail.gnome.org/mailman/listinfo/orbit-list

RE: ORB breaks when going remote with large messages

by Yves Willems :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Jules,
It looks that my orbit version doesn't support this.
I'm running on SuSe SLED 10 with orbit 2.12.4-17.6.
I found out that this feature is only supported from 2.14 on.

The example implementation that was included with the release note uses a
raw octet sequence type. I suppose that any type can be used with this
mechanism and that the programmer is responsible for flow control when
getting the various chuncks, both on server side as on client side.
Correct?

PS: the ORBNetID=ipaddr init parameter has no effect on my application. Is
that also not yet supported on the 2.12 version?

Thanks a lot


Yves


-----Original Message-----
From: Jules Colding [mailto:colding@...]
Sent: woensdag 2 april 2008 9:13
To: ywillems@...
Cc: orbit-list@...
Subject: Re: ORB breaks when going remote with large messages


On 01/04/2008, at 17.27, Yves Willems wrote:

> Hi all,
>
>
> I have an orbit2 client-server app that transfers large objects  
> (images) from server to client app. This works perfect when I run  
> both server and client on the same machine. When I go remote  
> (running the client on a different machine) some calls fail. I have  
> the feeling that it is message size related.
> Eg. transferring a grey image of 129600 bytes works OK, Sending the  
> same image in color (3x129600) doesn't work.
> Is there a maximum size that orbit can transfer remotely?
> I have set the ORBInitialMsgLimit parameter to 1000000.

You can use ORBit_get_giop_recv_limit() to retrieve the maximum  
allowed GIOP receive limit. Anything bigger than that must be  
transferred in chunks. Beware that the limit is the total GIOP message  
size. The actual data size is somewhat smaller.

HTH,
   jules



_______________________________________________
orbit-list mailing list
orbit-list@...
http://mail.gnome.org/mailman/listinfo/orbit-list

Re: ORB breaks when going remote with large messages

by Jules Colding :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Yves,

On 02/04/2008, at 10.32, Yves Willems wrote:
> Jules,
> It looks that my orbit version doesn't support this.
> I'm running on SuSe SLED 10 with orbit 2.12.4-17.6.
> I found out that this feature is only supported from 2.14 on.

Yes, but it is easy to install ORBit2 to, say,  ~/opt.


> The example implementation that was included with the release note  
> uses a
> raw octet sequence type. I suppose that any type can be used with this
> mechanism and that the programmer is responsible for flow control when
> getting the various chuncks, both on server side as on client side.
> Correct?

Yes.

The limit only impact the size of received GIOP data. This means that  
the client must tell the server not to send more than a little less  
than the GIOP receive limit. So the server must support this request  
(usually by a method parameter defined in the IDL) and the client must  
be clever enough to handle such streaming.


> PS: the ORBNetID=ipaddr init parameter has no effect on my  
> application. Is
> that also not yet supported on the 2.12 version?

No. You must use 2.14.10 or later.

HTH,
   jules


> -----Original Message-----
> From: Jules Colding [mailto:colding@...]
> Sent: woensdag 2 april 2008 9:13
> To: ywillems@...
> Cc: orbit-list@...
> Subject: Re: ORB breaks when going remote with large messages
>
>
> On 01/04/2008, at 17.27, Yves Willems wrote:
>> Hi all,
>>
>>
>> I have an orbit2 client-server app that transfers large objects
>> (images) from server to client app. This works perfect when I run
>> both server and client on the same machine. When I go remote
>> (running the client on a different machine) some calls fail. I have
>> the feeling that it is message size related.
>> Eg. transferring a grey image of 129600 bytes works OK, Sending the
>> same image in color (3x129600) doesn't work.
>> Is there a maximum size that orbit can transfer remotely?
>> I have set the ORBInitialMsgLimit parameter to 1000000.
>
> You can use ORBit_get_giop_recv_limit() to retrieve the maximum
> allowed GIOP receive limit. Anything bigger than that must be
> transferred in chunks. Beware that the limit is the total GIOP message
> size. The actual data size is somewhat smaller.
>
> HTH,
>   jules
>
>
>

_______________________________________________
orbit-list mailing list
orbit-list@...
http://mail.gnome.org/mailman/listinfo/orbit-list

Re: ORB breaks when going remote with large messages

by Michael Haubenwallner :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

(had the same problem here, and ORBInitialMsgLimit was the right pointer
- thank you!)

On Wed, 2008-04-02 at 13:40 +0200, Jules Colding wrote:
> Hi Yves,
>
> On 02/04/2008, at 10.32, Yves Willems wrote:
<snip>

>
> > The example implementation that was included with the release note  
> > uses a
> > raw octet sequence type. I suppose that any type can be used with this
> > mechanism and that the programmer is responsible for flow control when
> > getting the various chuncks, both on server side as on client side.
> > Correct?
>
> Yes.
>
> The limit only impact the size of received GIOP data. This means that  
> the client must tell the server not to send more than a little less  
> than the GIOP receive limit. So the server must support this request  
> (usually by a method parameter defined in the IDL) and the client must  
> be clever enough to handle such streaming.

Given this solution, now I want (need) to calculate the largest possible
sequence size for a specific interface-method (using sequences of some
structs) to fit with "ORBInitialMsgLimit". How would one do this ?

Or is there a way to calculate the size of the subsequent GIOP message
for a given interface-method with given data (including sequence size) ?

Btw: Why is this called "initial" msg-limit ?
This name suggests some possibility to have some "current" msg-limit,
which could be modified....

Thanks!

/haubi/

>
>
> > PS: the ORBNetID=ipaddr init parameter has no effect on my  
> > application. Is
> > that also not yet supported on the 2.12 version?
>
> No. You must use 2.14.10 or later.
>
> HTH,
>    jules
>
>
> > -----Original Message-----
> > From: Jules Colding [mailto:colding@...]
> > Sent: woensdag 2 april 2008 9:13
> > To: ywillems@...
> > Cc: orbit-list@...
> > Subject: Re: ORB breaks when going remote with large messages
> >
> >
> > On 01/04/2008, at 17.27, Yves Willems wrote:
> >> Hi all,
> >>
> >>
> >> I have an orbit2 client-server app that transfers large objects
> >> (images) from server to client app. This works perfect when I run
> >> both server and client on the same machine. When I go remote
> >> (running the client on a different machine) some calls fail. I have
> >> the feeling that it is message size related.
> >> Eg. transferring a grey image of 129600 bytes works OK, Sending the
> >> same image in color (3x129600) doesn't work.
> >> Is there a maximum size that orbit can transfer remotely?
> >> I have set the ORBInitialMsgLimit parameter to 1000000.
> >
> > You can use ORBit_get_giop_recv_limit() to retrieve the maximum
> > allowed GIOP receive limit. Anything bigger than that must be
> > transferred in chunks. Beware that the limit is the total GIOP message
> > size. The actual data size is somewhat smaller.
> >
> > HTH,
> >   jules
> >
> >
> >
>
> _______________________________________________
> orbit-list mailing list
> orbit-list@...
> http://mail.gnome.org/mailman/listinfo/orbit-list

_______________________________________________
orbit-list mailing list
orbit-list@...
http://mail.gnome.org/mailman/listinfo/orbit-list