[jira] Closed: (QPID-2680) Provide user documentation for configuring SCD
[ https://issues.apache.org/jira/browse/QPID-2680?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andrew Kennedy closed QPID-2680. Closing issue. However, should point out that the doxygen build of pdfs from docbook xml source is unsatisfactory in many cases. Provide user documentation for configuring SCD -- Key: QPID-2680 URL: https://issues.apache.org/jira/browse/QPID-2680 Project: Qpid Issue Type: Sub-task Components: Documentation, Java Broker Affects Versions: 0.7, 0.8 Reporter: Martin Ritchie Assignee: Andrew Kennedy Fix For: 0.9 Documentation should include details on policy for queue deletions and their resulting impact on clients. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. - Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:dev-subscr...@qpid.apache.org
RE: Qpid 0.8 problem
The JMS client now defaults to using the new Address syntax developed for the Qpid Messaging API (as used by the C++ client for example). See http://qpid.apache.org/books/0.8/Programming-In-Apache-Qpid/html/index.html for more details. Alternatively you should be able to force usage of the old Binding URL syntax by prefixing your destinations with BURL: or by setting system property qpid.dest_syntax to BURL Robbie -Original Message- From: Tim Chen [mailto:t...@evri.com] Sent: 14 December 2010 18:38 To: dev@qpid.apache.org Subject: Qpid 0.8 problem Hi all, I'm running some problems upgrading qpid broker/client to 0.8. Currently I'm using the Qpid C++ Broker + Qpid java client, both updated to 0.8. Now when I try to create a producer like: Context _ctx = new InitialContext( properties ); ConnectionFactory connectionFactory = (ConnectionFactory) _ctx .lookup(local); Connection connection = connectionFactory.createConnection(); Connection connection.start(); Destination dest = (Destination)_ctx.lookup( queue ); Session session = _connection.createSession( false, javax.jms.Session.AUTO_ACKNOWLEDGE ); Producer producer = session.createProducer( dest ); // Error here And my properties: Properties p = new Properties(); p.put( Context.INITIAL_CONTEXT_FACTORY, org.apache.qpid.jndi.PropertiesFileInitialContextFactory ); p.put( connectionfactory.local, amqp://#:##...@clientid/localhost?brokerlist='host:port;host:port' ); p.put( destination.queue, fanout://#binding_name//#queue_name ); I'm getting a error when I try to create a producer: Exception occured while verifying destinationorg.apache.qpid.AMQException: The name 'fanout:' supplied in the address doesn't resolve to an exchange or a queue at org.apache.qpid.client.AMQSession_0_10.handleAddressBasedDestination(AM QSession_0_10.java:1180) at org.apache.qpid.client.BasicMessageProducer_0_10.declareDestination(Bas icMessageProducer_0_10.java:82) at org.apache.qpid.client.BasicMessageProducer.init(BasicMessageProducer .java:141) at org.apache.qpid.client.BasicMessageProducer_0_10.init(BasicMessagePro ducer_0_10.java:61) at org.apache.qpid.client.AMQSession_0_10.createMessageProducer(AMQSession _0_10.java:664) at org.apache.qpid.client.AMQSession_0_10.createMessageProducer(AMQSession _0_10.java:79) at org.apache.qpid.client.AMQSession$6.execute(AMQSession.java:2559) at org.apache.qpid.client.AMQSession$6.execute(AMQSession.java:2554) at org.apache.qpid.client.AMQConnectionDelegate_0_10.executeRetrySupport(A MQConnectionDelegate_0_10.java:286) at org.apache.qpid.client.AMQConnection.executeRetrySupport(AMQConnection. java:766) at org.apache.qpid.client.failover.FailoverRetrySupport.execute(FailoverRe trySupport.java:102) at org.apache.qpid.client.AMQSession.createProducerImpl(AMQSession.java:25 52) at org.apache.qpid.client.AMQSession.createProducerImpl(AMQSession.java:25 46) at org.apache.qpid.client.AMQSession.createProducer(AMQSession.java:1171) at org.apache.qpid.client.AMQSession.createProducer(AMQSession.java:120) The exact same code used to work in 0.6. I'm not sure how the fanout:// address in destination should cause any error. I wonder if anyone knows what is wrong? Thanks, Tim - Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:dev-subscr...@qpid.apache.org
[jira] Created: (QPID-2978) Disconnected operation is a pain
Disconnected operation is a pain Key: QPID-2978 URL: https://issues.apache.org/jira/browse/QPID-2978 Project: Qpid Issue Type: Improvement Components: C++ Client, Python Client Reporter: Justin Ross If you're writing a program that doesn't expect a tcp connection to be present all the time, the messaging API currently gives you some unattractive options. If you set conn.reconnect = True, conn.open() will block, and you'll never get to all the other code you'd prefer to have executed. If you leave conn.reconnect = False, conn.open(), session.sender(), and conn.close() will throw exceptions that have to be caught and ignored. In either case, session.send() will throw an exception. I'd like some way to tell the connection that I'm really quite indifferent to whether or not the underlying tcp connection is active. I did this testing using the python api, but word has it that this may be the case for the C++ api as well. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. - Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:dev-subscr...@qpid.apache.org
Re: Qpid 0.8 problem
Thanks for the info, It might be good to add the prefixing option in the docs, as just reading the docs suggests automatically backward compatiability ( http://qpid.apache.org/books/0.8/Programming-In-Apache-Qpid/html/ch03s02.html#id3084791 ). I'm also looking at how to translate the old fanout address to the new one in the docs, as most of them shows topic and direct but not others. Tim On Tue, Dec 14, 2010 at 11:13 AM, Robbie Gemmell robbie.gemm...@gmail.comwrote: The JMS client now defaults to using the new Address syntax developed for the Qpid Messaging API (as used by the C++ client for example). See http://qpid.apache.org/books/0.8/Programming-In-Apache-Qpid/html/index.html for more details. Alternatively you should be able to force usage of the old Binding URL syntax by prefixing your destinations with BURL: or by setting system property qpid.dest_syntax to BURL Robbie -Original Message- From: Tim Chen [mailto:t...@evri.com] Sent: 14 December 2010 18:38 To: dev@qpid.apache.org Subject: Qpid 0.8 problem Hi all, I'm running some problems upgrading qpid broker/client to 0.8. Currently I'm using the Qpid C++ Broker + Qpid java client, both updated to 0.8. Now when I try to create a producer like: Context _ctx = new InitialContext( properties ); ConnectionFactory connectionFactory = (ConnectionFactory) _ctx .lookup(local); Connection connection = connectionFactory.createConnection(); Connection connection.start(); Destination dest = (Destination)_ctx.lookup( queue ); Session session = _connection.createSession( false, javax.jms.Session.AUTO_ACKNOWLEDGE ); Producer producer = session.createProducer( dest ); // Error here And my properties: Properties p = new Properties(); p.put( Context.INITIAL_CONTEXT_FACTORY, org.apache.qpid.jndi.PropertiesFileInitialContextFactory ); p.put( connectionfactory.local, amqp://#:##...@clientid/localhost?brokerlist='host:port;host:port' ); p.put( destination.queue, fanout://#binding_name//#queue_name ); I'm getting a error when I try to create a producer: Exception occured while verifying destinationorg.apache.qpid.AMQException: The name 'fanout:' supplied in the address doesn't resolve to an exchange or a queue at org.apache.qpid.client.AMQSession_0_10.handleAddressBasedDestination(AM QSession_0_10.java:1180) at org.apache.qpid.client.BasicMessageProducer_0_10.declareDestination(Bas icMessageProducer_0_10.java:82) at org.apache.qpid.client.BasicMessageProducer.init(BasicMessageProducer .java:141) at org.apache.qpid.client.BasicMessageProducer_0_10.init(BasicMessagePro ducer_0_10.java:61) at org.apache.qpid.client.AMQSession_0_10.createMessageProducer(AMQSession _0_10.java:664) at org.apache.qpid.client.AMQSession_0_10.createMessageProducer(AMQSession _0_10.java:79) at org.apache.qpid.client.AMQSession$6.execute(AMQSession.java:2559) at org.apache.qpid.client.AMQSession$6.execute(AMQSession.java:2554) at org.apache.qpid.client.AMQConnectionDelegate_0_10.executeRetrySupport(A MQConnectionDelegate_0_10.java:286) at org.apache.qpid.client.AMQConnection.executeRetrySupport(AMQConnection. java:766) at org.apache.qpid.client.failover.FailoverRetrySupport.execute(FailoverRe trySupport.java:102) at org.apache.qpid.client.AMQSession.createProducerImpl(AMQSession.java:25 52) at org.apache.qpid.client.AMQSession.createProducerImpl(AMQSession.java:25 46) at org.apache.qpid.client.AMQSession.createProducer(AMQSession.java:1171) at org.apache.qpid.client.AMQSession.createProducer(AMQSession.java:120) The exact same code used to work in 0.6. I'm not sure how the fanout:// address in destination should cause any error. I wonder if anyone knows what is wrong? Thanks, Tim - Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:dev-subscr...@qpid.apache.org
Re: Qpid 0.8 problem
Never mind, I found others having the same problem and already have a example in the post. Thanks, Tim On Tue, Dec 14, 2010 at 1:17 PM, Tim Chen t...@evri.com wrote: I can't seem to figure out how to declare fanout for the producer using the new address format. Any examples how this can be done? Thanks, Tim On Tue, Dec 14, 2010 at 11:13 AM, Robbie Gemmell robbie.gemm...@gmail.com wrote: The JMS client now defaults to using the new Address syntax developed for the Qpid Messaging API (as used by the C++ client for example). See http://qpid.apache.org/books/0.8/Programming-In-Apache-Qpid/html/index.html for more details. Alternatively you should be able to force usage of the old Binding URL syntax by prefixing your destinations with BURL: or by setting system property qpid.dest_syntax to BURL Robbie -Original Message- From: Tim Chen [mailto:t...@evri.com] Sent: 14 December 2010 18:38 To: dev@qpid.apache.org Subject: Qpid 0.8 problem Hi all, I'm running some problems upgrading qpid broker/client to 0.8. Currently I'm using the Qpid C++ Broker + Qpid java client, both updated to 0.8. Now when I try to create a producer like: Context _ctx = new InitialContext( properties ); ConnectionFactory connectionFactory = (ConnectionFactory) _ctx .lookup(local); Connection connection = connectionFactory.createConnection(); Connection connection.start(); Destination dest = (Destination)_ctx.lookup( queue ); Session session = _connection.createSession( false, javax.jms.Session.AUTO_ACKNOWLEDGE ); Producer producer = session.createProducer( dest ); // Error here And my properties: Properties p = new Properties(); p.put( Context.INITIAL_CONTEXT_FACTORY, org.apache.qpid.jndi.PropertiesFileInitialContextFactory ); p.put( connectionfactory.local, amqp://#:##...@clientid/localhost?brokerlist='host:port;host:port' ); p.put( destination.queue, fanout://#binding_name//#queue_name ); I'm getting a error when I try to create a producer: Exception occured while verifying destinationorg.apache.qpid.AMQException: The name 'fanout:' supplied in the address doesn't resolve to an exchange or a queue at org.apache.qpid.client.AMQSession_0_10.handleAddressBasedDestination(AM QSession_0_10.java:1180) at org.apache.qpid.client.BasicMessageProducer_0_10.declareDestination(Bas icMessageProducer_0_10.java:82) at org.apache.qpid.client.BasicMessageProducer.init(BasicMessageProducer .java:141) at org.apache.qpid.client.BasicMessageProducer_0_10.init(BasicMessagePro ducer_0_10.java:61) at org.apache.qpid.client.AMQSession_0_10.createMessageProducer(AMQSession _0_10.java:664) at org.apache.qpid.client.AMQSession_0_10.createMessageProducer(AMQSession _0_10.java:79) at org.apache.qpid.client.AMQSession$6.execute(AMQSession.java:2559) at org.apache.qpid.client.AMQSession$6.execute(AMQSession.java:2554) at org.apache.qpid.client.AMQConnectionDelegate_0_10.executeRetrySupport(A MQConnectionDelegate_0_10.java:286) at org.apache.qpid.client.AMQConnection.executeRetrySupport(AMQConnection. java:766) at org.apache.qpid.client.failover.FailoverRetrySupport.execute(FailoverRe trySupport.java:102) at org.apache.qpid.client.AMQSession.createProducerImpl(AMQSession.java:25 52) at org.apache.qpid.client.AMQSession.createProducerImpl(AMQSession.java:25 46) at org.apache.qpid.client.AMQSession.createProducer(AMQSession.java:1171) at org.apache.qpid.client.AMQSession.createProducer(AMQSession.java:120) The exact same code used to work in 0.6. I'm not sure how the fanout:// address in destination should cause any error. I wonder if anyone knows what is wrong? Thanks, Tim - Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:dev-subscr...@qpid.apache.org
A criticism of the new messaging API
I've recently spent some time using the new API. I'm a big fan, but I have a problem. My app involves multiple long-lived server components in occasional communication. In general, the components should start and keep running whether or not the broker they use to communicate is up. The API does a good job of recovering from dropped connections, but it doesn't really support a model where disconnection is normal and expected. It makes it hard for me to forget about the operational details of communication. See QPID-2978 and QPID-2937. To take a strong position (and therefore solicit strong feedback!): The API has a connection bias, and it's a poor fit for distributed apps like mine. It would be better to make local queuing primary and connection state secondary. Justin - Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:dev-subscr...@qpid.apache.org