Problems while trying interoperability

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Problems while trying interoperability

Goel, Tanmay

Hi,

 

Thanks Matthias. I got the server running.

 

Right now I am conducting some basic experiments with interoperability among the various implementations but haven’t received any positive results yet. For example, when I try to run a RabbitMQ client (attached, SimpleProducer.java) against Qpid broker (with the default configuration provided when I first downloaded it, no change), I get the following exception. The exception is thrown on this like of code:

int ticket = ch.accessRequest("/test");

Intuitively, this method is not provided by the Qpid broker. Is it?

Also, there is no “client-name” passed as a parameter at the time of establishing connection to the RabbitMQ connection constructor but is passed to the Qpid connection constructor. If and how will this effect?

 

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

AMQConnection.mainLoop: connection close

Main thread caught exception: java.io.IOException

java.io.IOException

      at com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:112)

      at com.rabbitmq.client.impl.AMQChannel.exnWrappingRpc(AMQChannel.java:126)

      at com.rabbitmq.client.impl.ChannelN.accessRequest(ChannelN.java:326)

      at com.rabbitmq.client.impl.ChannelN.accessRequest(ChannelN.java:309)

      at com.rabbitmq.examples.SimpleProducer.main(SimpleProducer.java:44)

Caused by: com.rabbitmq.client.ShutdownSignalException (connection error; reason: java.io.EOFException)

      at com.rabbitmq.client.impl.AMQConnection.shutdown(AMQConnection.java:536)

      at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:424)

Caused by: java.io.EOFException

      at java.io.DataInputStream.readUnsignedByte(Unknown Source)

      at com.rabbitmq.client.impl.Frame.readFrom(Frame.java:105)

      at com.rabbitmq.client.impl.SocketFrameHandler.readFrame(SocketFrameHandler.java:119)

      at com.rabbitmq.client.impl.AMQConnection.readFrame(AMQConnection.java:277)

      at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:394)

 

 

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

Alternatively, when I tried to run a Qpid client against a RabbitMQ broker (again, with the default settings, virtual hosts, etc). I got the following error message at the first line of code: _connection = new AMQConnection("localhost", 5672, "guest", "guest", "clientid", "/data");

 

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

main 2007-08-15 17:30:36,519 INFO [apache.qpid.client.AMQConnection] Connection:amqp://guest:guest@clientid/data?brokerlist='tcp://localhost:5672'

main 2007-08-15 17:30:36,597 WARN [qpid.client.transport.TransportConnection] Using Mina NIO

main 2007-08-15 17:30:36,612 INFO [qpid.client.transport.SocketTransportConnection] send-buffer-size = 32768

main 2007-08-15 17:30:36,612 INFO [qpid.client.transport.SocketTransportConnection] recv-buffer-size = 32768

main 2007-08-15 17:30:36,628 INFO [qpid.client.transport.SocketTransportConnection] Attempting connection to localhost/127.0.0.1:5672

AnonymousIoService-2 2007-08-15 17:30:36,831 INFO [qpid.client.security.CallbackHandlerRegistry] Available SASL mechanisms: CRAM-MD5 PLAIN

AnonymousIoService-4 2007-08-15 17:30:36,847 INFO [qpid.client.handler.ConnectionCloseMethodHandler] ConnectionClose frame received

AnonymousIoService-4 2007-08-15 17:30:36,847 INFO [qpid.client.handler.ConnectionCloseMethodHandler] Connection close received with error code 403

main 2007-08-15 17:30:36,847 INFO [apache.qpid.client.AMQConnection] Unable to connect to broker at tcp://localhost:5672

AnonymousIoService-4 2007-08-15 17:30:36,847 INFO [qpid.client.protocol.AMQProtocolHandler] Exception caught therefore going to attempt failover: org.apache.qpid.AMQConnectionClosedException: Error: ACCESS_REFUSED [error code 403]

org.apache.qpid.AMQConnectionClosedException: Error: ACCESS_REFUSED [error code 403]

      at org.apache.qpid.client.handler.ConnectionCloseMethodHandler.methodReceived(ConnectionCloseMethodHandler.java:82)

      at org.apache.qpid.client.state.AMQStateManager.methodReceived(AMQStateManager.java:151)

      at org.apache.qpid.client.protocol.AMQProtocolHandler$1.methodReceived(AMQProtocolHandler.java:106)

      at org.apache.qpid.client.protocol.AMQProtocolHandler.messageReceived(AMQProtocolHandler.java:323)

      at org.apache.mina.common.support.AbstractIoFilterChain$2.messageReceived(AbstractIoFilterChain.java:189)

      at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)

      at org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)

      at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:777)

      at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:60)

      at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:185)

      at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)

      at org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)

      at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:777)

      at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:243)

      at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:305)

      at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)

      at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)

      at java.lang.Thread.run(Unknown Source)

AnonymousIoService-4 2007-08-15 17:30:36,847 INFO [qpid.client.protocol.AMQProtocolHandler] Session closed called with failover state currently FailoverState: NOT STARTED

AnonymousIoService-4 2007-08-15 17:30:36,847 INFO [qpid.client.protocol.AMQProtocolHandler] FAILOVER STARTING

AnonymousIoService-4 2007-08-15 17:30:36,847 INFO [qpid.client.protocol.AMQProtocolHandler] Protocol Session [org.apache.qpid.client.protocol.AMQProtocolHandler@e2dae9] closed

Failover 2007-08-15 17:30:36,847 INFO [qpid.client.failover.FailoverHandler] Starting failover process

Failover 2007-08-15 17:30:36,847 WARN [qpid.client.transport.TransportConnection] Using Mina NIO

Failover 2007-08-15 17:30:36,847 INFO [qpid.client.transport.SocketTransportConnection] send-buffer-size = 32768

Failover 2007-08-15 17:30:36,847 INFO [qpid.client.transport.SocketTransportConnection] recv-buffer-size = 32768

Failover 2007-08-15 17:30:36,847 INFO [qpid.client.transport.SocketTransportConnection] Attempting connection to localhost/127.0.0.1:5672

AnonymousIoService-4 2007-08-15 17:30:36,847 INFO [qpid.client.protocol.AMQProtocolHandler] Session closed called with failover state currently FailoverState: IN PROGRESS

AnonymousIoService-4 2007-08-15 17:30:36,847 INFO [qpid.client.protocol.AMQProtocolHandler] Failover not allowed by policy.

AnonymousIoService-4 2007-08-15 17:30:36,847 INFO [qpid.client.protocol.AMQProtocolHandler] sessionClose() failover in progress

AnonymousIoService-4 2007-08-15 17:30:36,847 INFO [qpid.client.protocol.AMQProtocolHandler] Protocol Session [org.apache.qpid.client.protocol.AMQProtocolHandler@e2dae9] closed

AnonymousIoService-8 2007-08-15 17:30:36,862 INFO [qpid.client.handler.ConnectionCloseMethodHandler] ConnectionClose frame received

AnonymousIoService-8 2007-08-15 17:30:36,862 INFO [qpid.client.handler.ConnectionCloseMethodHandler] Connection close received with error code 403

Failover 2007-08-15 17:30:36,862 INFO [apache.qpid.client.AMQConnection] Error: ACCESS_REFUSED [error code 403]:Unable to connect to broker at tcp://localhost:5672

AnonymousIoService-8 2007-08-15 17:30:36,862 INFO [qpid.client.protocol.AMQProtocolHandler] Session closed called with failover state currently FailoverState: IN PROGRESS

AnonymousIoService-8 2007-08-15 17:30:36,862 INFO [qpid.client.protocol.AMQProtocolHandler] Failover not allowed by policy.

AnonymousIoService-8 2007-08-15 17:30:36,862 INFO [qpid.client.protocol.AMQProtocolHandler] sessionClose() failover in progress

AnonymousIoService-8 2007-08-15 17:30:36,862 INFO [qpid.client.protocol.AMQProtocolHandler] Protocol Session [org.apache.qpid.client.protocol.AMQProtocolHandler@e2dae9] closed

Failover 2007-08-15 17:30:36,862 INFO [apache.qpid.client.AMQConnection] Closing AMQConnection due to :Server closed connection and no failover was successful

org.apache.qpid.AMQConnectionClosedException: Error: ACCESS_REFUSED [error code 403]

      at org.apache.qpid.client.handler.ConnectionCloseMethodHandler.methodReceived(ConnectionCloseMethodHandler.java:82)

      at org.apache.qpid.client.state.AMQStateManager.methodReceived(AMQStateManager.java:151)

      at org.apache.qpid.client.protocol.AMQProtocolHandler$1.methodReceived(AMQProtocolHandler.java:106)

      at org.apache.qpid.client.protocol.AMQProtocolHandler.messageReceived(AMQProtocolHandler.java:323)

      at org.apache.mina.common.support.AbstractIoFilterChain$2.messageReceived(AbstractIoFilterChain.java:189)

      at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)

      at org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)

      at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:777)

      at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:60)

      at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:185)

      at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:502)

      at org.apache.mina.common.support.AbstractIoFilterChain.access$1000(AbstractIoFilterChain.java:52)

      at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:777)main 2007-08-15 17:30:36,956 ERROR [qpid.example.publisher.Publisher] org.apache.qpid.AMQConnectionClosedException: Error: ACCESS_REFUSED [error code 403]

 

      at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:243)

      at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:305)

      at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)

      at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)

      at java.lang.Thread.run(Unknown Source)

main 2007-08-15 17:30:36,956 ERROR [qpid.example.publisher.FileMessageDispatcher] Error trying to dispatch message: java.lang.NullPointerException

 

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

Any suggestions that I can try out to make the interoperability work?

 

Thanks.

 

Regards,

Tanmay


_______________________________________________
rabbitmq-discuss mailing list
[hidden email]
http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss

SimpleProducer.java (2K) Download Attachment
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Problems while trying interoperability

Matthias Radestock-2
Tanmay,

Goel, Tanmay wrote:
> when I try to run a RabbitMQ client (attached,
> SimpleProducer.java) against Qpid broker (with the default configuration
> provided when I first downloaded it, no change), I get the following
> exception. The exception is thrown on this like of code: *
>
> *int ticket = ch.accessRequest("/test");*
>
> *Intuitively, this method is not provided by the Qpid broker. Is it?*

You are probably right and this method is indeed unimplemented in Qpid.
It certainly wasn't when we ran the tests ~6 months ago, as noted in
http://www.rabbitmq.com/interoperability.html

You can probably just skip that request and use a ticket number of 0,
with RabbitMQ's lax_mode enabled (which it is by default - see above page).

> *Also, there is no “client-name” passed as a parameter at the time of
> establishing connection to the RabbitMQ connection constructor but is
> passed to the Qpid connection constructor. If and how will this effect?*

I have no idea what the "client-name" value is for. Perhaps the QPid
client passes that value as part of the peer properties exchanged during
connection negotiation, in which case it's informational only, i.e. it
shouldn't affect the behaviour.

> *Alternatively, when I tried to run a Qpid client against a RabbitMQ
> broker (again, with the default settings, virtual hosts, etc). I got the
> following error message at the first line of code: _connection = new
> AMQConnection("localhost", 5672, "guest", "guest", "clientid", "/data");*

What do the RabbitMQ server logs (stdout, rabbit.log, rabbit-sasl.log) say?

What version of QPid are you running? The M1 release?

Regards,

Matthias.

_______________________________________________
rabbitmq-discuss mailing list
[hidden email]
http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Problems while trying interoperability

Rob Godfrey
Hi, at some point I added implementations of access ticket to the Qpid client to allow us to interoperate with the RabbitMQ broker... if the code has disappeared I can put it back in.

At present Qpid does not implement the access ticket / realm parts of AMQP.

Hope this helps,
Rob

On 16/08/07, Matthias Radestock <[hidden email]> wrote:
Tanmay,

Goel, Tanmay wrote:
> when I try to run a RabbitMQ client (attached,
> SimpleProducer.java) against Qpid broker (with the default configuration
> provided when I first downloaded it, no change), I get the following
> exception. The exception is thrown on this like of code: *
>
> *int ticket = ch.accessRequest("/test");*
>
> *Intuitively, this method is not provided by the Qpid broker. Is it?*

You are probably right and this method is indeed unimplemented in Qpid.
It certainly wasn't when we ran the tests ~6 months ago, as noted in
http://www.rabbitmq.com/interoperability.html

You can probably just skip that request and use a ticket number of 0,
with RabbitMQ's lax_mode enabled (which it is by default - see above page).

> *Also, there is no "client-name" passed as a parameter at the time of
> establishing connection to the RabbitMQ connection constructor but is
> passed to the Qpid connection constructor. If and how will this effect?*

I have no idea what the "client-name" value is for. Perhaps the QPid
client passes that value as part of the peer properties exchanged during
connection negotiation, in which case it's informational only, i.e. it
shouldn't affect the behaviour.

> *Alternatively, when I tried to run a Qpid client against a RabbitMQ
> broker (again, with the default settings, virtual hosts, etc). I got the
> following error message at the first line of code: _connection = new
> AMQConnection("localhost", 5672, "guest", "guest", "clientid", "/data");*

What do the RabbitMQ server logs (stdout, rabbit.log, rabbit-sasl.log) say?

What version of QPid are you running? The M1 release?

Regards,

Matthias.

_______________________________________________
rabbitmq-discuss mailing list
[hidden email]
http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss


_______________________________________________
rabbitmq-discuss mailing list
[hidden email]
http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Problems while trying interoperability

Alexis Richardson-2
Rob,

Anything to minimise Qpid / RabbitMQ deltas on how the spec is
implemented would be great - thanks.  We'll do the same if the case
arises.  And thanks very much for being on this group so we can work
with your team to ensure interop is real and not vapour.

Tanmay,

As Matthias pointed out, pending a patch of the type Rob mentions, you
can also do this as an interop workaround:

1) Qpid client -> RabbitMQ broker --- run RabbitMQ in "lax" mode (ie
we reduce our spec implementation surface for interop).
2) RabbitMQ client -> QPid server --- do not do the accessRequest and
use a hard-coded ticket# instead

For (1) lax mode is enabled by default so please *do* send us your logs.

Cheers

alexis






On 8/16/07, Robert Godfrey <[hidden email]> wrote:

> Hi, at some point I added implementations of access ticket to the Qpid
> client to allow us to interoperate with the RabbitMQ broker... if the code
> has disappeared I can put it back in.
>
> At present Qpid does not implement the access ticket / realm parts of AMQP.
>
> Hope this helps,
> Rob
>
>
> On 16/08/07, Matthias Radestock <[hidden email]> wrote:
> > Tanmay,
> >
> > Goel, Tanmay wrote:
> > > when I try to run a RabbitMQ client (attached,
> > > SimpleProducer.java) against Qpid broker (with the default configuration
> > > provided when I first downloaded it, no change), I get the following
> > > exception. The exception is thrown on this like of code: *
> > >
> > > *int ticket = ch.accessRequest("/test");*
> > >
> > > *Intuitively, this method is not provided by the Qpid broker. Is it?*
> >
> > You are probably right and this method is indeed unimplemented in Qpid.
> > It certainly wasn't when we ran the tests ~6 months ago, as noted in
> > http://www.rabbitmq.com/interoperability.html
> >
> > You can probably just skip that request and use a ticket number of 0,
> > with RabbitMQ's lax_mode enabled (which it is by default - see above
> page).
> >
> > > *Also, there is no "client-name" passed as a parameter at the time of
> > > establishing connection to the RabbitMQ connection constructor but is
> > > passed to the Qpid connection constructor. If and how will this effect?*
> >
> > I have no idea what the "client-name" value is for. Perhaps the QPid
> > client passes that value as part of the peer properties exchanged during
> > connection negotiation, in which case it's informational only, i.e. it
> > shouldn't affect the behaviour.
> >
> > > *Alternatively, when I tried to run a Qpid client against a RabbitMQ
> > > broker (again, with the default settings, virtual hosts, etc). I got the
> > > following error message at the first line of code: _connection = new
> > > AMQConnection("localhost", 5672, "guest", "guest", "clientid",
> "/data");*
> >
> > What do the RabbitMQ server logs (stdout, rabbit.log, rabbit-sasl.log)
> say?
> >
> > What version of QPid are you running? The M1 release?
> >
> > Regards,
> >
> > Matthias.
> >
> > _______________________________________________
> > rabbitmq-discuss mailing list
> > [hidden email]
> >
> http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
> >
>
>
> _______________________________________________
> rabbitmq-discuss mailing list
> [hidden email]
> http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
>
>


--
Alexis Richardson
+44 20 7617 7339 (UK)
+44 77 9865 2911 (cell)
+1 650 206 2517 (US)

_______________________________________________
rabbitmq-discuss mailing list
[hidden email]
http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Problems while trying interoperability

Martin Ritchie-2
On 16/08/07, Alexis Richardson <[hidden email]> wrote:

> Rob,
>
> Anything to minimise Qpid / RabbitMQ deltas on how the spec is
> implemented would be great - thanks.  We'll do the same if the case
> arises.  And thanks very much for being on this group so we can work
> with your team to ensure interop is real and not vapour.
>
> Tanmay,
>
> As Matthias pointed out, pending a patch of the type Rob mentions, you
> can also do this as an interop workaround:
>
> 1) Qpid client -> RabbitMQ broker --- run RabbitMQ in "lax" mode (ie
> we reduce our spec implementation surface for interop).
> 2) RabbitMQ client -> QPid server --- do not do the accessRequest and
> use a hard-coded ticket# instead
>
> For (1) lax mode is enabled by default so please *do* send us your logs.
>
> Cheers
>
> alexis

For (1) you may also want to set java system property STRICT_AMQP=true
this will disabled all the Qpid JMS extensions to the AMQP protocol.
Disabling things such as selectors and queue browsing that AMQP 0_8
does not support, if you attempt to do something that uses extended
behaviour it will log a warning. Alternatively STRICT_AMQP_FATAL=true
will cause your app to System.exit in addition.

>
>
>
>
>
> On 8/16/07, Robert Godfrey <[hidden email]> wrote:
> > Hi, at some point I added implementations of access ticket to the Qpid
> > client to allow us to interoperate with the RabbitMQ broker... if the code
> > has disappeared I can put it back in.
> >
> > At present Qpid does not implement the access ticket / realm parts of AMQP.
> >
> > Hope this helps,
> > Rob
> >
> >
> > On 16/08/07, Matthias Radestock <[hidden email]> wrote:
> > > Tanmay,
> > >
> > > Goel, Tanmay wrote:
> > > > when I try to run a RabbitMQ client (attached,
> > > > SimpleProducer.java) against Qpid broker (with the default configuration
> > > > provided when I first downloaded it, no change), I get the following
> > > > exception. The exception is thrown on this like of code: *
> > > >
> > > > *int ticket = ch.accessRequest("/test");*
> > > >
> > > > *Intuitively, this method is not provided by the Qpid broker. Is it?*
> > >
> > > You are probably right and this method is indeed unimplemented in Qpid.
> > > It certainly wasn't when we ran the tests ~6 months ago, as noted in
> > > http://www.rabbitmq.com/interoperability.html
> > >
> > > You can probably just skip that request and use a ticket number of 0,
> > > with RabbitMQ's lax_mode enabled (which it is by default - see above
> > page).
> > >
> > > > *Also, there is no "client-name" passed as a parameter at the time of
> > > > establishing connection to the RabbitMQ connection constructor but is
> > > > passed to the Qpid connection constructor. If and how will this effect?*
> > >
> > > I have no idea what the "client-name" value is for. Perhaps the QPid
> > > client passes that value as part of the peer properties exchanged during
> > > connection negotiation, in which case it's informational only, i.e. it
> > > shouldn't affect the behaviour.
> > >
> > > > *Alternatively, when I tried to run a Qpid client against a RabbitMQ
> > > > broker (again, with the default settings, virtual hosts, etc). I got the
> > > > following error message at the first line of code: _connection = new
> > > > AMQConnection("localhost", 5672, "guest", "guest", "clientid",
> > "/data");*
> > >
> > > What do the RabbitMQ server logs (stdout, rabbit.log, rabbit-sasl.log)
> > say?
> > >
> > > What version of QPid are you running? The M1 release?
> > >
> > > Regards,
> > >
> > > Matthias.
> > >
> > > _______________________________________________
> > > rabbitmq-discuss mailing list
> > > [hidden email]
> > >
> > http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
> > >
> >
> >
> > _______________________________________________
> > rabbitmq-discuss mailing list
> > [hidden email]
> > http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
> >
> >
>
>
> --
> Alexis Richardson
> +44 20 7617 7339 (UK)
> +44 77 9865 2911 (cell)
> +1 650 206 2517 (US)
>
> _______________________________________________
> rabbitmq-discuss mailing list
> [hidden email]
> http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
>


--
Martin Ritchie

_______________________________________________
rabbitmq-discuss mailing list
[hidden email]
http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Problems while trying interoperability

Goel, Tanmay
In reply to this post by Matthias Radestock-2
Yes, I'm currently running the M1 release.
Rabbit-sasl.log is empty and I also couldn't find stdout that you
mentioned.

Thanks,
Tanmay


-----Original Message-----
From: Matthias Radestock [mailto:[hidden email]]
Sent: Thursday, August 16, 2007 12:35 AM
To: Goel, Tanmay
Cc: [hidden email]
Subject: Re: [rabbitmq-discuss] Problems while trying interoperability

Tanmay,

Goel, Tanmay wrote:
> when I try to run a RabbitMQ client (attached,
> SimpleProducer.java) against Qpid broker (with the default
configuration
> provided when I first downloaded it, no change), I get the following
> exception. The exception is thrown on this like of code: *
>
> *int ticket = ch.accessRequest("/test");*
>
> *Intuitively, this method is not provided by the Qpid broker. Is it?*

You are probably right and this method is indeed unimplemented in Qpid.
It certainly wasn't when we ran the tests ~6 months ago, as noted in
http://www.rabbitmq.com/interoperability.html

You can probably just skip that request and use a ticket number of 0,
with RabbitMQ's lax_mode enabled (which it is by default - see above
page).

> *Also, there is no "client-name" passed as a parameter at the time of
> establishing connection to the RabbitMQ connection constructor but is
> passed to the Qpid connection constructor. If and how will this
effect?*

I have no idea what the "client-name" value is for. Perhaps the QPid
client passes that value as part of the peer properties exchanged during

connection negotiation, in which case it's informational only, i.e. it
shouldn't affect the behaviour.

> *Alternatively, when I tried to run a Qpid client against a RabbitMQ
> broker (again, with the default settings, virtual hosts, etc). I got
the
> following error message at the first line of code: _connection = new
> AMQConnection("localhost", 5672, "guest", "guest", "clientid",
"/data");*

What do the RabbitMQ server logs (stdout, rabbit.log, rabbit-sasl.log)
say?

What version of QPid are you running? The M1 release?

Regards,

Matthias.

_______________________________________________
rabbitmq-discuss mailing list
[hidden email]
http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss

rabbit-sasl.log Download Attachment
rabbit.log (1K) Download Attachment
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Problems while trying interoperability

Matthias Radestock-2
Tanmay,

Goel, Tanmay wrote:
> Yes, I'm currently running the M1 release.
> Rabbit-sasl.log is empty and I also couldn't find stdout that you
> mentioned.

And there is nothing unusual in the rabbit.log either?

One useful debugging tool is the protocol tracer that comes as part of
the RabbitMQ examples and is documented at
   http://www.rabbitmq.com/examples.html#tracer
This will show you what messages are being sent between the client and
server and may reveal the cause of the problems you are seeing.

Btw, what Qpid client code were you running? One of the provided examples?

I have managed to get the Qpid's service{Providing,Requesting}Client.sh
and topic{Listener,Publisher}.sh tests to run against RabbitMQ, but it
did require some hacks to the broker code in order to work around the
lack of access.request / realm / ticket handling in the QPid Java
client. I will add these changes to RabbitMQ's "lax_mode" (as documented
at http://www.rabbitmq.com/interoperability.html) in the next release.


Matthias

_______________________________________________
rabbitmq-discuss mailing list
[hidden email]
http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Problems while trying interoperability

Matthias Radestock-2
Matthias Radestock wrote:

> And there is nothing unusual in the rabbit.log either?

Ah, I have just noticed that you attached the rabbit.log in your
previous message.

This shows the error

VHost access refused: no mapping for User <<"guest">>, VHost <<"/data">>

Are you sure "/data" is the VHost you want to use? I am asking because
"/data" is the name of a pre-defined realm so perhaps some of the
connection parameters got mixed up.

Anyway, if you see the above error, and the VHost is correct, use
rabbitmqctl to grant the user access to the VHost, e.g.

   rabbitmqctl map_user_vhost <username> <vhostpath>

and give the user appropriate permissions to access realm, usually the
"/data" realm, e.g.

   rabbitmqctl set_permissions <username> <vhostpath> /data all


Regards,

Matthias.

_______________________________________________
rabbitmq-discuss mailing list
[hidden email]
http://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
Loading...