You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@qpid.apache.org by "Dr. Frank Heuschen" <fr...@oraise.com> on 2014/10/08 11:44:39 UTC

proton-j 0.7 with SSL throws Exception at large messages

Hi,

 

I am developing an application that acts as an AMQP Client, using an SSL
connection on a topic. The messages received on this topic are quite large
and for each message I catch the following Exception:

 

java.nio.BufferOverflowException

        at java.nio.HeapByteBuffer.put(Unknown Source)

        at
org.apache.qpid.proton.engine.impl.ssl.SimpleSslTransportWrapper.unwrapInput
(SimpleSslTransportWrapper.java:128)

        at
org.apache.qpid.proton.engine.impl.ssl.SimpleSslTransportWrapper.process(Sim
pleSslTransportWrapper.java:344)

        at
org.apache.qpid.proton.engine.impl.ssl.SslImpl$UnsecureClientAwareTransportW
rapper.process(SslImpl.java:132)

        at
org.apache.qpid.proton.engine.impl.TransportImpl.process(TransportImpl.java:
1265)

        at
org.apache.qpid.proton.driver.impl.ConnectorImpl.read(ConnectorImpl.java:136
)

        at
org.apache.qpid.proton.driver.impl.ConnectorImpl.process(ConnectorImpl.java:
95)

        at
org.apache.qpid.proton.messenger.impl.MessengerImpl.processActive(MessengerI
mpl.java:743)

        at
org.apache.qpid.proton.messenger.impl.MessengerImpl.waitUntil(MessengerImpl.
java:895)

        at
org.apache.qpid.proton.messenger.impl.MessengerImpl.waitUntil(MessengerImpl.
java:853)

        at
org.apache.qpid.proton.messenger.impl.MessengerImpl.recv(MessengerImpl.java:
451)

        at
org.apache.qpid.proton.messenger.impl.MessengerImpl.recv(MessengerImpl.java:
456)

        at com.oraise.Receiver.run(Receiver.java:30)

 

If I run the same application with an external SSL Proxy, the messages are
interpreted by proton-j without problem. Is there a (configurable) threshold
for message sizes in the SSL implementation? I understand that the Java7
implementation of SSLEngine provides a int getApplicationBufferSize()
method, but where is this value determined in the first place?

 

Thanks and kind regards

Frank Heuschen

 

Dr. Frank Heuschen
-- 
oraise GmbH
Walther-von-Cronberg-Platz 6
60594 Frankfurt am Main
Tel.: +49 69 981 955-361
Mob.: +49 172 6945821
E-Mail:  <ma...@oraise.com> frank.heuschen@oraise.com

Firmensitz: Haferwende 10 a, 28357 Bremen
Registergericht: AG Bremen HRB 17491
Geschäftsführer: Markus Hengstenberg

oraise Beteiligungs- und Verwaltungs GmbH & Co. KG
Firmensitz: Haferwende 10 a, 28357 Bremen
Registergericht: AG Bremen HRA 24070
Geschäftsführer: Markus Hengstenberg

 


AW: proton-j 0.7 with SSL throws Exception at large messages

Posted by "Dr. Frank Heuschen" <fr...@oraise.com>.
Hi Robbie,

Thanks a lot for that hint. I changed the factory related code and will test now the original fix ...

Kind regards
Frank

-----Ursprüngliche Nachricht-----
Von: Robbie Gemmell [mailto:robbie.gemmell@gmail.com] 
Gesendet: Freitag, 17. Oktober 2014 12:06
An: users@qpid.apache.org
Betreff: Re: proton-j 0.7 with SSL throws Exception at large messages

I believe it changed to:

org.apache.qpid.proton.message.Message.Factory.create()
 or
org.apache.qpid.proton.Proton.message()

Robbie

On 17 October 2014 10:03, Dr. Frank Heuschen <fr...@oraise.com>
wrote:

> Hi Rafael,
>
> I cloned the latest (?) sources from 
> git://git.apache.org/qpid-proton.git
> in order to test your fix.
>
> In the proton-j package I am missing however the following:
>
> import org.apache.qpid.proton.message.MessageFactory;
> import org.apache.qpid.proton.message.impl.MessageFactoryImpl;
>
> Did I download the right sources at the right place? Or did the method 
> to create Messages change?
>
> Thanks a lot and
> Kind regards
> Frank
>
> -----Ursprüngliche Nachricht-----
> Von: Rafael Schloming [mailto:rhs@alum.mit.edu]
> Gesendet: Mittwoch, 15. Oktober 2014 14:49
> An: users@qpid.apache.org
> Cc: Christian Wesp
> Betreff: Re: proton-j 0.7 with SSL throws Exception at large messages
>
> Hi,
>
> I think it's actually a bug that we are overflowing that buffer 
> regardless of its size. I've filed a jira for this (
> https://issues.apache.org/jira/browse/PROTON-714) and committed what I 
> believe is a fix for this. Would it be possibly for you to check 
> whether this does in fact solve the problem for you?
>
> --Rafael
>
> On Thu, Oct 9, 2014 at 8:05 AM, Dr. Frank Heuschen < 
> frank.heuschen@oraise.com> wrote:
>
> > Hi,
> >
> > in the meanwhile I was able to debug and analyse and found out that 
> > the server is splitting very large messages into chunks of 8192 Bytes.
> > The underlyingInput Buffer is however of the size of inputBuffer 
> > defined in FrameParser, that is 4096. After modifying the respective 
> > line in FrameParserConstructor to "_inputBuffer = 
> > newWriteableBuffer(8*1024);" The large chunks can be properly SSL
> unwrapped.
> >
> > Is it safe for the rest of use cases to alter this value?
> > Would the developer team consider to make this "chunk size" 
> > something configurable for the messenger implementation?
> >
> > Thanks and bests
> > Frank
> >
> > -----Ursprüngliche Nachricht-----
> > Von: Dr. Frank Heuschen [mailto:frank.heuschen@oraise.com]
> > Gesendet: Mittwoch, 8. Oktober 2014 11:45
> > An: users@qpid.apache.org
> > Cc: Christian Wesp
> > Betreff: proton-j 0.7 with SSL throws Exception at large messages
> >
> > Hi,
> >
> >
> >
> > I am developing an application that acts as an AMQP Client, using an 
> > SSL connection on a topic. The messages received on this topic are 
> > quite large and for each message I catch the following Exception:
> >
> >
> >
> > java.nio.BufferOverflowException
> >
> >         at java.nio.HeapByteBuffer.put(Unknown Source)
> >
> >         at
> >
> > org.apache.qpid.proton.engine.impl.ssl.SimpleSslTransportWrapper.unw
> > ra
> > pInput
> > (SimpleSslTransportWrapper.java:128)
> >
> >         at
> >
> > org.apache.qpid.proton.engine.impl.ssl.SimpleSslTransportWrapper.pro
> > ce
> > ss(Sim
> > pleSslTransportWrapper.java:344)
> >
> >         at
> >
> > org.apache.qpid.proton.engine.impl.ssl.SslImpl$UnsecureClientAwareTr
> > an
> > sportW
> > rapper.process(SslImpl.java:132)
> >
> >         at
> >
> >
> org.apache.qpid.proton.engine.impl.TransportImpl.process(TransportImpl.java:
> > 1265)
> >
> >         at
> >
> > org.apache.qpid.proton.driver.impl.ConnectorImpl.read(ConnectorImpl.
> > ja
> > va:136
> > )
> >
> >         at
> >
> >
> org.apache.qpid.proton.driver.impl.ConnectorImpl.process(ConnectorImpl.java:
> > 95)
> >
> >         at
> >
> > org.apache.qpid.proton.messenger.impl.MessengerImpl.processActive(Me
> > ss
> > engerI
> > mpl.java:743)
> >
> >         at
> >
> >
> org.apache.qpid.proton.messenger.impl.MessengerImpl.waitUntil(MessengerImpl.
> > java:895)
> >
> >         at
> >
> >
> org.apache.qpid.proton.messenger.impl.MessengerImpl.waitUntil(MessengerImpl.
> > java:853)
> >
> >         at
> >
> >
> org.apache.qpid.proton.messenger.impl.MessengerImpl.recv(MessengerImpl.java:
> > 451)
> >
> >         at
> >
> >
> org.apache.qpid.proton.messenger.impl.MessengerImpl.recv(MessengerImpl.java:
> > 456)
> >
> >         at com.oraise.Receiver.run(Receiver.java:30)
> >
> >
> >
> > If I run the same application with an external SSL Proxy, the 
> > messages are interpreted by proton-j without problem. Is there a 
> > (configurable) threshold for message sizes in the SSL 
> > implementation? I understand that the Java7 implementation of 
> > SSLEngine provides a int
> > getApplicationBufferSize() method, but where is this value 
> > determined in the first place?
> >
> >
> >
> > Thanks and kind regards
> >
> > Frank Heuschen
> >
> >
> >
> > Dr. Frank Heuschen
> > --
> > oraise GmbH
> > Walther-von-Cronberg-Platz 6
> > 60594 Frankfurt am Main
> > Tel.: +49 69 981 955-361
> > Mob.: +49 172 6945821
> > E-Mail:  <ma...@oraise.com> 
> > frank.heuschen@oraise.com
> >
> > Firmensitz: Haferwende 10 a, 28357 Bremen
> > Registergericht: AG Bremen HRB 17491
> > Geschäftsführer: Markus Hengstenberg
> >
> > oraise Beteiligungs- und Verwaltungs GmbH & Co. KG
> > Firmensitz: Haferwende 10 a, 28357 Bremen
> > Registergericht: AG Bremen HRA 24070
> > Geschäftsführer: Markus Hengstenberg
> >
> >
> >
> >
> >
> > --------------------------------------------------------------------
> > - To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org For 
> > additional commands, e-mail: users-help@qpid.apache.org
> >
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org For 
> additional commands, e-mail: users-help@qpid.apache.org
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org


Re: proton-j 0.7 with SSL throws Exception at large messages

Posted by Robbie Gemmell <ro...@gmail.com>.
I believe it changed to:

org.apache.qpid.proton.message.Message.Factory.create()
 or
org.apache.qpid.proton.Proton.message()

Robbie

On 17 October 2014 10:03, Dr. Frank Heuschen <fr...@oraise.com>
wrote:

> Hi Rafael,
>
> I cloned the latest (?) sources from git://git.apache.org/qpid-proton.git
> in order to test your fix.
>
> In the proton-j package I am missing however the following:
>
> import org.apache.qpid.proton.message.MessageFactory;
> import org.apache.qpid.proton.message.impl.MessageFactoryImpl;
>
> Did I download the right sources at the right place? Or did the method to
> create Messages change?
>
> Thanks a lot and
> Kind regards
> Frank
>
> -----Ursprüngliche Nachricht-----
> Von: Rafael Schloming [mailto:rhs@alum.mit.edu]
> Gesendet: Mittwoch, 15. Oktober 2014 14:49
> An: users@qpid.apache.org
> Cc: Christian Wesp
> Betreff: Re: proton-j 0.7 with SSL throws Exception at large messages
>
> Hi,
>
> I think it's actually a bug that we are overflowing that buffer regardless
> of its size. I've filed a jira for this (
> https://issues.apache.org/jira/browse/PROTON-714) and committed what I
> believe is a fix for this. Would it be possibly for you to check whether
> this does in fact solve the problem for you?
>
> --Rafael
>
> On Thu, Oct 9, 2014 at 8:05 AM, Dr. Frank Heuschen <
> frank.heuschen@oraise.com> wrote:
>
> > Hi,
> >
> > in the meanwhile I was able to debug and analyse and found out that
> > the server is splitting very large messages into chunks of 8192 Bytes.
> > The underlyingInput Buffer is however of the size of inputBuffer
> > defined in FrameParser, that is 4096. After modifying the respective
> > line in FrameParserConstructor to "_inputBuffer =
> > newWriteableBuffer(8*1024);" The large chunks can be properly SSL
> unwrapped.
> >
> > Is it safe for the rest of use cases to alter this value?
> > Would the developer team consider to make this "chunk size" something
> > configurable for the messenger implementation?
> >
> > Thanks and bests
> > Frank
> >
> > -----Ursprüngliche Nachricht-----
> > Von: Dr. Frank Heuschen [mailto:frank.heuschen@oraise.com]
> > Gesendet: Mittwoch, 8. Oktober 2014 11:45
> > An: users@qpid.apache.org
> > Cc: Christian Wesp
> > Betreff: proton-j 0.7 with SSL throws Exception at large messages
> >
> > Hi,
> >
> >
> >
> > I am developing an application that acts as an AMQP Client, using an
> > SSL connection on a topic. The messages received on this topic are
> > quite large and for each message I catch the following Exception:
> >
> >
> >
> > java.nio.BufferOverflowException
> >
> >         at java.nio.HeapByteBuffer.put(Unknown Source)
> >
> >         at
> >
> > org.apache.qpid.proton.engine.impl.ssl.SimpleSslTransportWrapper.unwra
> > pInput
> > (SimpleSslTransportWrapper.java:128)
> >
> >         at
> >
> > org.apache.qpid.proton.engine.impl.ssl.SimpleSslTransportWrapper.proce
> > ss(Sim
> > pleSslTransportWrapper.java:344)
> >
> >         at
> >
> > org.apache.qpid.proton.engine.impl.ssl.SslImpl$UnsecureClientAwareTran
> > sportW
> > rapper.process(SslImpl.java:132)
> >
> >         at
> >
> >
> org.apache.qpid.proton.engine.impl.TransportImpl.process(TransportImpl.java:
> > 1265)
> >
> >         at
> >
> > org.apache.qpid.proton.driver.impl.ConnectorImpl.read(ConnectorImpl.ja
> > va:136
> > )
> >
> >         at
> >
> >
> org.apache.qpid.proton.driver.impl.ConnectorImpl.process(ConnectorImpl.java:
> > 95)
> >
> >         at
> >
> > org.apache.qpid.proton.messenger.impl.MessengerImpl.processActive(Mess
> > engerI
> > mpl.java:743)
> >
> >         at
> >
> >
> org.apache.qpid.proton.messenger.impl.MessengerImpl.waitUntil(MessengerImpl.
> > java:895)
> >
> >         at
> >
> >
> org.apache.qpid.proton.messenger.impl.MessengerImpl.waitUntil(MessengerImpl.
> > java:853)
> >
> >         at
> >
> >
> org.apache.qpid.proton.messenger.impl.MessengerImpl.recv(MessengerImpl.java:
> > 451)
> >
> >         at
> >
> >
> org.apache.qpid.proton.messenger.impl.MessengerImpl.recv(MessengerImpl.java:
> > 456)
> >
> >         at com.oraise.Receiver.run(Receiver.java:30)
> >
> >
> >
> > If I run the same application with an external SSL Proxy, the messages
> > are interpreted by proton-j without problem. Is there a (configurable)
> > threshold for message sizes in the SSL implementation? I understand
> > that the Java7 implementation of SSLEngine provides a int
> > getApplicationBufferSize() method, but where is this value determined
> > in the first place?
> >
> >
> >
> > Thanks and kind regards
> >
> > Frank Heuschen
> >
> >
> >
> > Dr. Frank Heuschen
> > --
> > oraise GmbH
> > Walther-von-Cronberg-Platz 6
> > 60594 Frankfurt am Main
> > Tel.: +49 69 981 955-361
> > Mob.: +49 172 6945821
> > E-Mail:  <ma...@oraise.com> frank.heuschen@oraise.com
> >
> > Firmensitz: Haferwende 10 a, 28357 Bremen
> > Registergericht: AG Bremen HRB 17491
> > Geschäftsführer: Markus Hengstenberg
> >
> > oraise Beteiligungs- und Verwaltungs GmbH & Co. KG
> > Firmensitz: Haferwende 10 a, 28357 Bremen
> > Registergericht: AG Bremen HRA 24070
> > Geschäftsführer: Markus Hengstenberg
> >
> >
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org For
> > additional commands, e-mail: users-help@qpid.apache.org
> >
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
> For additional commands, e-mail: users-help@qpid.apache.org
>
>

AW: proton-j 0.7 with SSL throws Exception at large messages

Posted by "Dr. Frank Heuschen" <fr...@oraise.com>.
Hi Rafael,

I cloned the latest (?) sources from git://git.apache.org/qpid-proton.git in order to test your fix.

In the proton-j package I am missing however the following:

import org.apache.qpid.proton.message.MessageFactory;
import org.apache.qpid.proton.message.impl.MessageFactoryImpl;

Did I download the right sources at the right place? Or did the method to create Messages change?

Thanks a lot and
Kind regards
Frank

-----Ursprüngliche Nachricht-----
Von: Rafael Schloming [mailto:rhs@alum.mit.edu] 
Gesendet: Mittwoch, 15. Oktober 2014 14:49
An: users@qpid.apache.org
Cc: Christian Wesp
Betreff: Re: proton-j 0.7 with SSL throws Exception at large messages

Hi,

I think it's actually a bug that we are overflowing that buffer regardless of its size. I've filed a jira for this (
https://issues.apache.org/jira/browse/PROTON-714) and committed what I believe is a fix for this. Would it be possibly for you to check whether this does in fact solve the problem for you?

--Rafael

On Thu, Oct 9, 2014 at 8:05 AM, Dr. Frank Heuschen < frank.heuschen@oraise.com> wrote:

> Hi,
>
> in the meanwhile I was able to debug and analyse and found out that 
> the server is splitting very large messages into chunks of 8192 Bytes. 
> The underlyingInput Buffer is however of the size of inputBuffer 
> defined in FrameParser, that is 4096. After modifying the respective 
> line in FrameParserConstructor to "_inputBuffer = 
> newWriteableBuffer(8*1024);" The large chunks can be properly SSL unwrapped.
>
> Is it safe for the rest of use cases to alter this value?
> Would the developer team consider to make this "chunk size" something 
> configurable for the messenger implementation?
>
> Thanks and bests
> Frank
>
> -----Ursprüngliche Nachricht-----
> Von: Dr. Frank Heuschen [mailto:frank.heuschen@oraise.com]
> Gesendet: Mittwoch, 8. Oktober 2014 11:45
> An: users@qpid.apache.org
> Cc: Christian Wesp
> Betreff: proton-j 0.7 with SSL throws Exception at large messages
>
> Hi,
>
>
>
> I am developing an application that acts as an AMQP Client, using an 
> SSL connection on a topic. The messages received on this topic are 
> quite large and for each message I catch the following Exception:
>
>
>
> java.nio.BufferOverflowException
>
>         at java.nio.HeapByteBuffer.put(Unknown Source)
>
>         at
>
> org.apache.qpid.proton.engine.impl.ssl.SimpleSslTransportWrapper.unwra
> pInput
> (SimpleSslTransportWrapper.java:128)
>
>         at
>
> org.apache.qpid.proton.engine.impl.ssl.SimpleSslTransportWrapper.proce
> ss(Sim
> pleSslTransportWrapper.java:344)
>
>         at
>
> org.apache.qpid.proton.engine.impl.ssl.SslImpl$UnsecureClientAwareTran
> sportW
> rapper.process(SslImpl.java:132)
>
>         at
>
> org.apache.qpid.proton.engine.impl.TransportImpl.process(TransportImpl.java:
> 1265)
>
>         at
>
> org.apache.qpid.proton.driver.impl.ConnectorImpl.read(ConnectorImpl.ja
> va:136
> )
>
>         at
>
> org.apache.qpid.proton.driver.impl.ConnectorImpl.process(ConnectorImpl.java:
> 95)
>
>         at
>
> org.apache.qpid.proton.messenger.impl.MessengerImpl.processActive(Mess
> engerI
> mpl.java:743)
>
>         at
>
> org.apache.qpid.proton.messenger.impl.MessengerImpl.waitUntil(MessengerImpl.
> java:895)
>
>         at
>
> org.apache.qpid.proton.messenger.impl.MessengerImpl.waitUntil(MessengerImpl.
> java:853)
>
>         at
>
> org.apache.qpid.proton.messenger.impl.MessengerImpl.recv(MessengerImpl.java:
> 451)
>
>         at
>
> org.apache.qpid.proton.messenger.impl.MessengerImpl.recv(MessengerImpl.java:
> 456)
>
>         at com.oraise.Receiver.run(Receiver.java:30)
>
>
>
> If I run the same application with an external SSL Proxy, the messages 
> are interpreted by proton-j without problem. Is there a (configurable) 
> threshold for message sizes in the SSL implementation? I understand 
> that the Java7 implementation of SSLEngine provides a int 
> getApplicationBufferSize() method, but where is this value determined 
> in the first place?
>
>
>
> Thanks and kind regards
>
> Frank Heuschen
>
>
>
> Dr. Frank Heuschen
> --
> oraise GmbH
> Walther-von-Cronberg-Platz 6
> 60594 Frankfurt am Main
> Tel.: +49 69 981 955-361
> Mob.: +49 172 6945821
> E-Mail:  <ma...@oraise.com> frank.heuschen@oraise.com
>
> Firmensitz: Haferwende 10 a, 28357 Bremen
> Registergericht: AG Bremen HRB 17491
> Geschäftsführer: Markus Hengstenberg
>
> oraise Beteiligungs- und Verwaltungs GmbH & Co. KG
> Firmensitz: Haferwende 10 a, 28357 Bremen
> Registergericht: AG Bremen HRA 24070
> Geschäftsführer: Markus Hengstenberg
>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org For 
> additional commands, e-mail: users-help@qpid.apache.org
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org


Re: proton-j 0.7 with SSL throws Exception at large messages

Posted by Rafael Schloming <rh...@alum.mit.edu>.
Hi,

I think it's actually a bug that we are overflowing that buffer regardless
of its size. I've filed a jira for this (
https://issues.apache.org/jira/browse/PROTON-714) and committed what I
believe is a fix for this. Would it be possibly for you to check whether
this does in fact solve the problem for you?

--Rafael

On Thu, Oct 9, 2014 at 8:05 AM, Dr. Frank Heuschen <
frank.heuschen@oraise.com> wrote:

> Hi,
>
> in the meanwhile I was able to debug and analyse and found out that the
> server is splitting very large messages into chunks of 8192 Bytes. The
> underlyingInput Buffer is however of the size of inputBuffer defined in
> FrameParser, that is 4096. After modifying the respective line in
> FrameParserConstructor to "_inputBuffer = newWriteableBuffer(8*1024);" The
> large chunks can be properly SSL unwrapped.
>
> Is it safe for the rest of use cases to alter this value?
> Would the developer team consider to make this "chunk size" something
> configurable for the messenger implementation?
>
> Thanks and bests
> Frank
>
> -----Ursprüngliche Nachricht-----
> Von: Dr. Frank Heuschen [mailto:frank.heuschen@oraise.com]
> Gesendet: Mittwoch, 8. Oktober 2014 11:45
> An: users@qpid.apache.org
> Cc: Christian Wesp
> Betreff: proton-j 0.7 with SSL throws Exception at large messages
>
> Hi,
>
>
>
> I am developing an application that acts as an AMQP Client, using an SSL
> connection on a topic. The messages received on this topic are quite large
> and for each message I catch the following Exception:
>
>
>
> java.nio.BufferOverflowException
>
>         at java.nio.HeapByteBuffer.put(Unknown Source)
>
>         at
>
> org.apache.qpid.proton.engine.impl.ssl.SimpleSslTransportWrapper.unwrapInput
> (SimpleSslTransportWrapper.java:128)
>
>         at
>
> org.apache.qpid.proton.engine.impl.ssl.SimpleSslTransportWrapper.process(Sim
> pleSslTransportWrapper.java:344)
>
>         at
>
> org.apache.qpid.proton.engine.impl.ssl.SslImpl$UnsecureClientAwareTransportW
> rapper.process(SslImpl.java:132)
>
>         at
>
> org.apache.qpid.proton.engine.impl.TransportImpl.process(TransportImpl.java:
> 1265)
>
>         at
>
> org.apache.qpid.proton.driver.impl.ConnectorImpl.read(ConnectorImpl.java:136
> )
>
>         at
>
> org.apache.qpid.proton.driver.impl.ConnectorImpl.process(ConnectorImpl.java:
> 95)
>
>         at
>
> org.apache.qpid.proton.messenger.impl.MessengerImpl.processActive(MessengerI
> mpl.java:743)
>
>         at
>
> org.apache.qpid.proton.messenger.impl.MessengerImpl.waitUntil(MessengerImpl.
> java:895)
>
>         at
>
> org.apache.qpid.proton.messenger.impl.MessengerImpl.waitUntil(MessengerImpl.
> java:853)
>
>         at
>
> org.apache.qpid.proton.messenger.impl.MessengerImpl.recv(MessengerImpl.java:
> 451)
>
>         at
>
> org.apache.qpid.proton.messenger.impl.MessengerImpl.recv(MessengerImpl.java:
> 456)
>
>         at com.oraise.Receiver.run(Receiver.java:30)
>
>
>
> If I run the same application with an external SSL Proxy, the messages are
> interpreted by proton-j without problem. Is there a (configurable)
> threshold
> for message sizes in the SSL implementation? I understand that the Java7
> implementation of SSLEngine provides a int getApplicationBufferSize()
> method, but where is this value determined in the first place?
>
>
>
> Thanks and kind regards
>
> Frank Heuschen
>
>
>
> Dr. Frank Heuschen
> --
> oraise GmbH
> Walther-von-Cronberg-Platz 6
> 60594 Frankfurt am Main
> Tel.: +49 69 981 955-361
> Mob.: +49 172 6945821
> E-Mail:  <ma...@oraise.com> frank.heuschen@oraise.com
>
> Firmensitz: Haferwende 10 a, 28357 Bremen
> Registergericht: AG Bremen HRB 17491
> Geschäftsführer: Markus Hengstenberg
>
> oraise Beteiligungs- und Verwaltungs GmbH & Co. KG
> Firmensitz: Haferwende 10 a, 28357 Bremen
> Registergericht: AG Bremen HRA 24070
> Geschäftsführer: Markus Hengstenberg
>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
> For additional commands, e-mail: users-help@qpid.apache.org
>
>

AW: proton-j 0.7 with SSL throws Exception at large messages

Posted by "Dr. Frank Heuschen" <fr...@oraise.com>.
Hi,

in the meanwhile I was able to debug and analyse and found out that the
server is splitting very large messages into chunks of 8192 Bytes. The
underlyingInput Buffer is however of the size of inputBuffer defined in
FrameParser, that is 4096. After modifying the respective line in
FrameParserConstructor to "_inputBuffer = newWriteableBuffer(8*1024);" The
large chunks can be properly SSL unwrapped. 

Is it safe for the rest of use cases to alter this value? 
Would the developer team consider to make this "chunk size" something
configurable for the messenger implementation?

Thanks and bests
Frank

-----Ursprüngliche Nachricht-----
Von: Dr. Frank Heuschen [mailto:frank.heuschen@oraise.com] 
Gesendet: Mittwoch, 8. Oktober 2014 11:45
An: users@qpid.apache.org
Cc: Christian Wesp
Betreff: proton-j 0.7 with SSL throws Exception at large messages

Hi,

 

I am developing an application that acts as an AMQP Client, using an SSL
connection on a topic. The messages received on this topic are quite large
and for each message I catch the following Exception:

 

java.nio.BufferOverflowException

        at java.nio.HeapByteBuffer.put(Unknown Source)

        at
org.apache.qpid.proton.engine.impl.ssl.SimpleSslTransportWrapper.unwrapInput
(SimpleSslTransportWrapper.java:128)

        at
org.apache.qpid.proton.engine.impl.ssl.SimpleSslTransportWrapper.process(Sim
pleSslTransportWrapper.java:344)

        at
org.apache.qpid.proton.engine.impl.ssl.SslImpl$UnsecureClientAwareTransportW
rapper.process(SslImpl.java:132)

        at
org.apache.qpid.proton.engine.impl.TransportImpl.process(TransportImpl.java:
1265)

        at
org.apache.qpid.proton.driver.impl.ConnectorImpl.read(ConnectorImpl.java:136
)

        at
org.apache.qpid.proton.driver.impl.ConnectorImpl.process(ConnectorImpl.java:
95)

        at
org.apache.qpid.proton.messenger.impl.MessengerImpl.processActive(MessengerI
mpl.java:743)

        at
org.apache.qpid.proton.messenger.impl.MessengerImpl.waitUntil(MessengerImpl.
java:895)

        at
org.apache.qpid.proton.messenger.impl.MessengerImpl.waitUntil(MessengerImpl.
java:853)

        at
org.apache.qpid.proton.messenger.impl.MessengerImpl.recv(MessengerImpl.java:
451)

        at
org.apache.qpid.proton.messenger.impl.MessengerImpl.recv(MessengerImpl.java:
456)

        at com.oraise.Receiver.run(Receiver.java:30)

 

If I run the same application with an external SSL Proxy, the messages are
interpreted by proton-j without problem. Is there a (configurable) threshold
for message sizes in the SSL implementation? I understand that the Java7
implementation of SSLEngine provides a int getApplicationBufferSize()
method, but where is this value determined in the first place?

 

Thanks and kind regards

Frank Heuschen

 

Dr. Frank Heuschen
--
oraise GmbH
Walther-von-Cronberg-Platz 6
60594 Frankfurt am Main
Tel.: +49 69 981 955-361
Mob.: +49 172 6945821
E-Mail:  <ma...@oraise.com> frank.heuschen@oraise.com

Firmensitz: Haferwende 10 a, 28357 Bremen
Registergericht: AG Bremen HRB 17491
Geschäftsführer: Markus Hengstenberg

oraise Beteiligungs- und Verwaltungs GmbH & Co. KG
Firmensitz: Haferwende 10 a, 28357 Bremen
Registergericht: AG Bremen HRA 24070
Geschäftsführer: Markus Hengstenberg

 



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org